diff --git a/.gitattributes b/.gitattributes index 340f2812cb6af195cd0cc320fa10e77ebd57a8e9..7e203b6044c90335e94c698eeeeb55e42ad36b4a 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1 +1,2 @@ kuasar-v1.0.0-vendor.tar.gz filter=lfs diff=lfs merge=lfs -text +vendor.tar.gz filter=lfs diff=lfs merge=lfs -text diff --git a/apply-patches b/apply-patches index bc54e82901873ae9508b36ff229d4dcc716b86fa..95de9204ba4a5a999cdb819b93f9074d1a179dde 100755 --- a/apply-patches +++ b/apply-patches @@ -3,7 +3,8 @@ set -e tar -xzvf kuasar-v1.0.0-vendor.tar.gz -cp -rf ./kuasar-v1.0.0-vensor/* ./ +tar -xzvf vendor.tar.gz +cp -rf ./kuasar-v1.0.0-vendor/* ./ cat ./series.conf | while read line do if [[ $line == '' || $line =~ ^\s*# ]]; then diff --git a/kernel-config/kuasar-openeuler-cc-kernel-aarch64.config b/kernel-config/kuasar-openeuler-cc-kernel-aarch64.config new file mode 100644 index 0000000000000000000000000000000000000000..db4ab4bbfdddc3d3487e67a2c81cf38012255b13 --- /dev/null +++ b/kernel-config/kuasar-openeuler-cc-kernel-aarch64.config @@ -0,0 +1,8260 @@ +# +# Automatically generated file; DO NOT EDIT. +# Linux/arm64 6.6.0 Kernel Configuration +# +CONFIG_CC_VERSION_TEXT="gcc (GCC) 12.3.1 (openEuler 12.3.1-37.oe2409)" +CONFIG_CC_IS_GCC=y +CONFIG_GCC_VERSION=120301 +CONFIG_CLANG_VERSION=0 +CONFIG_AS_IS_GNU=y +CONFIG_AS_VERSION=24100 +CONFIG_LD_IS_BFD=y +CONFIG_LD_VERSION=24100 +CONFIG_LLD_VERSION=0 +CONFIG_CC_CAN_LINK=y +CONFIG_CC_CAN_LINK_STATIC=y +CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y +CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y +CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND=y +CONFIG_CC_HAS_ASM_INLINE=y +CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y +CONFIG_PAHOLE_VERSION=0 +CONFIG_IRQ_WORK=y +CONFIG_BUILDTIME_TABLE_SORT=y +CONFIG_THREAD_INFO_IN_TASK=y + +# +# General setup +# +CONFIG_INIT_ENV_ARG_LIMIT=32 +# CONFIG_COMPILE_TEST is not set +# CONFIG_WERROR is not set +CONFIG_LOCALVERSION="" +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_BUILD_SALT="" +CONFIG_DEFAULT_INIT="" +CONFIG_DEFAULT_HOSTNAME="(none)" +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_SYSVIPC_COMPAT=y +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +# CONFIG_WATCH_QUEUE is not set +CONFIG_CROSS_MEMORY_ATTACH=y +# CONFIG_USELIB is not set +CONFIG_AUDIT=y +CONFIG_HAVE_ARCH_AUDITSYSCALL=y +CONFIG_AUDITSYSCALL=y + +# +# IRQ subsystem +# +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_IRQ_SHOW_LEVEL=y +CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y +CONFIG_GENERIC_IRQ_MIGRATION=y +CONFIG_GENERIC_IRQ_INJECTION=y +CONFIG_HARDIRQS_SW_RESEND=y +CONFIG_IRQ_DOMAIN=y +CONFIG_IRQ_DOMAIN_HIERARCHY=y +CONFIG_IRQ_FASTEOI_HIERARCHY_HANDLERS=y +CONFIG_GENERIC_IRQ_IPI=y +CONFIG_GENERIC_MSI_IRQ=y +CONFIG_IRQ_MSI_IOMMU=y +CONFIG_IRQ_FORCED_THREADING=y +CONFIG_SPARSE_IRQ=y +# CONFIG_GENERIC_IRQ_DEBUGFS is not set +# end of IRQ subsystem + +CONFIG_GENERIC_TIME_VSYSCALL=y +CONFIG_GENERIC_CLOCKEVENTS=y +CONFIG_ARCH_HAS_TICK_BROADCAST=y +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y +CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y +CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y +CONFIG_CONTEXT_TRACKING=y +CONFIG_CONTEXT_TRACKING_IDLE=y + +# +# Timers subsystem +# +CONFIG_TICK_ONESHOT=y +CONFIG_NO_HZ_COMMON=y +# CONFIG_HZ_PERIODIC is not set +# CONFIG_NO_HZ_IDLE is not set +CONFIG_NO_HZ_FULL=y +CONFIG_CONTEXT_TRACKING_USER=y +# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y +# CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE is not set +# end of Timers subsystem + +CONFIG_BPF=y +CONFIG_HAVE_EBPF_JIT=y +CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y + +# +# BPF subsystem +# +CONFIG_BPF_SYSCALL=y +CONFIG_BPF_JIT=y +CONFIG_BPF_JIT_ALWAYS_ON=y +CONFIG_BPF_JIT_DEFAULT_ON=y +# CONFIG_BPF_UNPRIV_DEFAULT_OFF is not set +# CONFIG_BPF_PRELOAD is not set +CONFIG_BPF_LSM=y +CONFIG_BPF_SCHED=y +# end of BPF subsystem + +CONFIG_PREEMPT_NONE_BUILD=y +CONFIG_PREEMPT_NONE=y +# CONFIG_PREEMPT_VOLUNTARY is not set +# CONFIG_PREEMPT is not set +# CONFIG_PREEMPT_DYNAMIC is not set + +# +# CPU/Task time and stats accounting +# +CONFIG_VIRT_CPU_ACCOUNTING=y +CONFIG_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_SCHED_AVG_IRQ=y +CONFIG_SCHED_THERMAL_PRESSURE=y +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +CONFIG_TASKSTATS=y +CONFIG_TASK_DELAY_ACCT=y +CONFIG_TASK_XACCT=y +CONFIG_TASK_IO_ACCOUNTING=y +CONFIG_PSI=y +CONFIG_PSI_DEFAULT_DISABLED=y +CONFIG_PSI_CGROUP_V1=y +CONFIG_PSI_FINE_GRAINED=y +# end of CPU/Task time and stats accounting + +CONFIG_CPU_ISOLATION=y + +# +# RCU Subsystem +# +CONFIG_TREE_RCU=y +# CONFIG_RCU_EXPERT is not set +CONFIG_TREE_SRCU=y +CONFIG_TASKS_RCU_GENERIC=y +CONFIG_TASKS_RUDE_RCU=y +CONFIG_TASKS_TRACE_RCU=y +CONFIG_RCU_STALL_COMMON=y +CONFIG_RCU_NEED_SEGCBLIST=y +CONFIG_RCU_NOCB_CPU=y +# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set +# CONFIG_RCU_LAZY is not set +# end of RCU Subsystem + +CONFIG_IKCONFIG=y +CONFIG_IKCONFIG_PROC=y +# CONFIG_IKHEADERS is not set +CONFIG_LOG_BUF_SHIFT=20 +CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 +# CONFIG_PRINTK_INDEX is not set +CONFIG_GENERIC_SCHED_CLOCK=y + +# +# Scheduler features +# +# CONFIG_UCLAMP_TASK is not set +# end of Scheduler features + +CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y +CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y +CONFIG_CC_HAS_INT128=y +CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5" +CONFIG_GCC10_NO_ARRAY_BOUNDS=y +CONFIG_CC_NO_ARRAY_BOUNDS=y +CONFIG_ARCH_SUPPORTS_INT128=y +CONFIG_NUMA_BALANCING=y +CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y +CONFIG_CGROUPS=y +CONFIG_PAGE_COUNTER=y +# CONFIG_CGROUP_FAVOR_DYNMODS is not set +CONFIG_MEMCG=y +CONFIG_MEMCG_V1_RECLAIM=y +CONFIG_MEMCG_MEMFS_INFO=y +CONFIG_MEMCG_OOM_PRIORITY=y +CONFIG_MEMCG_SWAP_QOS=y +CONFIG_MEMCG_KMEM=y +CONFIG_BLK_CGROUP=y +CONFIG_CGROUP_WRITEBACK=y +CONFIG_CGROUP_V1_WRITEBACK=y +CONFIG_CGROUP_SCHED=y +CONFIG_QOS_SCHED=y +CONFIG_QOS_SCHED_SMT_EXPELLER=y +CONFIG_QOS_SCHED_PRIO_LB=y +CONFIG_QOS_SCHED_MULTILEVEL=y +CONFIG_FAIR_GROUP_SCHED=y +CONFIG_CFS_BANDWIDTH=y +CONFIG_RT_GROUP_SCHED=y +CONFIG_QOS_SCHED_DYNAMIC_AFFINITY=y +CONFIG_SCHED_MM_CID=y +CONFIG_QOS_SCHED_SMART_GRID=y +CONFIG_CGROUP_PIDS=y +CONFIG_CGROUP_RDMA=y +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_HUGETLB=y +CONFIG_CPUSETS=y +CONFIG_PROC_PID_CPUSET=y +CONFIG_CGROUP_DEVICE=y +CONFIG_CGROUP_CPUACCT=y +CONFIG_CGROUP_PERF=y +CONFIG_CGROUP_BPF=y +CONFIG_CGROUP_MISC=y +# CONFIG_CGROUP_DEBUG is not set +CONFIG_SOCK_CGROUP_DATA=y +CONFIG_CGROUP_V1_KILL=y +CONFIG_CGROUP_V1_STAT=y +CONFIG_CGROUP_FILES=y +CONFIG_NAMESPACES=y +CONFIG_UTS_NS=y +CONFIG_TIME_NS=y +CONFIG_IPC_NS=y +CONFIG_USER_NS=y +CONFIG_PID_NS=y +CONFIG_NET_NS=y +CONFIG_SCHED_STEAL=y +CONFIG_CHECKPOINT_RESTORE=y +CONFIG_SCHED_AUTOGROUP=y +CONFIG_RELAY=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_INITRAMFS_SOURCE="" +CONFIG_RD_GZIP=y +CONFIG_RD_BZIP2=y +CONFIG_RD_LZMA=y +CONFIG_RD_XZ=y +CONFIG_RD_LZO=y +CONFIG_RD_LZ4=y +CONFIG_RD_ZSTD=y +CONFIG_INITRAMFS_FILE_METADATA="" +CONFIG_BOOT_CONFIG=y +# CONFIG_BOOT_CONFIG_FORCE is not set +# CONFIG_BOOT_CONFIG_EMBED is not set +# CONFIG_INITRAMFS_PRESERVE_MTIME is not set +CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_LD_ORPHAN_WARN=y +CONFIG_LD_ORPHAN_WARN_LEVEL="warn" +CONFIG_SYSCTL=y +CONFIG_HAVE_UID16=y +CONFIG_SYSCTL_EXCEPTION_TRACE=y +CONFIG_EXPERT=y +CONFIG_UID16=y +CONFIG_MULTIUSER=y +# CONFIG_SGETMASK_SYSCALL is not set +CONFIG_SYSFS_SYSCALL=y +CONFIG_FHANDLE=y +CONFIG_POSIX_TIMERS=y +CONFIG_PRINTK=y +CONFIG_BUG=y +CONFIG_ELF_CORE=y +CONFIG_BASE_FULL=y +CONFIG_FUTEX=y +CONFIG_FUTEX_PI=y +CONFIG_EPOLL=y +CONFIG_SIGNALFD=y +CONFIG_TIMERFD=y +CONFIG_EVENTFD=y +CONFIG_SHMEM=y +CONFIG_AIO=y +CONFIG_IO_URING=y +CONFIG_ADVISE_SYSCALLS=y +CONFIG_MEMBARRIER=y +CONFIG_KALLSYMS=y +# CONFIG_KALLSYMS_SELFTEST is not set +CONFIG_KALLSYMS_ALL=y +CONFIG_KALLSYMS_BASE_RELATIVE=y +CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y +CONFIG_KCMP=y +CONFIG_RSEQ=y +CONFIG_CACHESTAT_SYSCALL=y +# CONFIG_DEBUG_RSEQ is not set +CONFIG_HAVE_PERF_EVENTS=y +CONFIG_GUEST_PERF_EVENTS=y +CONFIG_PERF_USE_VMALLOC=y +# CONFIG_PC104 is not set + +# +# Kernel Performance Events And Counters +# +CONFIG_PERF_EVENTS=y +CONFIG_DEBUG_PERF_USE_VMALLOC=y +# end of Kernel Performance Events And Counters + +CONFIG_SYSTEM_DATA_VERIFICATION=y +CONFIG_PROFILING=y +CONFIG_TRACEPOINTS=y +CONFIG_KABI_RESERVE=y +CONFIG_KABI_SIZE_ALIGN_CHECKS=y + +# +# Kexec and crash features +# +CONFIG_CRASH_CORE=y +CONFIG_KEXEC_CORE=y +CONFIG_HAVE_IMA_KEXEC=y +CONFIG_KEXEC=y +CONFIG_KEXEC_FILE=y +CONFIG_KEXEC_SIG=y +CONFIG_KEXEC_IMAGE_VERIFY_SIG=y +CONFIG_CRASH_DUMP=y +# end of Kexec and crash features +# end of General setup + +CONFIG_ARM64=y +CONFIG_GCC_SUPPORTS_DYNAMIC_FTRACE_WITH_ARGS=y +CONFIG_64BIT=y +CONFIG_MMU=y +CONFIG_ARM64_PAGE_SHIFT=12 +CONFIG_ARM64_CONT_PTE_SHIFT=4 +CONFIG_ARM64_CONT_PMD_SHIFT=4 +CONFIG_ARCH_MMAP_RND_BITS_MIN=18 +CONFIG_ARCH_MMAP_RND_BITS_MAX=33 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_GENERIC_CSUM=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_SMP=y +CONFIG_KERNEL_MODE_NEON=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_PGTABLE_LEVELS=4 +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_ARCH_PROC_KCORE_TEXT=y +CONFIG_BUILTIN_RETURN_ADDRESS_STRIPS_PAC=y + +# +# Platform selection +# +# CONFIG_ARCH_ACTIONS is not set +# CONFIG_ARCH_SUNXI is not set +# CONFIG_ARCH_ALPINE is not set +# CONFIG_ARCH_APPLE is not set +# CONFIG_ARCH_BCM is not set +# CONFIG_ARCH_BERLIN is not set +# CONFIG_ARCH_BITMAIN is not set +# CONFIG_ARCH_EXYNOS is not set +# CONFIG_ARCH_SPARX5 is not set +# CONFIG_ARCH_K3 is not set +# CONFIG_ARCH_LG1K is not set +CONFIG_ARCH_HISI=y +# CONFIG_ARCH_KEEMBAY is not set +# CONFIG_ARCH_MEDIATEK is not set +# CONFIG_ARCH_MESON is not set +# CONFIG_ARCH_MVEBU is not set +# CONFIG_ARCH_NXP is not set +# CONFIG_ARCH_MA35 is not set +# CONFIG_ARCH_NPCM is not set +CONFIG_ARCH_PHYTIUM=y +CONFIG_ARCH_QCOM=y +# CONFIG_ARCH_REALTEK is not set +# CONFIG_ARCH_RENESAS is not set +# CONFIG_ARCH_ROCKCHIP is not set +CONFIG_ARCH_SEATTLE=y +# CONFIG_ARCH_INTEL_SOCFPGA is not set +# CONFIG_ARCH_STM32 is not set +# CONFIG_ARCH_SYNQUACER is not set +# CONFIG_ARCH_TEGRA is not set +# CONFIG_ARCH_SPRD is not set +CONFIG_ARCH_THUNDER=y +CONFIG_ARCH_THUNDER2=y +# CONFIG_ARCH_UNIPHIER is not set +CONFIG_ARCH_VEXPRESS=y +# CONFIG_ARCH_VISCONTI is not set +CONFIG_ARCH_XGENE=y +# CONFIG_ARCH_ZYNQMP is not set +# end of Platform selection + +CONFIG_HAVE_LIVEPATCH_WO_FTRACE=y + +# +# Enable Livepatch +# +CONFIG_LIVEPATCH=y +CONFIG_LIVEPATCH_WO_FTRACE=y +CONFIG_LIVEPATCH_STOP_MACHINE_CONSISTENCY=y +# CONFIG_LIVEPATCH_STACK is not set +CONFIG_LIVEPATCH_RESTRICT_KPROBE=y +CONFIG_LIVEPATCH_ISOLATE_KPROBE=y +# end of Enable Livepatch + +# +# Kernel Features +# + +# +# ARM errata workarounds via the alternatives framework +# +CONFIG_AMPERE_ERRATUM_AC03_CPU_38=y +CONFIG_ARM64_WORKAROUND_CLEAN_CACHE=y +CONFIG_ARM64_ERRATUM_826319=y +CONFIG_ARM64_ERRATUM_827319=y +CONFIG_ARM64_ERRATUM_824069=y +CONFIG_ARM64_ERRATUM_819472=y +CONFIG_ARM64_ERRATUM_832075=y +CONFIG_ARM64_ERRATUM_834220=y +CONFIG_ARM64_ERRATUM_1742098=y +CONFIG_ARM64_ERRATUM_845719=y +CONFIG_ARM64_ERRATUM_843419=y +CONFIG_ARM64_LD_HAS_FIX_ERRATUM_843419=y +CONFIG_ARM64_ERRATUM_1024718=y +CONFIG_ARM64_ERRATUM_1418040=y +CONFIG_ARM64_WORKAROUND_SPECULATIVE_AT=y +CONFIG_ARM64_ERRATUM_1165522=y +CONFIG_ARM64_ERRATUM_1319367=y +CONFIG_ARM64_ERRATUM_1530923=y +CONFIG_ARM64_WORKAROUND_REPEAT_TLBI=y +CONFIG_ARM64_ERRATUM_2441007=y +CONFIG_ARM64_ERRATUM_1286807=y +CONFIG_ARM64_ERRATUM_1463225=y +CONFIG_ARM64_ERRATUM_1542419=y +CONFIG_ARM64_ERRATUM_1508412=y +CONFIG_ARM64_WORKAROUND_TRBE_OVERWRITE_FILL_MODE=y +CONFIG_ARM64_ERRATUM_2051678=y +CONFIG_ARM64_ERRATUM_2077057=y +CONFIG_ARM64_ERRATUM_2658417=y +CONFIG_ARM64_ERRATUM_2119858=y +CONFIG_ARM64_ERRATUM_2139208=y +CONFIG_ARM64_WORKAROUND_TSB_FLUSH_FAILURE=y +CONFIG_ARM64_ERRATUM_2054223=y +CONFIG_ARM64_ERRATUM_2067961=y +CONFIG_ARM64_WORKAROUND_TRBE_WRITE_OUT_OF_RANGE=y +CONFIG_ARM64_ERRATUM_2253138=y +CONFIG_ARM64_ERRATUM_2224489=y +CONFIG_ARM64_ERRATUM_2441009=y +CONFIG_ARM64_ERRATUM_2064142=y +CONFIG_ARM64_ERRATUM_2038923=y +CONFIG_ARM64_ERRATUM_1902691=y +CONFIG_ARM64_ERRATUM_2457168=y +CONFIG_ARM64_ERRATUM_2645198=y +CONFIG_ARM64_WORKAROUND_SPECULATIVE_UNPRIV_LOAD=y +CONFIG_ARM64_ERRATUM_2966298=y +CONFIG_ARM64_ERRATUM_3117295=y +CONFIG_CAVIUM_ERRATUM_22375=y +CONFIG_CAVIUM_ERRATUM_23144=y +CONFIG_CAVIUM_ERRATUM_23154=y +CONFIG_CAVIUM_ERRATUM_27456=y +CONFIG_CAVIUM_ERRATUM_30115=y +CONFIG_CAVIUM_TX2_ERRATUM_219=y +CONFIG_FUJITSU_ERRATUM_010001=y +CONFIG_HISILICON_ERRATUM_161600802=y +CONFIG_HISILICON_ERRATUM_162100125=y +# CONFIG_HISILICON_ERRATUM_1980005 is not set +CONFIG_HISILICON_ERRATUM_162100801=y +CONFIG_HISILICON_ERRATUM_162100602=y +CONFIG_HISILICON_ERRATUM_162102203=y +CONFIG_QCOM_FALKOR_ERRATUM_1003=y +CONFIG_QCOM_FALKOR_ERRATUM_1009=y +CONFIG_QCOM_QDF2400_ERRATUM_0065=y +CONFIG_QCOM_FALKOR_ERRATUM_E1041=y +CONFIG_NVIDIA_CARMEL_CNP_ERRATUM=y +CONFIG_ROCKCHIP_ERRATUM_3588001=y +CONFIG_SOCIONEXT_SYNQUACER_PREITS=y +CONFIG_HISILICON_ERRATUM_HIP08_RU_PREFETCH=y +# CONFIG_HISILICON_HIP08_RU_PREFETCH_DEFAULT_OFF is not set +# end of ARM errata workarounds via the alternatives framework + +CONFIG_ARM64_4K_PAGES=y +# CONFIG_ARM64_16K_PAGES is not set +# CONFIG_ARM64_64K_PAGES is not set +# CONFIG_ARM64_VA_BITS_39 is not set +CONFIG_ARM64_VA_BITS_48=y +CONFIG_ARM64_VA_BITS=48 +CONFIG_ARM64_PA_BITS_48=y +CONFIG_ARM64_PA_BITS=48 +# CONFIG_CPU_BIG_ENDIAN is not set +CONFIG_CPU_LITTLE_ENDIAN=y +CONFIG_SCHED_MC=y +CONFIG_SCHED_CLUSTER=y +CONFIG_SCHED_SMT=y +CONFIG_NR_CPUS=4096 +CONFIG_HOTPLUG_CPU=y +# CONFIG_ARM64_BOOTPARAM_HOTPLUG_CPU0 is not set +CONFIG_NUMA=y +CONFIG_NODES_SHIFT=8 +CONFIG_NUMA_AWARE_SPINLOCKS=y +# CONFIG_ARCH_CUSTOM_NUMA_DISTANCE is not set +# CONFIG_HZ_100 is not set +CONFIG_HZ_250=y +# CONFIG_HZ_300 is not set +# CONFIG_HZ_1000 is not set +CONFIG_HZ=250 +CONFIG_SCHED_HRTICK=y +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_HW_PERF_EVENTS=y +CONFIG_ARCH_LLC_128_LINE_SIZE=y +CONFIG_CC_HAVE_SHADOW_CALL_STACK=y +CONFIG_PARAVIRT=y +CONFIG_PARAVIRT_SCHED=y +CONFIG_PARAVIRT_TIME_ACCOUNTING=y +CONFIG_ARCH_SUPPORTS_KEXEC=y +CONFIG_ARCH_SUPPORTS_KEXEC_FILE=y +CONFIG_ARCH_SELECTS_KEXEC_FILE=y +CONFIG_ARCH_SUPPORTS_KEXEC_SIG=y +CONFIG_ARCH_SUPPORTS_KEXEC_IMAGE_VERIFY_SIG=y +CONFIG_ARCH_DEFAULT_KEXEC_IMAGE_VERIFY_SIG=y +CONFIG_ARCH_SUPPORTS_CRASH_DUMP=y +CONFIG_TRANS_TABLE=y +# CONFIG_XEN is not set +CONFIG_ARCH_FORCE_MAX_ORDER=10 +CONFIG_UNMAP_KERNEL_AT_EL0=y +CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY=y +# CONFIG_RODATA_FULL_DEFAULT_ENABLED is not set +# CONFIG_ARM64_SW_TTBR0_PAN is not set +CONFIG_ARM64_TAGGED_ADDR_ABI=y +CONFIG_AARCH32_EL0=y +# CONFIG_KUSER_HELPERS is not set +# CONFIG_COMPAT_ALIGNMENT_FIXUPS is not set +# CONFIG_COMPAT_TASK_SIZE is not set +CONFIG_ARMV8_DEPRECATED=y +CONFIG_SWP_EMULATION=y +CONFIG_CP15_BARRIER_EMULATION=y +CONFIG_SETEND_EMULATION=y + +# +# ARMv8.1 architectural features +# +CONFIG_ARM64_HW_AFDBM=y +CONFIG_ARM64_PAN=y +CONFIG_AS_HAS_LSE_ATOMICS=y +CONFIG_ARM64_LSE_ATOMICS=y +CONFIG_ARM64_USE_LSE_ATOMICS=y +# end of ARMv8.1 architectural features + +# +# ARMv8.2 architectural features +# +CONFIG_AS_HAS_ARMV8_2=y +CONFIG_AS_HAS_SHA3=y +CONFIG_ARM64_PMEM=y +CONFIG_ARM64_RAS_EXTN=y +CONFIG_ARM64_CNP=y +# end of ARMv8.2 architectural features + +# +# ARMv8.3 architectural features +# +CONFIG_ARM64_PTR_AUTH=y +CONFIG_ARM64_PTR_AUTH_KERNEL=y +CONFIG_CC_HAS_BRANCH_PROT_PAC_RET=y +CONFIG_CC_HAS_SIGN_RETURN_ADDRESS=y +CONFIG_AS_HAS_ARMV8_3=y +CONFIG_AS_HAS_CFI_NEGATE_RA_STATE=y +CONFIG_AS_HAS_LDAPR=y +# end of ARMv8.3 architectural features + +# +# ARMv8.4 architectural features +# +CONFIG_ARM64_AMU_EXTN=y +CONFIG_AS_HAS_ARMV8_4=y +CONFIG_ARM64_TLB_RANGE=y +CONFIG_ARM64_MPAM=y +# end of ARMv8.4 architectural features + +# +# ARMv8.5 architectural features +# +CONFIG_AS_HAS_ARMV8_5=y +# CONFIG_ARM64_BTI is not set +CONFIG_CC_HAS_BRANCH_PROT_PAC_RET_BTI=y +CONFIG_ARM64_E0PD=y +CONFIG_ARM64_AS_HAS_MTE=y +# CONFIG_ARM64_MTE is not set +# end of ARMv8.5 architectural features + +# +# ARMv8.6 architectural features +# +CONFIG_ARM64_TWED=y +# end of ARMv8.6 architectural features + +# +# ARMv8.7 architectural features +# +CONFIG_ARM64_EPAN=y +# end of ARMv8.7 architectural features + +# +# ARMv8.8 architectural features +# +CONFIG_ARM64_NMI=y +# end of ARMv8.8 architectural features + +CONFIG_ARM64_SVE=y +CONFIG_ARM64_SME=y +CONFIG_ARM64_PSEUDO_NMI=y +# CONFIG_ARM64_DEBUG_PRIORITY_MASKING is not set +CONFIG_IPI_AS_NMI=y +CONFIG_NON_NMI_IPI_BACKTRACE=y +CONFIG_RELOCATABLE=y +CONFIG_RANDOMIZE_BASE=y +CONFIG_RANDOMIZE_MODULE_REGION_FULL=y +CONFIG_KASLR_SKIP_MEM_RANGE=y +CONFIG_CC_HAVE_STACKPROTECTOR_SYSREG=y +CONFIG_STACKPROTECTOR_PER_TASK=y +CONFIG_ARM64_CONTPTE=y +CONFIG_CLEAR_USER_WORKAROUND=y +# end of Kernel Features + +# +# Boot options +# +CONFIG_ARM64_ACPI_PARKING_PROTOCOL=y +CONFIG_CMDLINE="console=ttyAMA0" +CONFIG_CMDLINE_FROM_BOOTLOADER=y +# CONFIG_CMDLINE_FORCE is not set +CONFIG_EFI_STUB=y +CONFIG_EFI=y +CONFIG_DMI=y +# end of Boot options + +CONFIG_COMPAT=y +CONFIG_HISI_VIRTCCA_GUEST=y + +# +# Power management options +# +CONFIG_SUSPEND=y +CONFIG_SUSPEND_FREEZER=y +# CONFIG_SUSPEND_SKIP_SYNC is not set +CONFIG_HIBERNATE_CALLBACKS=y +CONFIG_HIBERNATION=y +CONFIG_HIBERNATION_SNAPSHOT_DEV=y +CONFIG_PM_STD_PARTITION="" +CONFIG_PM_SLEEP=y +CONFIG_PM_SLEEP_SMP=y +# CONFIG_PM_AUTOSLEEP is not set +# CONFIG_PM_USERSPACE_AUTOSLEEP is not set +# CONFIG_PM_WAKELOCKS is not set +CONFIG_PM=y +CONFIG_PM_DEBUG=y +# CONFIG_PM_ADVANCED_DEBUG is not set +# CONFIG_PM_TEST_SUSPEND is not set +CONFIG_PM_SLEEP_DEBUG=y +# CONFIG_DPM_WATCHDOG is not set +CONFIG_PM_CLK=y +CONFIG_PM_GENERIC_DOMAINS=y +# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set +CONFIG_PM_GENERIC_DOMAINS_SLEEP=y +CONFIG_PM_GENERIC_DOMAINS_OF=y +CONFIG_CPU_PM=y +# CONFIG_ENERGY_MODEL is not set +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_HIBERNATION_HEADER=y +CONFIG_ARCH_SUSPEND_POSSIBLE=y +# end of Power management options + +# +# CPU Power Management +# + +# +# CPU Idle +# +CONFIG_CPU_IDLE=y +# CONFIG_CPU_IDLE_GOV_LADDER is not set +CONFIG_CPU_IDLE_GOV_MENU=y +CONFIG_CPU_IDLE_GOV_TEO=y + +# +# ARM CPU Idle Drivers +# +# CONFIG_ARM_PSCI_CPUIDLE is not set +# end of ARM CPU Idle Drivers +# end of CPU Idle + +# +# CPU Frequency scaling +# +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_GOV_ATTR_SET=y +CONFIG_CPU_FREQ_GOV_COMMON=y +CONFIG_CPU_FREQ_STAT=y +CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set +CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=y +CONFIG_CPU_FREQ_GOV_USERSPACE=y +CONFIG_CPU_FREQ_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y +CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y + +# +# CPU frequency scaling drivers +# +# CONFIG_CPUFREQ_DT is not set +# CONFIG_CPUFREQ_DT_PLATDEV is not set +CONFIG_ACPI_CPPC_CPUFREQ=m +CONFIG_ACPI_CPPC_CPUFREQ_FIE=y +CONFIG_ARM_SCPI_CPUFREQ=m +# CONFIG_ARM_QCOM_CPUFREQ_HW is not set +# end of CPU Frequency scaling +# end of CPU Power Management + +CONFIG_ARCH_SUPPORTS_ACPI=y +CONFIG_ACPI=y +CONFIG_ACPI_GENERIC_GSI=y +CONFIG_ACPI_CCA_REQUIRED=y +CONFIG_ACPI_TABLE_LIB=y +# CONFIG_ACPI_DEBUGGER is not set +CONFIG_ACPI_SPCR_TABLE=y +# CONFIG_ACPI_FPDT is not set +# CONFIG_ACPI_EC_DEBUGFS is not set +CONFIG_ACPI_AC=y +CONFIG_ACPI_BATTERY=y +CONFIG_ACPI_BUTTON=y +CONFIG_ACPI_VIDEO=m +CONFIG_ACPI_FAN=y +# CONFIG_ACPI_TAD is not set +# CONFIG_ACPI_DOCK is not set +CONFIG_ACPI_PROCESSOR_IDLE=y +CONFIG_ACPI_MCFG=y +CONFIG_ACPI_CPPC_LIB=y +CONFIG_ACPI_PROCESSOR=y +CONFIG_ACPI_IPMI=m +CONFIG_ACPI_THERMAL=y +CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y +CONFIG_ACPI_TABLE_UPGRADE=y +# CONFIG_ACPI_DEBUG is not set +CONFIG_ACPI_PCI_SLOT=y +CONFIG_ACPI_CONTAINER=y +CONFIG_ACPI_HOTPLUG_MEMORY=y +CONFIG_ACPI_HED=y +# CONFIG_ACPI_CUSTOM_METHOD is not set +# CONFIG_ACPI_BGRT is not set +CONFIG_ACPI_REDUCED_HARDWARE_ONLY=y +CONFIG_ACPI_NFIT=m +# CONFIG_NFIT_SECURITY_DEBUG is not set +CONFIG_ACPI_NUMA=y +CONFIG_ACPI_HMAT=y +CONFIG_HAVE_ACPI_APEI=y +CONFIG_ACPI_APEI=y +CONFIG_ACPI_APEI_GHES=y +# CONFIG_ACPI_APEI_GHES_NOTIFY_ALL_RAS_ERR is not set +CONFIG_ACPI_APEI_PCIEAER=y +CONFIG_ACPI_APEI_SEA=y +CONFIG_ACPI_APEI_MEMORY_FAILURE=y +CONFIG_ACPI_APEI_EINJ=m +# CONFIG_ACPI_APEI_ERST_DEBUG is not set +# CONFIG_ACPI_CONFIGFS is not set +# CONFIG_ACPI_PFRUT is not set +CONFIG_ACPI_IORT=y +CONFIG_ACPI_GTDT=y +CONFIG_ACPI_AGDI=y +CONFIG_ACPI_APMT=y +CONFIG_ACPI_MPAM=y +CONFIG_ACPI_PPTT=y +CONFIG_ACPI_PCC=y +CONFIG_ACPI_FFH=y +# CONFIG_PMIC_OPREGION is not set +CONFIG_ACPI_PRMT=y +CONFIG_IRQ_BYPASS_MANAGER=y +CONFIG_HAVE_KVM=y +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQFD=y +CONFIG_HAVE_KVM_IRQ_ROUTING=y +CONFIG_HAVE_KVM_DIRTY_RING=y +CONFIG_HAVE_KVM_DIRTY_RING_ACQ_REL=y +CONFIG_NEED_KVM_DIRTY_RING_WITH_BITMAP=y +CONFIG_HAVE_KVM_EVENTFD=y +CONFIG_KVM_MMIO=y +CONFIG_HAVE_KVM_MSI=y +CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y +CONFIG_KVM_VFIO=y +CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y +CONFIG_HAVE_KVM_IRQ_BYPASS=y +CONFIG_HAVE_KVM_VCPU_RUN_PID_CHANGE=y +CONFIG_KVM_XFER_TO_GUEST_WORK=y +CONFIG_KVM_GENERIC_HARDWARE_ENABLING=y +CONFIG_KVM_HISI_VIRT=y +CONFIG_VIRTUALIZATION=y +CONFIG_KVM=y +CONFIG_HISI_VIRTCCA_HOST=y +# CONFIG_NVHE_EL2_DEBUG is not set +CONFIG_KVM_ARM_MULTI_LPI_TRANSLATE_CACHE=y +CONFIG_ARCH_VCPU_STAT=y +CONFIG_VIRT_VTIMER_IRQ_BYPASS=y +CONFIG_CPU_MITIGATIONS=y + +# +# General architecture-dependent options +# +CONFIG_HOTPLUG_SMT=y +CONFIG_HOTPLUG_CORE_SYNC=y +CONFIG_HOTPLUG_CORE_SYNC_DEAD=y +CONFIG_KPROBES=y +CONFIG_JUMP_LABEL=y +# CONFIG_STATIC_KEYS_SELFTEST is not set +CONFIG_UPROBES=y +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_KRETPROBES=y +CONFIG_HAVE_IOREMAP_PROT=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_ARCH_CORRECT_STACKTRACE_ON_KRETPROBE=y +CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y +CONFIG_HAVE_NMI=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_GENERIC_IDLE_POLL_SETUP=y +CONFIG_ARCH_HAS_FORTIFY_SOURCE=y +CONFIG_ARCH_HAS_KEEPINITRD=y +CONFIG_ARCH_HAS_SET_MEMORY=y +CONFIG_ARCH_HAS_SET_DIRECT_MAP=y +CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y +CONFIG_ARCH_WANTS_NO_INSTR=y +CONFIG_HAVE_ASM_MODVERSIONS=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_RSEQ=y +CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_PERF_EVENTS_NMI=y +CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y +CONFIG_MMU_GATHER_TABLE_FREE=y +CONFIG_MMU_GATHER_RCU_TABLE_FREE=y +CONFIG_MMU_LAZY_TLB_REFCOUNT=y +CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_ARCH_HAS_NMI_SAFE_THIS_CPU_OPS=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_HAVE_ARCH_SECCOMP=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_SECCOMP=y +CONFIG_SECCOMP_FILTER=y +# CONFIG_SECCOMP_CACHE_DEBUG is not set +CONFIG_HAVE_ARCH_STACKLEAK=y +CONFIG_HAVE_STACKPROTECTOR=y +CONFIG_STACKPROTECTOR=y +CONFIG_STACKPROTECTOR_STRONG=y +CONFIG_ARCH_SUPPORTS_SHADOW_CALL_STACK=y +# CONFIG_SHADOW_CALL_STACK is not set +CONFIG_ARCH_SUPPORTS_LTO_CLANG=y +CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y +CONFIG_LTO_NONE=y +CONFIG_ARCH_SUPPORTS_CFI_CLANG=y +CONFIG_HAVE_CONTEXT_TRACKING_USER=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_MOVE_PUD=y +CONFIG_HAVE_MOVE_PMD=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_HUGE_VMAP=y +CONFIG_HAVE_ARCH_HUGE_VMALLOC=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_ARCH_WANT_PMD_MKWRITE=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y +CONFIG_MODULES_USE_ELF_RELA=y +CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK=y +CONFIG_SOFTIRQ_ON_OWN_STACK=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_ARCH_MMAP_RND_BITS=18 +CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11 +CONFIG_PAGE_SIZE_LESS_THAN_64KB=y +CONFIG_PAGE_SIZE_LESS_THAN_256KB=y +CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=y +CONFIG_CLONE_BACKWARDS=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_COMPAT_OLD_SIGACTION=y +CONFIG_COMPAT_32BIT_TIME=y +CONFIG_HAVE_ARCH_VMAP_STACK=y +CONFIG_VMAP_STACK=y +CONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET=y +CONFIG_RANDOMIZE_KSTACK_OFFSET=y +# CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT is not set +CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y +CONFIG_STRICT_KERNEL_RWX=y +CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y +CONFIG_STRICT_MODULE_RWX=y +CONFIG_ARCH_HAS_CPU_RESCTRL=y +CONFIG_HAVE_ARCH_COMPILER_H=y +CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y +CONFIG_ARCH_USE_MEMREMAP_PROT=y +# CONFIG_LOCK_EVENT_COUNTS is not set +CONFIG_ARCH_HAS_RELR=y +CONFIG_HAVE_PREEMPT_DYNAMIC=y +CONFIG_HAVE_PREEMPT_DYNAMIC_KEY=y +CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_ARCH_SUPPORTS_PAGE_TABLE_CHECK=y +CONFIG_ARCH_HAVE_TRACE_MMIO_ACCESS=y + +# +# GCOV-based kernel profiling +# +# CONFIG_GCOV_KERNEL is not set +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +# end of GCOV-based kernel profiling + +# +# Profile Guided Optimization (PGO) +# +CONFIG_ARCH_SUPPORTS_PGO_CLANG=y +# end of Profile Guided Optimization (PGO) + +CONFIG_HAVE_GCC_PLUGINS=y +CONFIG_FUNCTION_ALIGNMENT_4B=y +CONFIG_FUNCTION_ALIGNMENT_8B=y +CONFIG_FUNCTION_ALIGNMENT=8 +# end of General architecture-dependent options + +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=0 +CONFIG_MODULE_SIG_FORMAT=y +CONFIG_MODULES=y +# CONFIG_MODULE_DEBUG is not set +CONFIG_MODULE_FORCE_LOAD=y +CONFIG_MODULE_UNLOAD=y +# CONFIG_MODULE_FORCE_UNLOAD is not set +# CONFIG_MODULE_UNLOAD_TAINT_TRACKING is not set +CONFIG_MODVERSIONS=y +CONFIG_ASM_MODVERSIONS=y +CONFIG_MODULE_SRCVERSION_ALL=y +CONFIG_MODULE_SIG=y +# CONFIG_MODULE_SIG_FORCE is not set +CONFIG_MODULE_SIG_ALL=y +# CONFIG_MODULE_SIG_SHA1 is not set +# CONFIG_MODULE_SIG_SHA224 is not set +CONFIG_MODULE_SIG_SHA256=y +# CONFIG_MODULE_SIG_SHA384 is not set +# CONFIG_MODULE_SIG_SHA512 is not set +# CONFIG_MODULE_SIG_SM3 is not set +CONFIG_MODULE_SIG_HASH="sha256" +CONFIG_MODULE_COMPRESS_NONE=y +# CONFIG_MODULE_COMPRESS_GZIP is not set +# CONFIG_MODULE_COMPRESS_XZ is not set +# CONFIG_MODULE_COMPRESS_ZSTD is not set +# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set +CONFIG_MODPROBE_PATH="/sbin/modprobe" +# CONFIG_TRIM_UNUSED_KSYMS is not set +CONFIG_MODULES_TREE_LOOKUP=y +CONFIG_BLOCK=y +CONFIG_BLOCK_LEGACY_AUTOLOAD=y +CONFIG_BLK_RQ_ALLOC_TIME=y +CONFIG_BLK_CGROUP_RWSTAT=y +CONFIG_BLK_CGROUP_PUNT_BIO=y +CONFIG_BLK_DEV_BSG_COMMON=y +CONFIG_BLK_ICQ=y +CONFIG_BLK_DEV_BSGLIB=y +CONFIG_BLK_DEV_INTEGRITY=y +CONFIG_BLK_DEV_INTEGRITY_T10=m +CONFIG_BLK_DEV_WRITE_MOUNTED=y +CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_DEV_THROTTLING_LOW is not set +CONFIG_BLK_DEV_SUPPORT_LEGACY_GLOBAL_LIMIT=y +CONFIG_BLK_WBT=y +CONFIG_BLK_WBT_MQ=y +# CONFIG_BLK_CGROUP_IOLATENCY is not set +# CONFIG_BLK_CGROUP_FC_APPID is not set +CONFIG_BLK_CGROUP_IOCOST=y +CONFIG_BLK_CGROUP_LEGACY_IOCOST=y +# CONFIG_BLK_CGROUP_IOPRIO is not set +CONFIG_BLK_DEBUG_FS=y +CONFIG_BLK_DEBUG_FS_ZONED=y +# CONFIG_BLK_SED_OPAL is not set +# CONFIG_BLK_INLINE_ENCRYPTION is not set +CONFIG_BLK_DEV_DETECT_WRITING_PART0=y +CONFIG_BLK_DEV_WRITE_MOUNTED_DUMP=y +CONFIG_BLK_IO_HUNG_TASK_CHECK=y + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +# CONFIG_AIX_PARTITION is not set +CONFIG_OSF_PARTITION=y +CONFIG_AMIGA_PARTITION=y +# CONFIG_ATARI_PARTITION is not set +CONFIG_MAC_PARTITION=y +CONFIG_MSDOS_PARTITION=y +CONFIG_BSD_DISKLABEL=y +CONFIG_MINIX_SUBPARTITION=y +CONFIG_SOLARIS_X86_PARTITION=y +CONFIG_UNIXWARE_DISKLABEL=y +# CONFIG_LDM_PARTITION is not set +CONFIG_SGI_PARTITION=y +# CONFIG_ULTRIX_PARTITION is not set +CONFIG_SUN_PARTITION=y +CONFIG_KARMA_PARTITION=y +CONFIG_EFI_PARTITION=y +# CONFIG_SYSV68_PARTITION is not set +# CONFIG_CMDLINE_PARTITION is not set +# end of Partition Types + +CONFIG_BLK_MQ_PCI=y +CONFIG_BLK_MQ_VIRTIO=y +CONFIG_BLK_PM=y +CONFIG_BLOCK_HOLDER_DEPRECATED=y +CONFIG_BLK_MQ_STACKING=y + +# +# IO Schedulers +# +CONFIG_MQ_IOSCHED_DEADLINE=y +CONFIG_MQ_IOSCHED_KYBER=y +CONFIG_IOSCHED_BFQ=y +CONFIG_BFQ_GROUP_IOSCHED=y +# CONFIG_BFQ_CGROUP_DEBUG is not set +# end of IO Schedulers + +CONFIG_PREEMPT_NOTIFIERS=y +CONFIG_PADATA=y +CONFIG_ASN1=y +CONFIG_ARCH_INLINE_SPIN_TRYLOCK=y +CONFIG_ARCH_INLINE_SPIN_TRYLOCK_BH=y +CONFIG_ARCH_INLINE_SPIN_LOCK=y +CONFIG_ARCH_INLINE_SPIN_LOCK_BH=y +CONFIG_ARCH_INLINE_SPIN_LOCK_IRQ=y +CONFIG_ARCH_INLINE_SPIN_LOCK_IRQSAVE=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK_BH=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE=y +CONFIG_ARCH_INLINE_READ_LOCK=y +CONFIG_ARCH_INLINE_READ_LOCK_BH=y +CONFIG_ARCH_INLINE_READ_LOCK_IRQ=y +CONFIG_ARCH_INLINE_READ_LOCK_IRQSAVE=y +CONFIG_ARCH_INLINE_READ_UNLOCK=y +CONFIG_ARCH_INLINE_READ_UNLOCK_BH=y +CONFIG_ARCH_INLINE_READ_UNLOCK_IRQ=y +CONFIG_ARCH_INLINE_READ_UNLOCK_IRQRESTORE=y +CONFIG_ARCH_INLINE_WRITE_LOCK=y +CONFIG_ARCH_INLINE_WRITE_LOCK_BH=y +CONFIG_ARCH_INLINE_WRITE_LOCK_IRQ=y +CONFIG_ARCH_INLINE_WRITE_LOCK_IRQSAVE=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_BH=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE=y +CONFIG_INLINE_SPIN_TRYLOCK=y +CONFIG_INLINE_SPIN_TRYLOCK_BH=y +CONFIG_INLINE_SPIN_LOCK=y +CONFIG_INLINE_SPIN_LOCK_BH=y +CONFIG_INLINE_SPIN_LOCK_IRQ=y +CONFIG_INLINE_SPIN_LOCK_IRQSAVE=y +CONFIG_INLINE_SPIN_UNLOCK_BH=y +CONFIG_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE=y +CONFIG_INLINE_READ_LOCK=y +CONFIG_INLINE_READ_LOCK_BH=y +CONFIG_INLINE_READ_LOCK_IRQ=y +CONFIG_INLINE_READ_LOCK_IRQSAVE=y +CONFIG_INLINE_READ_UNLOCK=y +CONFIG_INLINE_READ_UNLOCK_BH=y +CONFIG_INLINE_READ_UNLOCK_IRQ=y +CONFIG_INLINE_READ_UNLOCK_IRQRESTORE=y +CONFIG_INLINE_WRITE_LOCK=y +CONFIG_INLINE_WRITE_LOCK_BH=y +CONFIG_INLINE_WRITE_LOCK_IRQ=y +CONFIG_INLINE_WRITE_LOCK_IRQSAVE=y +CONFIG_INLINE_WRITE_UNLOCK=y +CONFIG_INLINE_WRITE_UNLOCK_BH=y +CONFIG_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_RWSEM_SPIN_ON_OWNER=y +CONFIG_LOCK_SPIN_ON_OWNER=y +CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y +CONFIG_QUEUED_SPINLOCKS=y +CONFIG_ARCH_USE_QUEUED_RWLOCKS=y +CONFIG_QUEUED_RWLOCKS=y +CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y +CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y +CONFIG_PID_MAX_PER_NAMESPACE=y +CONFIG_FREEZER=y + +# +# Executable file formats +# +CONFIG_BINFMT_ELF=y +CONFIG_ARCH_BINFMT_ELF_STATE=y +CONFIG_ARCH_BINFMT_ELF_EXTRA_PHDRS=y +CONFIG_ARCH_HAVE_ELF_PROT=y +CONFIG_ARCH_USE_GNU_PROPERTY=y +CONFIG_ELFCORE=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +CONFIG_BINFMT_SCRIPT=y +CONFIG_BINFMT_MISC=m +CONFIG_COREDUMP=y +# end of Executable file formats + +# +# Memory Management options +# +CONFIG_ZPOOL=y +CONFIG_SWAP=y +CONFIG_ZSWAP=y +# CONFIG_ZSWAP_DEFAULT_ON is not set +# CONFIG_ZSWAP_EXCLUSIVE_LOADS_DEFAULT_ON is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set +CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO=y +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4 is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD is not set +CONFIG_ZSWAP_COMPRESSOR_DEFAULT="lzo" +# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD is not set +# CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD is not set +CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC=y +CONFIG_ZSWAP_ZPOOL_DEFAULT="zsmalloc" +CONFIG_ZBUD=y +# CONFIG_Z3FOLD is not set +CONFIG_ZSMALLOC=y +CONFIG_ZSMALLOC_STAT=y +CONFIG_ZSMALLOC_CHAIN_SIZE=8 + +# +# SLAB allocator options +# +# CONFIG_SLAB_DEPRECATED is not set +CONFIG_SLUB=y +# CONFIG_SLUB_TINY is not set +CONFIG_SLAB_MERGE_DEFAULT=y +CONFIG_SLAB_FREELIST_RANDOM=y +# CONFIG_SLAB_FREELIST_HARDENED is not set +# CONFIG_SLUB_STATS is not set +CONFIG_SLUB_CPU_PARTIAL=y +# CONFIG_RANDOM_KMALLOC_CACHES is not set +# end of SLAB allocator options + +CONFIG_SHUFFLE_PAGE_ALLOCATOR=y +# CONFIG_COMPAT_BRK is not set +CONFIG_SPARSEMEM=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_ARCH_WANT_OPTIMIZE_HUGETLB_VMEMMAP=y +CONFIG_HAVE_FAST_GUP=y +CONFIG_ARCH_KEEP_MEMBLOCK=y +CONFIG_NUMA_KEEP_MEMINFO=y +CONFIG_MEMORY_ISOLATION=y +CONFIG_EXCLUSIVE_SYSTEM_RAM=y +CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y +CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y +CONFIG_MEMORY_HOTPLUG=y +CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE=y +CONFIG_MEMORY_HOTREMOVE=y +CONFIG_MHP_MEMMAP_ON_MEMORY=y +CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y +CONFIG_MEMORY_BALLOON=y +CONFIG_BALLOON_COMPACTION=y +CONFIG_COMPACTION=y +CONFIG_COMPACT_UNEVICTABLE_DEFAULT=1 +CONFIG_PAGE_REPORTING=y +CONFIG_MIGRATION=y +CONFIG_DEVICE_MIGRATION=y +CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y +CONFIG_ARCH_ENABLE_THP_MIGRATION=y +CONFIG_CONTIG_ALLOC=y +CONFIG_PCP_BATCH_SCALE_MAX=5 +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_MMU_NOTIFIER=y +CONFIG_KSM=y +CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 +CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y +CONFIG_MEMORY_FAILURE=y +CONFIG_HWPOISON_INJECT=m +CONFIG_ARCH_WANTS_THP_SWAP=y +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_THP_SWAP=y +CONFIG_READ_ONLY_THP_FOR_FS=y +CONFIG_PGTABLE_HAS_HUGE_LEAVES=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y +CONFIG_USE_PERCPU_NUMA_NODE_ID=y +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +CONFIG_CMA=y +# CONFIG_CMA_DEBUG is not set +# CONFIG_CMA_DEBUGFS is not set +# CONFIG_CMA_SYSFS is not set +CONFIG_CMA_AREAS=7 +CONFIG_GENERIC_EARLY_IOREMAP=y +# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set +CONFIG_PAGE_IDLE_FLAG=y +CONFIG_IDLE_PAGE_TRACKING=y +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_ARCH_HAS_CURRENT_STACK_POINTER=y +CONFIG_ARCH_HAS_PTE_DEVMAP=y +CONFIG_ARCH_HAS_ZONE_DMA_SET=y +CONFIG_ZONE_DMA=y +CONFIG_ZONE_DMA32=y +CONFIG_ZONE_DEVICE=y +CONFIG_ZONE_EXTMEM=y +CONFIG_HMM_MIRROR=y +CONFIG_GET_FREE_REGION=y +CONFIG_DEVICE_PRIVATE=y +CONFIG_VM_EVENT_COUNTERS=y +# CONFIG_PERCPU_STATS is not set +# CONFIG_GUP_TEST is not set +# CONFIG_DMAPOOL_TEST is not set +CONFIG_ARCH_HAS_PTE_SPECIAL=y +CONFIG_MEMFD_CREATE=y +CONFIG_SECRETMEM=y +# CONFIG_ANON_VMA_NAME is not set +CONFIG_USERFAULTFD=y +CONFIG_HAVE_ARCH_USERFAULTFD_MINOR=y +CONFIG_USERSWAP=y +CONFIG_LRU_GEN=y +# CONFIG_LRU_GEN_ENABLED is not set +# CONFIG_LRU_GEN_STATS is not set +CONFIG_ARCH_SUPPORTS_PER_VMA_LOCK=y +CONFIG_PER_VMA_LOCK=y +CONFIG_LOCK_MM_AND_FIND_VMA=y +CONFIG_IOMMU_MM_DATA=y +# CONFIG_ASCEND_FEATURES is not set +CONFIG_PAGE_CACHE_LIMIT=y +# CONFIG_CLEAR_FREELIST_PAGE is not set +CONFIG_MEMORY_RELIABLE=y +CONFIG_DYNAMIC_POOL=y +CONFIG_ETMEM_SCAN=m +CONFIG_ETMEM_SWAP=m +CONFIG_ETMEM=y +# CONFIG_BPF_READAHEAD is not set + +# +# Data Access Monitoring +# +CONFIG_DAMON=y +CONFIG_DAMON_VADDR=y +CONFIG_DAMON_PADDR=y +CONFIG_DAMON_SYSFS=y +# CONFIG_DAMON_DBGFS is not set +CONFIG_DAMON_RECLAIM=y +CONFIG_DAMON_LRU_SORT=y +# end of Data Access Monitoring +# end of Memory Management options + +CONFIG_NET=y +CONFIG_COMPAT_NETLINK_MESSAGES=y +CONFIG_NET_INGRESS=y +CONFIG_NET_EGRESS=y +CONFIG_NET_XGRESS=y +CONFIG_NET_REDIRECT=y +CONFIG_SKB_EXTENSIONS=y + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_DIAG=m +CONFIG_UNIX=y +CONFIG_UNIX_SCM=y +CONFIG_AF_UNIX_OOB=y +CONFIG_UNIX_DIAG=m +CONFIG_TLS=m +CONFIG_TLS_DEVICE=y +# CONFIG_TLS_TOE is not set +CONFIG_XFRM=y +CONFIG_XFRM_OFFLOAD=y +CONFIG_XFRM_ALGO=y +CONFIG_XFRM_USER=y +# CONFIG_XFRM_INTERFACE is not set +CONFIG_XFRM_SUB_POLICY=y +CONFIG_XFRM_MIGRATE=y +CONFIG_XFRM_STATISTICS=y +CONFIG_XFRM_AH=m +CONFIG_XFRM_ESP=m +CONFIG_XFRM_IPCOMP=m +CONFIG_NET_KEY=m +CONFIG_NET_KEY_MIGRATE=y +CONFIG_SMC=m +CONFIG_SMC_DIAG=m +CONFIG_SMC_LO=y +CONFIG_XDP_SOCKETS=y +CONFIG_XDP_SOCKETS_DIAG=y +CONFIG_NET_HANDSHAKE=y +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_FIB_TRIE_STATS=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_ROUTE_CLASSID=y +# CONFIG_IP_PNP is not set +CONFIG_NET_IPIP=m +CONFIG_NET_IPGRE_DEMUX=m +CONFIG_NET_IP_TUNNEL=m +CONFIG_NET_IPGRE=m +CONFIG_NET_IPGRE_BROADCAST=y +CONFIG_IP_MROUTE_COMMON=y +CONFIG_IP_MROUTE=y +CONFIG_IP_MROUTE_MULTIPLE_TABLES=y +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +CONFIG_SYN_COOKIES=y +CONFIG_NET_IPVTI=m +CONFIG_NET_UDP_TUNNEL=m +# CONFIG_NET_FOU is not set +# CONFIG_NET_FOU_IP_TUNNELS is not set +CONFIG_INET_AH=m +CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m +# CONFIG_INET_ESPINTCP is not set +CONFIG_INET_IPCOMP=m +CONFIG_INET_TABLE_PERTURB_ORDER=16 +CONFIG_INET_XFRM_TUNNEL=m +CONFIG_INET_TUNNEL=m +CONFIG_INET_DIAG=m +CONFIG_INET_TCP_DIAG=m +CONFIG_INET_UDP_DIAG=m +CONFIG_INET_RAW_DIAG=m +# CONFIG_INET_DIAG_DESTROY is not set +CONFIG_TCP_CONG_ADVANCED=y +CONFIG_TCP_CONG_BIC=m +CONFIG_TCP_CONG_CUBIC=y +CONFIG_TCP_CONG_WESTWOOD=m +CONFIG_TCP_CONG_HTCP=m +CONFIG_TCP_CONG_HSTCP=m +CONFIG_TCP_CONG_HYBLA=m +CONFIG_TCP_CONG_VEGAS=m +CONFIG_TCP_CONG_NV=m +CONFIG_TCP_CONG_SCALABLE=m +CONFIG_TCP_CONG_LP=m +CONFIG_TCP_CONG_VENO=m +CONFIG_TCP_CONG_YEAH=m +CONFIG_TCP_CONG_ILLINOIS=m +CONFIG_TCP_CONG_DCTCP=m +# CONFIG_TCP_CONG_CDG is not set +CONFIG_TCP_CONG_BBR=m +CONFIG_DEFAULT_CUBIC=y +# CONFIG_DEFAULT_RENO is not set +CONFIG_DEFAULT_TCP_CONG="cubic" +CONFIG_TCP_MD5SIG=y +CONFIG_TCP_COMP=y +CONFIG_IPV6=y +CONFIG_IPV6_ROUTER_PREF=y +CONFIG_IPV6_ROUTE_INFO=y +CONFIG_IPV6_OPTIMISTIC_DAD=y +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m +# CONFIG_INET6_ESPINTCP is not set +CONFIG_INET6_IPCOMP=m +CONFIG_IPV6_MIP6=m +# CONFIG_IPV6_ILA is not set +CONFIG_INET6_XFRM_TUNNEL=m +CONFIG_INET6_TUNNEL=m +CONFIG_IPV6_VTI=m +CONFIG_IPV6_SIT=m +CONFIG_IPV6_SIT_6RD=y +CONFIG_IPV6_NDISC_NODETYPE=y +CONFIG_IPV6_TUNNEL=m +CONFIG_IPV6_GRE=m +CONFIG_IPV6_MULTIPLE_TABLES=y +# CONFIG_IPV6_SUBTREES is not set +CONFIG_IPV6_MROUTE=y +CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y +CONFIG_IPV6_PIMSM_V2=y +# CONFIG_IPV6_SEG6_LWTUNNEL is not set +# CONFIG_IPV6_SEG6_HMAC is not set +# CONFIG_IPV6_RPL_LWTUNNEL is not set +# CONFIG_IPV6_IOAM6_LWTUNNEL is not set +CONFIG_NETLABEL=y +CONFIG_MPTCP=y +CONFIG_INET_MPTCP_DIAG=m +CONFIG_MPTCP_IPV6=y +CONFIG_NETWORK_SECMARK=y +CONFIG_NET_PTP_CLASSIFY=y +CONFIG_NETWORK_PHY_TIMESTAMPING=y +CONFIG_NETFILTER=y +CONFIG_NETFILTER_ADVANCED=y +CONFIG_BRIDGE_NETFILTER=m + +# +# Core Netfilter Configuration +# +CONFIG_NETFILTER_INGRESS=y +CONFIG_NETFILTER_EGRESS=y +CONFIG_NETFILTER_SKIP_EGRESS=y +CONFIG_NETFILTER_NETLINK=m +CONFIG_NETFILTER_FAMILY_BRIDGE=y +CONFIG_NETFILTER_FAMILY_ARP=y +CONFIG_NETFILTER_BPF_LINK=y +# CONFIG_NETFILTER_NETLINK_HOOK is not set +CONFIG_NETFILTER_NETLINK_ACCT=m +CONFIG_NETFILTER_NETLINK_QUEUE=m +CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NETFILTER_NETLINK_OSF=m +CONFIG_NF_CONNTRACK=m +CONFIG_NF_LOG_SYSLOG=m +CONFIG_NETFILTER_CONNCOUNT=m +CONFIG_NF_CONNTRACK_MARK=y +CONFIG_NF_CONNTRACK_SECMARK=y +CONFIG_NF_CONNTRACK_ZONES=y +CONFIG_NF_CONNTRACK_PROCFS=y +CONFIG_NF_CONNTRACK_EVENTS=y +CONFIG_NF_CONNTRACK_TIMEOUT=y +CONFIG_NF_CONNTRACK_TIMESTAMP=y +CONFIG_NF_CONNTRACK_LABELS=y +CONFIG_NF_CONNTRACK_OVS=y +CONFIG_NF_CT_PROTO_DCCP=y +CONFIG_NF_CT_PROTO_GRE=y +CONFIG_NF_CT_PROTO_SCTP=y +CONFIG_NF_CT_PROTO_UDPLITE=y +CONFIG_NF_CONNTRACK_AMANDA=m +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_H323=m +CONFIG_NF_CONNTRACK_IRC=m +CONFIG_NF_CONNTRACK_BROADCAST=m +CONFIG_NF_CONNTRACK_NETBIOS_NS=m +CONFIG_NF_CONNTRACK_SNMP=m +CONFIG_NF_CONNTRACK_PPTP=m +CONFIG_NF_CONNTRACK_SANE=m +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_TFTP=m +CONFIG_NF_CT_NETLINK=m +CONFIG_NF_CT_NETLINK_TIMEOUT=m +CONFIG_NF_CT_NETLINK_HELPER=m +CONFIG_NETFILTER_NETLINK_GLUE_CT=y +CONFIG_NF_NAT=m +CONFIG_NF_NAT_AMANDA=m +CONFIG_NF_NAT_FTP=m +CONFIG_NF_NAT_IRC=m +CONFIG_NF_NAT_SIP=m +CONFIG_NF_NAT_TFTP=m +CONFIG_NF_NAT_REDIRECT=y +CONFIG_NF_NAT_MASQUERADE=y +CONFIG_NF_NAT_OVS=y +CONFIG_NETFILTER_SYNPROXY=m +CONFIG_NF_TABLES=m +CONFIG_NF_TABLES_INET=y +CONFIG_NF_TABLES_NETDEV=y +CONFIG_NFT_NUMGEN=m +CONFIG_NFT_CT=m +# CONFIG_NFT_CONNLIMIT is not set +CONFIG_NFT_LOG=m +CONFIG_NFT_LIMIT=m +CONFIG_NFT_MASQ=m +CONFIG_NFT_REDIR=m +CONFIG_NFT_NAT=m +# CONFIG_NFT_TUNNEL is not set +CONFIG_NFT_QUEUE=m +CONFIG_NFT_QUOTA=m +CONFIG_NFT_REJECT=m +CONFIG_NFT_REJECT_INET=m +CONFIG_NFT_COMPAT=m +CONFIG_NFT_HASH=m +CONFIG_NFT_FIB=m +CONFIG_NFT_FIB_INET=m +# CONFIG_NFT_XFRM is not set +# CONFIG_NFT_SOCKET is not set +# CONFIG_NFT_OSF is not set +# CONFIG_NFT_TPROXY is not set +# CONFIG_NFT_SYNPROXY is not set +CONFIG_NF_DUP_NETDEV=m +CONFIG_NFT_DUP_NETDEV=m +CONFIG_NFT_FWD_NETDEV=m +CONFIG_NFT_FIB_NETDEV=m +# CONFIG_NFT_REJECT_NETDEV is not set +# CONFIG_NF_FLOW_TABLE is not set +CONFIG_NETFILTER_XTABLES=y +CONFIG_NETFILTER_XTABLES_COMPAT=y + +# +# Xtables combined modules +# +CONFIG_NETFILTER_XT_MARK=m +CONFIG_NETFILTER_XT_CONNMARK=m +CONFIG_NETFILTER_XT_SET=m + +# +# Xtables targets +# +CONFIG_NETFILTER_XT_TARGET_AUDIT=m +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=m +CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m +CONFIG_NETFILTER_XT_TARGET_CT=m +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_HMARK=m +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m +CONFIG_NETFILTER_XT_TARGET_LED=m +CONFIG_NETFILTER_XT_TARGET_LOG=m +CONFIG_NETFILTER_XT_TARGET_MARK=m +CONFIG_NETFILTER_XT_NAT=m +CONFIG_NETFILTER_XT_TARGET_NETMAP=m +CONFIG_NETFILTER_XT_TARGET_NFLOG=m +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +CONFIG_NETFILTER_XT_TARGET_NOTRACK=m +CONFIG_NETFILTER_XT_TARGET_RATEEST=m +CONFIG_NETFILTER_XT_TARGET_REDIRECT=m +CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m +CONFIG_NETFILTER_XT_TARGET_TEE=m +CONFIG_NETFILTER_XT_TARGET_TPROXY=m +CONFIG_NETFILTER_XT_TARGET_TRACE=m +CONFIG_NETFILTER_XT_TARGET_SECMARK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=m +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m + +# +# Xtables matches +# +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m +CONFIG_NETFILTER_XT_MATCH_BPF=m +CONFIG_NETFILTER_XT_MATCH_CGROUP=m +CONFIG_NETFILTER_XT_MATCH_CLUSTER=m +CONFIG_NETFILTER_XT_MATCH_COMMENT=m +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m +CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONNMARK=m +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m +CONFIG_NETFILTER_XT_MATCH_CPU=m +CONFIG_NETFILTER_XT_MATCH_DCCP=m +CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m +CONFIG_NETFILTER_XT_MATCH_DSCP=m +CONFIG_NETFILTER_XT_MATCH_ECN=m +CONFIG_NETFILTER_XT_MATCH_ESP=m +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_HELPER=m +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_NETFILTER_XT_MATCH_IPCOMP=m +CONFIG_NETFILTER_XT_MATCH_IPRANGE=m +CONFIG_NETFILTER_XT_MATCH_IPVS=m +CONFIG_NETFILTER_XT_MATCH_L2TP=m +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=m +CONFIG_NETFILTER_XT_MATCH_MAC=m +CONFIG_NETFILTER_XT_MATCH_MARK=m +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m +CONFIG_NETFILTER_XT_MATCH_NFACCT=m +CONFIG_NETFILTER_XT_MATCH_OSF=m +CONFIG_NETFILTER_XT_MATCH_OWNER=m +CONFIG_NETFILTER_XT_MATCH_POLICY=m +CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +CONFIG_NETFILTER_XT_MATCH_RATEEST=m +CONFIG_NETFILTER_XT_MATCH_REALM=m +CONFIG_NETFILTER_XT_MATCH_RECENT=m +CONFIG_NETFILTER_XT_MATCH_SCTP=m +CONFIG_NETFILTER_XT_MATCH_SOCKET=m +CONFIG_NETFILTER_XT_MATCH_STATE=m +CONFIG_NETFILTER_XT_MATCH_STATISTIC=m +CONFIG_NETFILTER_XT_MATCH_STRING=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=m +CONFIG_NETFILTER_XT_MATCH_TIME=m +CONFIG_NETFILTER_XT_MATCH_U32=m +# end of Core Netfilter Configuration + +CONFIG_IP_SET=m +CONFIG_IP_SET_MAX=256 +CONFIG_IP_SET_BITMAP_IP=m +CONFIG_IP_SET_BITMAP_IPMAC=m +CONFIG_IP_SET_BITMAP_PORT=m +CONFIG_IP_SET_HASH_IP=m +CONFIG_IP_SET_HASH_IPMARK=m +CONFIG_IP_SET_HASH_IPPORT=m +CONFIG_IP_SET_HASH_IPPORTIP=m +CONFIG_IP_SET_HASH_IPPORTNET=m +# CONFIG_IP_SET_HASH_IPMAC is not set +CONFIG_IP_SET_HASH_MAC=m +CONFIG_IP_SET_HASH_NETPORTNET=m +CONFIG_IP_SET_HASH_NET=m +CONFIG_IP_SET_HASH_NETNET=m +CONFIG_IP_SET_HASH_NETPORT=m +CONFIG_IP_SET_HASH_NETIFACE=m +CONFIG_IP_SET_LIST_SET=m +CONFIG_IP_VS=m +CONFIG_IP_VS_IPV6=y +# CONFIG_IP_VS_DEBUG is not set +CONFIG_IP_VS_TAB_BITS=12 + +# +# IPVS transport protocol load balancing support +# +CONFIG_IP_VS_PROTO_TCP=y +CONFIG_IP_VS_PROTO_UDP=y +CONFIG_IP_VS_PROTO_AH_ESP=y +CONFIG_IP_VS_PROTO_ESP=y +CONFIG_IP_VS_PROTO_AH=y +CONFIG_IP_VS_PROTO_SCTP=y + +# +# IPVS scheduler +# +CONFIG_IP_VS_RR=m +CONFIG_IP_VS_WRR=m +CONFIG_IP_VS_LC=m +CONFIG_IP_VS_WLC=m +CONFIG_IP_VS_FO=m +CONFIG_IP_VS_OVF=m +CONFIG_IP_VS_LBLC=m +CONFIG_IP_VS_LBLCR=m +CONFIG_IP_VS_DH=m +CONFIG_IP_VS_SH=m +# CONFIG_IP_VS_MH is not set +CONFIG_IP_VS_SED=m +CONFIG_IP_VS_NQ=m +# CONFIG_IP_VS_TWOS is not set + +# +# IPVS SH scheduler +# +CONFIG_IP_VS_SH_TAB_BITS=8 + +# +# IPVS MH scheduler +# +CONFIG_IP_VS_MH_TAB_INDEX=12 + +# +# IPVS application helper +# +CONFIG_IP_VS_FTP=m +CONFIG_IP_VS_NFCT=y +CONFIG_IP_VS_PE_SIP=m + +# +# IP: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV4=m +CONFIG_NF_SOCKET_IPV4=m +CONFIG_NF_TPROXY_IPV4=m +CONFIG_NF_TABLES_IPV4=y +CONFIG_NFT_REJECT_IPV4=m +CONFIG_NFT_DUP_IPV4=m +CONFIG_NFT_FIB_IPV4=m +CONFIG_NF_TABLES_ARP=y +CONFIG_NF_DUP_IPV4=m +CONFIG_NF_LOG_ARP=m +CONFIG_NF_LOG_IPV4=m +CONFIG_NF_REJECT_IPV4=m +CONFIG_NF_NAT_SNMP_BASIC=m +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_H323=m +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_MATCH_AH=m +CONFIG_IP_NF_MATCH_ECN=m +CONFIG_IP_NF_MATCH_RPFILTER=m +CONFIG_IP_NF_MATCH_TTL=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_TARGET_REJECT=m +CONFIG_IP_NF_TARGET_SYNPROXY=m +CONFIG_IP_NF_NAT=m +CONFIG_IP_NF_TARGET_MASQUERADE=m +CONFIG_IP_NF_TARGET_NETMAP=m +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_MANGLE=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_NF_RAW=m +CONFIG_IP_NF_SECURITY=m +CONFIG_IP_NF_ARPTABLES=m +CONFIG_IP_NF_ARPFILTER=m +CONFIG_IP_NF_ARP_MANGLE=m +# end of IP: Netfilter Configuration + +# +# IPv6: Netfilter Configuration +# +CONFIG_NF_SOCKET_IPV6=m +CONFIG_NF_TPROXY_IPV6=m +CONFIG_NF_TABLES_IPV6=y +CONFIG_NFT_REJECT_IPV6=m +CONFIG_NFT_DUP_IPV6=m +CONFIG_NFT_FIB_IPV6=m +CONFIG_NF_DUP_IPV6=m +CONFIG_NF_REJECT_IPV6=m +CONFIG_NF_LOG_IPV6=m +CONFIG_IP6_NF_IPTABLES=m +CONFIG_IP6_NF_MATCH_AH=m +CONFIG_IP6_NF_MATCH_EUI64=m +CONFIG_IP6_NF_MATCH_FRAG=m +CONFIG_IP6_NF_MATCH_OPTS=m +CONFIG_IP6_NF_MATCH_HL=m +CONFIG_IP6_NF_MATCH_IPV6HEADER=m +CONFIG_IP6_NF_MATCH_MH=m +CONFIG_IP6_NF_MATCH_RPFILTER=m +CONFIG_IP6_NF_MATCH_RT=m +# CONFIG_IP6_NF_MATCH_SRH is not set +# CONFIG_IP6_NF_TARGET_HL is not set +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_TARGET_SYNPROXY=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_RAW=m +CONFIG_IP6_NF_SECURITY=m +CONFIG_IP6_NF_NAT=m +CONFIG_IP6_NF_TARGET_MASQUERADE=m +CONFIG_IP6_NF_TARGET_NPT=m +# end of IPv6: Netfilter Configuration + +CONFIG_NF_DEFRAG_IPV6=m +CONFIG_NF_TABLES_BRIDGE=m +# CONFIG_NFT_BRIDGE_META is not set +CONFIG_NFT_BRIDGE_REJECT=m +# CONFIG_NF_CONNTRACK_BRIDGE is not set +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_T_FILTER=m +CONFIG_BRIDGE_EBT_T_NAT=m +CONFIG_BRIDGE_EBT_802_3=m +CONFIG_BRIDGE_EBT_AMONG=m +CONFIG_BRIDGE_EBT_ARP=m +CONFIG_BRIDGE_EBT_IP=m +CONFIG_BRIDGE_EBT_IP6=m +CONFIG_BRIDGE_EBT_LIMIT=m +CONFIG_BRIDGE_EBT_MARK=m +CONFIG_BRIDGE_EBT_PKTTYPE=m +CONFIG_BRIDGE_EBT_STP=m +CONFIG_BRIDGE_EBT_VLAN=m +CONFIG_BRIDGE_EBT_ARPREPLY=m +CONFIG_BRIDGE_EBT_DNAT=m +CONFIG_BRIDGE_EBT_MARK_T=m +CONFIG_BRIDGE_EBT_REDIRECT=m +CONFIG_BRIDGE_EBT_SNAT=m +CONFIG_BRIDGE_EBT_LOG=m +CONFIG_BRIDGE_EBT_NFLOG=m +# CONFIG_BPFILTER is not set +# CONFIG_IP_DCCP is not set +CONFIG_IP_SCTP=m +# CONFIG_SCTP_DBG_OBJCNT is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set +CONFIG_SCTP_COOKIE_HMAC_MD5=y +CONFIG_SCTP_COOKIE_HMAC_SHA1=y +CONFIG_INET_SCTP_DIAG=m +# CONFIG_RDS is not set +CONFIG_TIPC=m +CONFIG_TIPC_MEDIA_IB=y +CONFIG_TIPC_MEDIA_UDP=y +CONFIG_TIPC_CRYPTO=y +CONFIG_TIPC_DIAG=m +CONFIG_ATM=m +CONFIG_ATM_CLIP=m +# CONFIG_ATM_CLIP_NO_ICMP is not set +CONFIG_ATM_LANE=m +# CONFIG_ATM_MPOA is not set +CONFIG_ATM_BR2684=m +# CONFIG_ATM_BR2684_IPFILTER is not set +CONFIG_L2TP=m +CONFIG_L2TP_DEBUGFS=m +CONFIG_L2TP_V3=y +CONFIG_L2TP_IP=m +CONFIG_L2TP_ETH=m +CONFIG_STP=m +CONFIG_GARP=m +CONFIG_MRP=m +CONFIG_BRIDGE=m +CONFIG_BRIDGE_IGMP_SNOOPING=y +CONFIG_BRIDGE_VLAN_FILTERING=y +# CONFIG_BRIDGE_MRP is not set +# CONFIG_BRIDGE_CFM is not set +# CONFIG_NET_DSA is not set +CONFIG_VLAN_8021Q=m +CONFIG_VLAN_8021Q_GVRP=y +CONFIG_VLAN_8021Q_MVRP=y +CONFIG_LLC=m +# CONFIG_LLC2 is not set +# CONFIG_ATALK is not set +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +# CONFIG_PHONET is not set +CONFIG_6LOWPAN=m +# CONFIG_6LOWPAN_DEBUGFS is not set +# CONFIG_6LOWPAN_NHC is not set +CONFIG_IEEE802154=m +# CONFIG_IEEE802154_NL802154_EXPERIMENTAL is not set +CONFIG_IEEE802154_SOCKET=m +# CONFIG_IEEE802154_6LOWPAN is not set +CONFIG_MAC802154=m +CONFIG_NET_SCHED=y + +# +# Queueing/Scheduling +# +CONFIG_NET_SCH_HTB=m +CONFIG_NET_SCH_HFSC=m +CONFIG_NET_SCH_PRIO=m +CONFIG_NET_SCH_MULTIQ=m +CONFIG_NET_SCH_RED=m +CONFIG_NET_SCH_SFB=m +CONFIG_NET_SCH_SFQ=m +CONFIG_NET_SCH_TEQL=m +CONFIG_NET_SCH_TBF=m +# CONFIG_NET_SCH_CBS is not set +# CONFIG_NET_SCH_ETF is not set +CONFIG_NET_SCH_MQPRIO_LIB=m +# CONFIG_NET_SCH_TAPRIO is not set +CONFIG_NET_SCH_GRED=m +CONFIG_NET_SCH_NETEM=m +CONFIG_NET_SCH_DRR=m +CONFIG_NET_SCH_MQPRIO=m +# CONFIG_NET_SCH_SKBPRIO is not set +CONFIG_NET_SCH_CHOKE=m +CONFIG_NET_SCH_QFQ=m +CONFIG_NET_SCH_CODEL=m +CONFIG_NET_SCH_FQ_CODEL=y +# CONFIG_NET_SCH_CAKE is not set +CONFIG_NET_SCH_FQ=m +CONFIG_NET_SCH_HHF=m +CONFIG_NET_SCH_PIE=m +# CONFIG_NET_SCH_FQ_PIE is not set +CONFIG_NET_SCH_INGRESS=m +CONFIG_NET_SCH_PLUG=m +# CONFIG_NET_SCH_ETS is not set +CONFIG_NET_SCH_DEFAULT=y +# CONFIG_DEFAULT_FQ is not set +# CONFIG_DEFAULT_CODEL is not set +CONFIG_DEFAULT_FQ_CODEL=y +# CONFIG_DEFAULT_SFQ is not set +# CONFIG_DEFAULT_PFIFO_FAST is not set +CONFIG_DEFAULT_NET_SCH="fq_codel" + +# +# Classification +# +CONFIG_NET_CLS=y +CONFIG_NET_CLS_BASIC=m +CONFIG_NET_CLS_ROUTE4=m +CONFIG_NET_CLS_FW=m +CONFIG_NET_CLS_U32=m +CONFIG_CLS_U32_PERF=y +CONFIG_CLS_U32_MARK=y +CONFIG_NET_CLS_FLOW=m +CONFIG_NET_CLS_CGROUP=y +CONFIG_NET_CLS_BPF=m +CONFIG_NET_CLS_FLOWER=m +CONFIG_NET_CLS_MATCHALL=m +CONFIG_NET_EMATCH=y +CONFIG_NET_EMATCH_STACK=32 +CONFIG_NET_EMATCH_CMP=m +CONFIG_NET_EMATCH_NBYTE=m +CONFIG_NET_EMATCH_U32=m +CONFIG_NET_EMATCH_META=m +CONFIG_NET_EMATCH_TEXT=m +# CONFIG_NET_EMATCH_CANID is not set +CONFIG_NET_EMATCH_IPSET=m +# CONFIG_NET_EMATCH_IPT is not set +CONFIG_NET_CLS_ACT=y +CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_GACT=m +CONFIG_GACT_PROB=y +CONFIG_NET_ACT_MIRRED=m +CONFIG_NET_ACT_SAMPLE=m +# CONFIG_NET_ACT_IPT is not set +CONFIG_NET_ACT_NAT=m +CONFIG_NET_ACT_PEDIT=m +CONFIG_NET_ACT_SIMP=m +CONFIG_NET_ACT_SKBEDIT=m +CONFIG_NET_ACT_CSUM=m +# CONFIG_NET_ACT_MPLS is not set +CONFIG_NET_ACT_VLAN=m +CONFIG_NET_ACT_BPF=m +# CONFIG_NET_ACT_CONNMARK is not set +# CONFIG_NET_ACT_CTINFO is not set +CONFIG_NET_ACT_SKBMOD=m +# CONFIG_NET_ACT_IFE is not set +CONFIG_NET_ACT_TUNNEL_KEY=m +# CONFIG_NET_ACT_GATE is not set +# CONFIG_NET_TC_SKB_EXT is not set +CONFIG_NET_SCH_FIFO=y +CONFIG_DCB=y +CONFIG_DNS_RESOLVER=m +# CONFIG_BATMAN_ADV is not set +CONFIG_OPENVSWITCH=m +CONFIG_OPENVSWITCH_GRE=m +CONFIG_OPENVSWITCH_VXLAN=m +CONFIG_OPENVSWITCH_GENEVE=m +CONFIG_VSOCKETS=y +CONFIG_VSOCKETS_DIAG=y +CONFIG_VSOCKETS_LOOPBACK=y +CONFIG_VIRTIO_VSOCKETS=y +CONFIG_VIRTIO_VSOCKETS_COMMON=y +CONFIG_NETLINK_DIAG=m +CONFIG_MPLS=y +CONFIG_NET_MPLS_GSO=m +# CONFIG_MPLS_ROUTING is not set +CONFIG_NET_NSH=m +# CONFIG_HSR is not set +CONFIG_NET_SWITCHDEV=y +CONFIG_NET_L3_MASTER_DEV=y +# CONFIG_QRTR is not set +# CONFIG_NET_NCSI is not set +CONFIG_PCPU_DEV_REFCNT=y +CONFIG_MAX_SKB_FRAGS=17 +CONFIG_RPS=y +CONFIG_RFS_ACCEL=y +CONFIG_SOCK_RX_QUEUE_MAPPING=y +CONFIG_XPS=y +CONFIG_CGROUP_NET_PRIO=y +CONFIG_CGROUP_NET_CLASSID=y +CONFIG_NET_RX_BUSY_POLL=y +CONFIG_BQL=y +CONFIG_BPF_STREAM_PARSER=y +CONFIG_NET_FLOW_LIMIT=y + +# +# Network testing +# +CONFIG_NET_PKTGEN=m +CONFIG_NET_DROP_MONITOR=m +# end of Network testing +# end of Networking options + +# CONFIG_HAMRADIO is not set +CONFIG_CAN=m +CONFIG_CAN_RAW=m +CONFIG_CAN_BCM=m +CONFIG_CAN_GW=m +# CONFIG_CAN_J1939 is not set +# CONFIG_CAN_ISOTP is not set +# CONFIG_BT is not set +# CONFIG_AF_RXRPC is not set +# CONFIG_AF_KCM is not set +CONFIG_STREAM_PARSER=y +# CONFIG_MCTP is not set +CONFIG_FIB_RULES=y +CONFIG_WIRELESS=y +CONFIG_WEXT_CORE=y +CONFIG_WEXT_PROC=y +CONFIG_CFG80211=m +# CONFIG_NL80211_TESTMODE is not set +# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set +# CONFIG_CFG80211_CERTIFICATION_ONUS is not set +CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y +CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y +CONFIG_CFG80211_DEFAULT_PS=y +# CONFIG_CFG80211_DEBUGFS is not set +CONFIG_CFG80211_CRDA_SUPPORT=y +CONFIG_CFG80211_WEXT=y +CONFIG_MAC80211=m +CONFIG_MAC80211_HAS_RC=y +CONFIG_MAC80211_RC_MINSTREL=y +CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y +CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" +# CONFIG_MAC80211_MESH is not set +CONFIG_MAC80211_LEDS=y +CONFIG_MAC80211_DEBUGFS=y +# CONFIG_MAC80211_MESSAGE_TRACING is not set +# CONFIG_MAC80211_DEBUG_MENU is not set +CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 +CONFIG_RFKILL=m +CONFIG_RFKILL_LEDS=y +CONFIG_RFKILL_INPUT=y +CONFIG_RFKILL_GPIO=m +CONFIG_NET_9P=y +CONFIG_NET_9P_FD=y +CONFIG_NET_9P_VIRTIO=y +# CONFIG_NET_9P_RDMA is not set +# CONFIG_NET_9P_DEBUG is not set +# CONFIG_CAIF is not set +CONFIG_CEPH_LIB=m +# CONFIG_CEPH_LIB_PRETTYDEBUG is not set +CONFIG_CEPH_LIB_USE_DNS_RESOLVER=y +# CONFIG_NFC is not set +CONFIG_PSAMPLE=m +# CONFIG_NET_IFE is not set +CONFIG_LWTUNNEL=y +CONFIG_LWTUNNEL_BPF=y +CONFIG_DST_CACHE=y +CONFIG_GRO_CELLS=y +CONFIG_SOCK_VALIDATE_XMIT=y +CONFIG_NET_SELFTESTS=y +CONFIG_NET_SOCK_MSG=y +CONFIG_NET_DEVLINK=y +CONFIG_PAGE_POOL=y +CONFIG_PAGE_POOL_STATS=y +CONFIG_FAILOVER=y +CONFIG_ETHTOOL_NETLINK=y +CONFIG_NETACC_BPF=y +CONFIG_NETACC_TERRACE=y + +# +# Device Drivers +# +CONFIG_ARM_AMBA=y +CONFIG_HAVE_PCI=y +CONFIG_PCI=y +CONFIG_PCI_DOMAINS=y +CONFIG_PCI_DOMAINS_GENERIC=y +CONFIG_PCI_SYSCALL=y +CONFIG_PCIEPORTBUS=y +CONFIG_HOTPLUG_PCI_PCIE=y +CONFIG_PCIEAER=y +CONFIG_PCIEAER_INJECT=m +CONFIG_PCIEAER_CXL=y +CONFIG_PCIE_ECRC=y +CONFIG_PCIEASPM=y +CONFIG_PCIEASPM_DEFAULT=y +# CONFIG_PCIEASPM_POWERSAVE is not set +# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set +# CONFIG_PCIEASPM_PERFORMANCE is not set +CONFIG_PCIE_PME=y +CONFIG_PCIE_DPC=y +# CONFIG_PCIE_PTM is not set +CONFIG_PCIE_EDR=y +CONFIG_PCI_MSI=y +CONFIG_PCI_QUIRKS=y +# CONFIG_PCI_DEBUG is not set +# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set +CONFIG_PCI_STUB=y +# CONFIG_PCI_PF_STUB is not set +CONFIG_PCI_ATS=y +CONFIG_PCI_DOE=y +CONFIG_PCI_ECAM=y +CONFIG_PCI_IOV=y +CONFIG_PCI_PRI=y +CONFIG_PCI_PASID=y +CONFIG_PCI_P2PDMA=y +CONFIG_PCI_LABEL=y +# CONFIG_PCI_DYNAMIC_OF_NODES is not set +# CONFIG_PCIE_BUS_TUNE_OFF is not set +CONFIG_PCIE_BUS_DEFAULT=y +# CONFIG_PCIE_BUS_SAFE is not set +# CONFIG_PCIE_BUS_PERFORMANCE is not set +# CONFIG_PCIE_BUS_PEER2PEER is not set +CONFIG_VGA_ARB=y +CONFIG_VGA_ARB_MAX_GPUS=64 +CONFIG_HOTPLUG_PCI=y +CONFIG_HOTPLUG_PCI_ACPI=y +CONFIG_HOTPLUG_PCI_ACPI_IBM=m +# CONFIG_HOTPLUG_PCI_CPCI is not set +CONFIG_HOTPLUG_PCI_SHPC=y + +# +# PCI controller drivers +# +# CONFIG_PCIE_ALTERA is not set +CONFIG_PCI_HOST_THUNDER_PEM=y +CONFIG_PCI_HOST_THUNDER_ECAM=y +# CONFIG_PCI_FTPCI100 is not set +CONFIG_PCI_HOST_COMMON=y +CONFIG_PCI_HOST_GENERIC=y +# CONFIG_PCIE_HISI_ERR is not set +# CONFIG_PCIE_MICROCHIP_HOST is not set +CONFIG_PCI_XGENE=y +CONFIG_PCI_XGENE_MSI=y +# CONFIG_PCIE_XILINX is not set + +# +# Cadence-based PCIe controllers +# +# CONFIG_PCIE_CADENCE_PLAT_HOST is not set +# CONFIG_PCI_J721E_HOST is not set +# end of Cadence-based PCIe controllers + +# +# DesignWare-based PCIe controllers +# +CONFIG_PCIE_DW=y +CONFIG_PCIE_DW_HOST=y +# CONFIG_PCIE_AL is not set +# CONFIG_PCI_MESON is not set +CONFIG_PCI_HISI=y +# CONFIG_PCIE_KIRIN is not set +# CONFIG_PCIE_HISI_STB is not set +# CONFIG_PCIE_DW_PLAT_HOST is not set +# CONFIG_PCIE_QCOM is not set +# end of DesignWare-based PCIe controllers + +# +# Mobiveil-based PCIe controllers +# +# end of Mobiveil-based PCIe controllers +# end of PCI controller drivers + +# +# PCI Endpoint +# +# CONFIG_PCI_ENDPOINT is not set +# end of PCI Endpoint + +# +# PCI switch controller drivers +# +# CONFIG_PCI_SW_SWITCHTEC is not set +# end of PCI switch controller drivers + +CONFIG_CXL_BUS=y +CONFIG_CXL_PCI=m +# CONFIG_CXL_MEM_RAW_COMMANDS is not set +CONFIG_CXL_ACPI=m +CONFIG_CXL_PMEM=m +CONFIG_CXL_MEM=m +CONFIG_CXL_PORT=y +CONFIG_CXL_SUSPEND=y +CONFIG_CXL_REGION=y +# CONFIG_CXL_REGION_INVALIDATION_TEST is not set +CONFIG_CXL_PMU=m +# CONFIG_PCCARD is not set +# CONFIG_RAPIDIO is not set + +# +# Generic Driver Options +# +CONFIG_AUXILIARY_BUS=y +# CONFIG_UEVENT_HELPER is not set +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +# CONFIG_DEVTMPFS_SAFE is not set +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y + +# +# Firmware loader +# +CONFIG_FW_LOADER=y +CONFIG_FW_LOADER_DEBUG=y +CONFIG_FW_LOADER_PAGED_BUF=y +CONFIG_FW_LOADER_SYSFS=y +CONFIG_EXTRA_FIRMWARE="" +# CONFIG_FW_LOADER_USER_HELPER is not set +# CONFIG_FW_LOADER_COMPRESS is not set +CONFIG_FW_CACHE=y +CONFIG_FW_UPLOAD=y +# end of Firmware loader + +CONFIG_WANT_DEV_COREDUMP=y +# CONFIG_ALLOW_DEV_COREDUMP is not set +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_DEVRES is not set +# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set +CONFIG_HMEM_REPORTING=y +# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set +CONFIG_GENERIC_CPU_DEVICES=y +CONFIG_GENERIC_CPU_AUTOPROBE=y +CONFIG_GENERIC_CPU_VULNERABILITIES=y +CONFIG_SOC_BUS=y +CONFIG_REGMAP=y +CONFIG_REGMAP_I2C=m +CONFIG_REGMAP_SPI=m +CONFIG_REGMAP_MMIO=y +CONFIG_DMA_SHARED_BUFFER=y +# CONFIG_DMA_FENCE_TRACE is not set +CONFIG_GENERIC_ARCH_TOPOLOGY=y +CONFIG_GENERIC_ARCH_NUMA=y +# CONFIG_FW_DEVLINK_SYNC_STATE_TIMEOUT is not set +# end of Generic Driver Options + +# +# Bus devices +# +# CONFIG_BRCMSTB_GISB_ARB is not set +# CONFIG_MOXTET is not set +CONFIG_HISILICON_LPC=y +CONFIG_QCOM_EBI2=y +# CONFIG_QCOM_SSC_BLOCK_BUS is not set +CONFIG_VEXPRESS_CONFIG=y +# CONFIG_MHI_BUS is not set +# CONFIG_MHI_BUS_EP is not set +# end of Bus devices + +# +# Cache Drivers +# +# end of Cache Drivers + +CONFIG_CONNECTOR=y +CONFIG_PROC_EVENTS=y + +# +# Firmware Drivers +# + +# +# ARM System Control and Management Interface Protocol +# +# CONFIG_ARM_SCMI_PROTOCOL is not set +# end of ARM System Control and Management Interface Protocol + +CONFIG_ARM_SCPI_PROTOCOL=m +CONFIG_ARM_SCPI_POWER_DOMAIN=m +CONFIG_ARM_SDE_INTERFACE=y +# CONFIG_FIRMWARE_MEMMAP is not set +CONFIG_DMIID=y +CONFIG_DMI_SYSFS=y +# CONFIG_ISCSI_IBFT is not set +CONFIG_FW_CFG_SYSFS=y +# CONFIG_FW_CFG_SYSFS_CMDLINE is not set +CONFIG_QCOM_SCM=y +# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set +CONFIG_SYSFB=y +# CONFIG_SYSFB_SIMPLEFB is not set +# CONFIG_ARM_FFA_TRANSPORT is not set +# CONFIG_GOOGLE_FIRMWARE is not set + +# +# EFI (Extensible Firmware Interface) Support +# +CONFIG_EFI_ESRT=y +CONFIG_EFI_VARS_PSTORE=y +CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE=y +CONFIG_EFI_SOFT_RESERVE=y +CONFIG_EFI_PARAMS_FROM_FDT=y +CONFIG_EFI_RUNTIME_WRAPPERS=y +CONFIG_EFI_GENERIC_STUB=y +# CONFIG_EFI_ZBOOT is not set +CONFIG_EFI_ARMSTUB_DTB_LOADER=y +# CONFIG_EFI_BOOTLOADER_CONTROL is not set +# CONFIG_EFI_CAPSULE_LOADER is not set +# CONFIG_EFI_TEST is not set +# CONFIG_RESET_ATTACK_MITIGATION is not set +# CONFIG_EFI_DISABLE_PCI_DMA is not set +CONFIG_EFI_EARLYCON=y +CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y +# CONFIG_EFI_DISABLE_RUNTIME is not set +# CONFIG_EFI_COCO_SECRET is not set +# end of EFI (Extensible Firmware Interface) Support + +CONFIG_UEFI_CPER=y +CONFIG_UEFI_CPER_ARM=y +CONFIG_ARM_PSCI_FW=y +# CONFIG_ARM_PSCI_CHECKER is not set +CONFIG_HAVE_ARM_SMCCC=y +CONFIG_HAVE_ARM_SMCCC_DISCOVERY=y +CONFIG_ARM_SMCCC_SOC_ID=y + +# +# Tegra firmware driver +# +# end of Tegra firmware driver +# end of Firmware Drivers + +# CONFIG_GNSS is not set +CONFIG_MTD=m +# CONFIG_MTD_TESTS is not set + +# +# Partition parsers +# +# CONFIG_MTD_AR7_PARTS is not set +CONFIG_MTD_CMDLINE_PARTS=m +CONFIG_MTD_OF_PARTS=m +# CONFIG_MTD_AFS_PARTS is not set +# CONFIG_MTD_REDBOOT_PARTS is not set +# end of Partition parsers + +# +# User Modules And Translation Layers +# +CONFIG_MTD_BLKDEVS=m +CONFIG_MTD_BLOCK=m +# CONFIG_MTD_BLOCK_RO is not set + +# +# Note that in some cases UBI block is preferred. See MTD_UBI_BLOCK. +# +# CONFIG_FTL is not set +# CONFIG_NFTL is not set +# CONFIG_INFTL is not set +# CONFIG_RFD_FTL is not set +# CONFIG_SSFDC is not set +# CONFIG_SM_FTL is not set +# CONFIG_MTD_OOPS is not set +# CONFIG_MTD_SWAP is not set +# CONFIG_MTD_PARTITIONED_MASTER is not set + +# +# RAM/ROM/Flash chip drivers +# +CONFIG_MTD_CFI=m +# CONFIG_MTD_JEDECPROBE is not set +CONFIG_MTD_GEN_PROBE=m +CONFIG_MTD_CFI_ADV_OPTIONS=y +CONFIG_MTD_CFI_NOSWAP=y +# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set +# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set +CONFIG_MTD_CFI_GEOMETRY=y +CONFIG_MTD_MAP_BANK_WIDTH_1=y +CONFIG_MTD_MAP_BANK_WIDTH_2=y +CONFIG_MTD_MAP_BANK_WIDTH_4=y +CONFIG_MTD_MAP_BANK_WIDTH_8=y +# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set +CONFIG_MTD_CFI_I1=y +CONFIG_MTD_CFI_I2=y +# CONFIG_MTD_CFI_I4 is not set +# CONFIG_MTD_CFI_I8 is not set +# CONFIG_MTD_OTP is not set +CONFIG_MTD_CFI_INTELEXT=m +CONFIG_MTD_CFI_AMDSTD=m +CONFIG_MTD_CFI_STAA=m +CONFIG_MTD_CFI_UTIL=m +# CONFIG_MTD_RAM is not set +# CONFIG_MTD_ROM is not set +# CONFIG_MTD_ABSENT is not set +# end of RAM/ROM/Flash chip drivers + +# +# Mapping drivers for chip access +# +# CONFIG_MTD_COMPLEX_MAPPINGS is not set +CONFIG_MTD_PHYSMAP=m +# CONFIG_MTD_PHYSMAP_COMPAT is not set +CONFIG_MTD_PHYSMAP_OF=y +# CONFIG_MTD_PHYSMAP_VERSATILE is not set +# CONFIG_MTD_PHYSMAP_GEMINI is not set +# CONFIG_MTD_INTEL_VR_NOR is not set +# CONFIG_MTD_PLATRAM is not set +# end of Mapping drivers for chip access + +# +# Self-contained MTD device drivers +# +# CONFIG_MTD_PMC551 is not set +# CONFIG_MTD_DATAFLASH is not set +# CONFIG_MTD_MCHP23K256 is not set +# CONFIG_MTD_MCHP48L640 is not set +# CONFIG_MTD_SST25L is not set +# CONFIG_MTD_SLRAM is not set +# CONFIG_MTD_PHRAM is not set +# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_BLOCK2MTD=m + +# +# Disk-On-Chip Device Drivers +# +# CONFIG_MTD_DOCG3 is not set +# end of Self-contained MTD device drivers + +# +# NAND +# +# CONFIG_MTD_ONENAND is not set +# CONFIG_MTD_RAW_NAND is not set +# CONFIG_MTD_SPI_NAND is not set + +# +# ECC engine support +# +# CONFIG_MTD_NAND_ECC_SW_HAMMING is not set +# CONFIG_MTD_NAND_ECC_SW_BCH is not set +# CONFIG_MTD_NAND_ECC_MXIC is not set +# end of ECC engine support +# end of NAND + +# +# LPDDR & LPDDR2 PCM memory drivers +# +# CONFIG_MTD_LPDDR is not set +# end of LPDDR & LPDDR2 PCM memory drivers + +CONFIG_MTD_SPI_NOR=m +CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y +# CONFIG_MTD_SPI_NOR_SWP_DISABLE is not set +CONFIG_MTD_SPI_NOR_SWP_DISABLE_ON_VOLATILE=y +# CONFIG_MTD_SPI_NOR_SWP_KEEP is not set +CONFIG_SPI_HISI_SFC=m +CONFIG_MTD_UBI=m +CONFIG_MTD_UBI_WL_THRESHOLD=4096 +CONFIG_MTD_UBI_BEB_LIMIT=20 +# CONFIG_MTD_UBI_FASTMAP is not set +CONFIG_MTD_UBI_GLUEBI=m +# CONFIG_MTD_UBI_BLOCK is not set +# CONFIG_MTD_HYPERBUS is not set +CONFIG_DTC=y +CONFIG_OF=y +# CONFIG_OF_UNITTEST is not set +CONFIG_OF_FLATTREE=y +CONFIG_OF_EARLY_FLATTREE=y +CONFIG_OF_KOBJ=y +CONFIG_OF_DYNAMIC=y +CONFIG_OF_ADDRESS=y +CONFIG_OF_IRQ=y +CONFIG_OF_RESERVED_MEM=y +CONFIG_OF_RESOLVE=y +CONFIG_OF_OVERLAY=y +CONFIG_OF_NUMA=y +# CONFIG_PARPORT is not set +CONFIG_PNP=y +CONFIG_PNP_DEBUG_MESSAGES=y + +# +# Protocols +# +CONFIG_PNPACPI=y +CONFIG_BLK_DEV=y +CONFIG_BLK_DEV_NULL_BLK=m +CONFIG_CDROM=m +# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set +CONFIG_ZRAM=m +CONFIG_ZRAM_DEF_COMP_LZORLE=y +# CONFIG_ZRAM_DEF_COMP_ZSTD is not set +# CONFIG_ZRAM_DEF_COMP_LZ4 is not set +# CONFIG_ZRAM_DEF_COMP_LZO is not set +# CONFIG_ZRAM_DEF_COMP_LZ4HC is not set +CONFIG_ZRAM_DEF_COMP="lzo-rle" +CONFIG_ZRAM_WRITEBACK=y +# CONFIG_ZRAM_MEMORY_TRACKING is not set +CONFIG_ZRAM_MULTI_COMP=y +CONFIG_BLK_DEV_LOOP=m +CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 +CONFIG_BLK_DEV_DRBD=m +# CONFIG_DRBD_FAULT_INJECTION is not set +CONFIG_BLK_DEV_NBD=m +CONFIG_BLK_DEV_RAM=m +CONFIG_BLK_DEV_RAM_COUNT=16 +CONFIG_BLK_DEV_RAM_SIZE=16384 +CONFIG_CDROM_PKTCDVD=m +CONFIG_CDROM_PKTCDVD_BUFFERS=8 +# CONFIG_CDROM_PKTCDVD_WCACHE is not set +CONFIG_ATA_OVER_ETH=m +CONFIG_VIRTIO_BLK=y +CONFIG_BLK_DEV_RBD=m +# CONFIG_BLK_DEV_UBLK is not set + +# +# NVME Support +# +CONFIG_NVME_CORE=m +CONFIG_BLK_DEV_NVME=m +CONFIG_NVME_MULTIPATH=y +# CONFIG_NVME_VERBOSE_ERRORS is not set +# CONFIG_NVME_HWMON is not set +CONFIG_NVME_FABRICS=m +CONFIG_NVME_RDMA=m +CONFIG_NVME_FC=m +CONFIG_NVME_TCP=m +# CONFIG_NVME_AUTH is not set +CONFIG_NVME_TARGET=m +# CONFIG_NVME_TARGET_PASSTHRU is not set +CONFIG_NVME_TARGET_LOOP=m +CONFIG_NVME_TARGET_RDMA=m +CONFIG_NVME_TARGET_FC=m +CONFIG_NVME_TARGET_FCLOOP=m +CONFIG_NVME_TARGET_TCP=m +# CONFIG_NVME_TARGET_AUTH is not set +# end of NVME Support + +# +# Misc devices +# +CONFIG_SENSORS_LIS3LV02D=m +# CONFIG_AD525X_DPOT is not set +# CONFIG_DUMMY_IRQ is not set +# CONFIG_PHANTOM is not set +CONFIG_TIFM_CORE=m +CONFIG_TIFM_7XX1=m +# CONFIG_ICS932S401 is not set +CONFIG_ENCLOSURE_SERVICES=m +# CONFIG_HP_ILO is not set +CONFIG_APDS9802ALS=m +CONFIG_ISL29003=m +CONFIG_ISL29020=m +CONFIG_SENSORS_TSL2550=m +CONFIG_SENSORS_BH1770=m +CONFIG_SENSORS_APDS990X=m +# CONFIG_HMC6352 is not set +# CONFIG_DS1682 is not set +# CONFIG_LATTICE_ECP3_CONFIG is not set +# CONFIG_SRAM is not set +# CONFIG_DW_XDATA_PCIE is not set +# CONFIG_PCI_ENDPOINT_TEST is not set +# CONFIG_XILINX_SDFEC is not set +CONFIG_MISC_RTSX=m +# CONFIG_HISI_HIKEY_USB is not set +CONFIG_VIRT_PLAT_DEV=y +# CONFIG_OPEN_DICE is not set +# CONFIG_VCPU_STALL_DETECTOR is not set +# CONFIG_C2PORT is not set + +# +# EEPROM support +# +# CONFIG_EEPROM_AT24 is not set +# CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_LEGACY=m +CONFIG_EEPROM_MAX6875=m +CONFIG_EEPROM_93CX6=m +# CONFIG_EEPROM_93XX46 is not set +# CONFIG_EEPROM_IDT_89HPESX is not set +# CONFIG_EEPROM_EE1004 is not set +# end of EEPROM support + +CONFIG_CB710_CORE=m +# CONFIG_CB710_DEBUG is not set +CONFIG_CB710_DEBUG_ASSUMPTIONS=y + +# +# Texas Instruments shared transport line discipline +# +# CONFIG_TI_ST is not set +# end of Texas Instruments shared transport line discipline + +CONFIG_SENSORS_LIS3_I2C=m +CONFIG_ALTERA_STAPL=m +# CONFIG_VMWARE_VMCI is not set +# CONFIG_GENWQE is not set +# CONFIG_ECHO is not set +# CONFIG_BCM_VK is not set +# CONFIG_MISC_ALCOR_PCI is not set +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m +CONFIG_UACCE=m +CONFIG_PVPANIC=y +CONFIG_PVPANIC_MMIO=m +# CONFIG_PVPANIC_PCI is not set +# CONFIG_GP_PCI1XXXX is not set +# end of Misc devices + +# +# SCSI device support +# +CONFIG_SCSI_MOD=y +CONFIG_RAID_ATTRS=m +CONFIG_SCSI_COMMON=y +CONFIG_SCSI=y +CONFIG_SCSI_DMA=y +CONFIG_SCSI_NETLINK=y +CONFIG_SCSI_PROC_FS=y + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=m +CONFIG_CHR_DEV_ST=m +CONFIG_BLK_DEV_SR=m +CONFIG_CHR_DEV_SG=m +CONFIG_BLK_DEV_BSG=y +CONFIG_CHR_DEV_SCH=m +CONFIG_SCSI_ENCLOSURE=m +CONFIG_SCSI_CONSTANTS=y +CONFIG_SCSI_LOGGING=y +CONFIG_SCSI_SCAN_ASYNC=y + +# +# SCSI Transports +# +CONFIG_SCSI_SPI_ATTRS=m +CONFIG_SCSI_FC_ATTRS=m +CONFIG_SCSI_ISCSI_ATTRS=m +CONFIG_SCSI_SAS_ATTRS=m +CONFIG_SCSI_SAS_LIBSAS=m +CONFIG_SCSI_SAS_ATA=y +CONFIG_SCSI_SAS_HOST_SMP=y +CONFIG_SCSI_SRP_ATTRS=m +# end of SCSI Transports + +CONFIG_SCSI_LOWLEVEL=y +CONFIG_ISCSI_TCP=m +CONFIG_ISCSI_BOOT_SYSFS=m +# CONFIG_SCSI_CXGB3_ISCSI is not set +CONFIG_SCSI_CXGB4_ISCSI=m +CONFIG_SCSI_BNX2_ISCSI=m +CONFIG_SCSI_BNX2X_FCOE=m +CONFIG_BE2ISCSI=m +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set +CONFIG_SCSI_HPSA=m +# CONFIG_SCSI_3W_9XXX is not set +# CONFIG_SCSI_3W_SAS is not set +# CONFIG_SCSI_ACARD is not set +CONFIG_SCSI_AACRAID=m +# CONFIG_SCSI_AIC7XXX is not set +# CONFIG_SCSI_AIC79XX is not set +# CONFIG_SCSI_AIC94XX is not set +CONFIG_SCSI_HISI_SAS=m +CONFIG_SCSI_HISI_SAS_PCI=m +CONFIG_SCSI_HISI_SAS_DEBUGFS_DEFAULT_ENABLE=y +# CONFIG_SCSI_MVSAS is not set +# CONFIG_SCSI_MVUMI is not set +# CONFIG_SCSI_ADVANSYS is not set +# CONFIG_SCSI_ARCMSR is not set +# CONFIG_SCSI_ESAS2R is not set +# CONFIG_MEGARAID_NEWGEN is not set +# CONFIG_MEGARAID_LEGACY is not set +CONFIG_MEGARAID_SAS=m +CONFIG_SCSI_MPT3SAS=m +CONFIG_SCSI_MPT2SAS_MAX_SGE=128 +CONFIG_SCSI_MPT3SAS_MAX_SGE=128 +CONFIG_SCSI_MPT2SAS=m +# CONFIG_SCSI_MPI3MR is not set +CONFIG_SCSI_3SNIC_SSSRAID=m +CONFIG_SCSI_SMARTPQI=m +CONFIG_SCSI_HISI_RAID=m +# CONFIG_SCSI_HPTIOP is not set +# CONFIG_SCSI_BUSLOGIC is not set +# CONFIG_SCSI_MYRB is not set +# CONFIG_SCSI_MYRS is not set +CONFIG_LIBFC=m +CONFIG_LIBFCOE=m +CONFIG_FCOE=m +# CONFIG_SCSI_SNIC is not set +# CONFIG_SCSI_DMX3191D is not set +# CONFIG_SCSI_FDOMAIN_PCI is not set +# CONFIG_SCSI_IPS is not set +# CONFIG_SCSI_INITIO is not set +# CONFIG_SCSI_INIA100 is not set +# CONFIG_SCSI_STEX is not set +# CONFIG_SCSI_SYM53C8XX_2 is not set +CONFIG_SCSI_IPR=m +CONFIG_SCSI_IPR_TRACE=y +CONFIG_SCSI_IPR_DUMP=y +# CONFIG_SCSI_QLOGIC_1280 is not set +CONFIG_SCSI_QLA_FC=m +# CONFIG_TCM_QLA2XXX is not set +CONFIG_SCSI_QLA_ISCSI=m +CONFIG_QEDI=m +CONFIG_QEDF=m +CONFIG_SCSI_LPFC=m +# CONFIG_SCSI_LPFC_DEBUG_FS is not set +# CONFIG_SCSI_EFCT is not set +# CONFIG_SCSI_DC395x is not set +# CONFIG_SCSI_AM53C974 is not set +# CONFIG_SCSI_WD719X is not set +CONFIG_SCSI_DEBUG=m +# CONFIG_SCSI_PMCRAID is not set +# CONFIG_SCSI_PM8001 is not set +# CONFIG_SCSI_BFA_FC is not set +CONFIG_SCSI_VIRTIO=y +CONFIG_SCSI_CHELSIO_FCOE=m +CONFIG_SCSI_DH=y +CONFIG_SCSI_DH_RDAC=y +CONFIG_SCSI_DH_HP_SW=y +CONFIG_SCSI_DH_EMC=y +CONFIG_SCSI_DH_ALUA=y +# end of SCSI device support + +CONFIG_ATA=m +CONFIG_SATA_HOST=y +CONFIG_PATA_TIMINGS=y +CONFIG_ATA_VERBOSE_ERROR=y +CONFIG_ATA_FORCE=y +CONFIG_ATA_ACPI=y +# CONFIG_SATA_ZPODD is not set +CONFIG_SATA_PMP=y + +# +# Controllers with non-SFF native interface +# +CONFIG_SATA_AHCI=m +CONFIG_SATA_MOBILE_LPM_POLICY=0 +CONFIG_SATA_AHCI_PLATFORM=m +# CONFIG_AHCI_DWC is not set +# CONFIG_AHCI_CEVA is not set +CONFIG_AHCI_XGENE=m +CONFIG_SATA_AHCI_SEATTLE=m +# CONFIG_SATA_INIC162X is not set +# CONFIG_SATA_ACARD_AHCI is not set +# CONFIG_SATA_SIL24 is not set +CONFIG_ATA_SFF=y + +# +# SFF controllers with custom DMA interface +# +# CONFIG_PDC_ADMA is not set +# CONFIG_SATA_QSTOR is not set +# CONFIG_SATA_SX4 is not set +CONFIG_ATA_BMDMA=y + +# +# SATA SFF controllers with BMDMA +# +CONFIG_ATA_PIIX=m +# CONFIG_SATA_DWC is not set +# CONFIG_SATA_MV is not set +# CONFIG_SATA_NV is not set +# CONFIG_SATA_PROMISE is not set +# CONFIG_SATA_SIL is not set +# CONFIG_SATA_SIS is not set +# CONFIG_SATA_SVW is not set +# CONFIG_SATA_ULI is not set +# CONFIG_SATA_VIA is not set +# CONFIG_SATA_VITESSE is not set +# CONFIG_SATA_ZHAOXIN is not set + +# +# PATA SFF controllers with BMDMA +# +# CONFIG_PATA_ALI is not set +# CONFIG_PATA_AMD is not set +# CONFIG_PATA_ARTOP is not set +# CONFIG_PATA_ATIIXP is not set +# CONFIG_PATA_ATP867X is not set +# CONFIG_PATA_CMD64X is not set +# CONFIG_PATA_CYPRESS is not set +# CONFIG_PATA_EFAR is not set +# CONFIG_PATA_HPT366 is not set +# CONFIG_PATA_HPT37X is not set +# CONFIG_PATA_HPT3X2N is not set +# CONFIG_PATA_HPT3X3 is not set +# CONFIG_PATA_IT8213 is not set +# CONFIG_PATA_IT821X is not set +# CONFIG_PATA_JMICRON is not set +# CONFIG_PATA_MARVELL is not set +# CONFIG_PATA_NETCELL is not set +# CONFIG_PATA_NINJA32 is not set +# CONFIG_PATA_NS87415 is not set +# CONFIG_PATA_OLDPIIX is not set +# CONFIG_PATA_OPTIDMA is not set +# CONFIG_PATA_PDC2027X is not set +# CONFIG_PATA_PDC_OLD is not set +# CONFIG_PATA_RADISYS is not set +# CONFIG_PATA_RDC is not set +# CONFIG_PATA_SCH is not set +# CONFIG_PATA_SERVERWORKS is not set +# CONFIG_PATA_SIL680 is not set +# CONFIG_PATA_SIS is not set +# CONFIG_PATA_TOSHIBA is not set +# CONFIG_PATA_TRIFLEX is not set +# CONFIG_PATA_VIA is not set +# CONFIG_PATA_WINBOND is not set + +# +# PIO-only SFF controllers +# +# CONFIG_PATA_CMD640_PCI is not set +# CONFIG_PATA_MPIIX is not set +# CONFIG_PATA_NS87410 is not set +# CONFIG_PATA_OPTI is not set +# CONFIG_PATA_OF_PLATFORM is not set +# CONFIG_PATA_RZ1000 is not set + +# +# Generic fallback / legacy drivers +# +# CONFIG_PATA_ACPI is not set +CONFIG_ATA_GENERIC=m +# CONFIG_PATA_LEGACY is not set +CONFIG_MD=y +CONFIG_BLK_DEV_MD=y +CONFIG_MD_AUTODETECT=y +CONFIG_MD_BITMAP_FILE=y +CONFIG_MD_LINEAR=m +CONFIG_MD_RAID0=m +CONFIG_MD_RAID1=m +CONFIG_MD_RAID10=m +CONFIG_MD_RAID456=m +CONFIG_MD_MULTIPATH=m +CONFIG_MD_FAULTY=m +# CONFIG_MD_CLUSTER is not set +CONFIG_BCACHE=m +# CONFIG_BCACHE_DEBUG is not set +# CONFIG_BCACHE_CLOSURES_DEBUG is not set +# CONFIG_BCACHE_ASYNC_REGISTRATION is not set +CONFIG_BLK_DEV_DM_BUILTIN=y +CONFIG_BLK_DEV_DM=m +CONFIG_DM_DEBUG=y +CONFIG_DM_BUFIO=m +# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set +CONFIG_DM_BIO_PRISON=m +CONFIG_DM_PERSISTENT_DATA=m +# CONFIG_DM_UNSTRIPED is not set +CONFIG_DM_CRYPT=m +CONFIG_DM_SNAPSHOT=m +CONFIG_DM_THIN_PROVISIONING=m +CONFIG_DM_CACHE=m +CONFIG_DM_CACHE_SMQ=m +# CONFIG_DM_WRITECACHE is not set +# CONFIG_DM_EBS is not set +CONFIG_DM_ERA=m +# CONFIG_DM_CLONE is not set +CONFIG_DM_MIRROR=m +CONFIG_DM_LOG_USERSPACE=m +CONFIG_DM_RAID=m +CONFIG_DM_ZERO=m +CONFIG_DM_MULTIPATH=m +CONFIG_DM_MULTIPATH_QL=m +CONFIG_DM_MULTIPATH_ST=m +# CONFIG_DM_MULTIPATH_HST is not set +# CONFIG_DM_MULTIPATH_IOA is not set +CONFIG_DM_DELAY=m +# CONFIG_DM_DUST is not set +CONFIG_DM_UEVENT=y +CONFIG_DM_FLAKEY=m +CONFIG_DM_VERITY=m +# CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG is not set +# CONFIG_DM_VERITY_FEC is not set +CONFIG_DM_SWITCH=m +CONFIG_DM_LOG_WRITES=m +CONFIG_DM_INTEGRITY=m +# CONFIG_DM_ZONED is not set +CONFIG_DM_AUDIT=y +CONFIG_TARGET_CORE=m +CONFIG_TCM_IBLOCK=m +CONFIG_TCM_FILEIO=m +CONFIG_TCM_PSCSI=m +CONFIG_TCM_USER2=m +CONFIG_LOOPBACK_TARGET=m +CONFIG_TCM_FC=m +CONFIG_ISCSI_TARGET=m +CONFIG_ISCSI_TARGET_CXGB4=m +# CONFIG_REMOTE_TARGET is not set +# CONFIG_FUSION is not set + +# +# IEEE 1394 (FireWire) support +# +# CONFIG_FIREWIRE is not set +# CONFIG_FIREWIRE_NOSY is not set +# end of IEEE 1394 (FireWire) support + +CONFIG_NETDEVICES=y +CONFIG_MII=m +CONFIG_NET_CORE=y +CONFIG_BONDING=m +CONFIG_DUMMY=m +# CONFIG_WIREGUARD is not set +# CONFIG_EQUALIZER is not set +CONFIG_NET_FC=y +CONFIG_IFB=m +CONFIG_NET_TEAM=m +CONFIG_NET_TEAM_MODE_BROADCAST=m +CONFIG_NET_TEAM_MODE_ROUNDROBIN=m +CONFIG_NET_TEAM_MODE_RANDOM=m +CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m +CONFIG_NET_TEAM_MODE_LOADBALANCE=m +CONFIG_MACVLAN=m +CONFIG_MACVTAP=m +CONFIG_IPVLAN_L2E=y +CONFIG_IPVLAN_L3S=y +CONFIG_IPVLAN=m +CONFIG_IPVTAP=m +CONFIG_VXLAN=m +CONFIG_GENEVE=m +# CONFIG_BAREUDP is not set +# CONFIG_GTP is not set +# CONFIG_AMT is not set +CONFIG_MACSEC=m +CONFIG_NETCONSOLE=m +CONFIG_NETCONSOLE_DYNAMIC=y +# CONFIG_NETCONSOLE_EXTENDED_LOG is not set +CONFIG_NETPOLL=y +CONFIG_NET_POLL_CONTROLLER=y +CONFIG_TUN=m +CONFIG_TAP=m +# CONFIG_TUN_VNET_CROSS_LE is not set +CONFIG_VETH=m +CONFIG_VIRTIO_NET=y +CONFIG_NLMON=m +CONFIG_NET_VRF=m +CONFIG_VSOCKMON=y +# CONFIG_ARCNET is not set +# CONFIG_ATM_DRIVERS is not set +CONFIG_ETHERNET=y +CONFIG_MDIO=m +# CONFIG_NET_VENDOR_3COM is not set +CONFIG_NET_VENDOR_3SNIC=y +CONFIG_SSSNIC=m +# CONFIG_NET_VENDOR_ADAPTEC is not set +# CONFIG_NET_VENDOR_AGERE is not set +CONFIG_NET_VENDOR_ALACRITECH=y +# CONFIG_SLICOSS is not set +# CONFIG_NET_VENDOR_ALTEON is not set +# CONFIG_ALTERA_TSE is not set +CONFIG_NET_VENDOR_AMAZON=y +CONFIG_ENA_ETHERNET=m +CONFIG_NET_VENDOR_AMD=y +# CONFIG_AMD8111_ETH is not set +# CONFIG_PCNET32 is not set +CONFIG_AMD_XGBE=m +# CONFIG_AMD_XGBE_DCB is not set +# CONFIG_PDS_CORE is not set +CONFIG_NET_XGENE=y +CONFIG_NET_XGENE_V2=m +CONFIG_NET_VENDOR_AQUANTIA=y +# CONFIG_AQTION is not set +CONFIG_NET_VENDOR_ARC=y +CONFIG_NET_VENDOR_ASIX=y +# CONFIG_SPI_AX88796C is not set +CONFIG_NET_VENDOR_ATHEROS=y +# CONFIG_ATL2 is not set +CONFIG_ATL1=m +CONFIG_ATL1E=m +CONFIG_ATL1C=m +CONFIG_ALX=m +CONFIG_NET_VENDOR_BROADCOM=y +# CONFIG_B44 is not set +# CONFIG_BCMGENET is not set +CONFIG_BNX2=m +CONFIG_CNIC=m +CONFIG_TIGON3=m +CONFIG_TIGON3_HWMON=y +CONFIG_BNX2X=m +CONFIG_BNX2X_SRIOV=y +# CONFIG_SYSTEMPORT is not set +CONFIG_BNXT=m +CONFIG_BNXT_SRIOV=y +CONFIG_BNXT_FLOWER_OFFLOAD=y +CONFIG_BNXT_DCB=y +# CONFIG_BNXT_HWMON is not set +# CONFIG_NET_VENDOR_CADENCE is not set +CONFIG_NET_VENDOR_CAVIUM=y +CONFIG_THUNDER_NIC_PF=m +CONFIG_THUNDER_NIC_VF=m +CONFIG_THUNDER_NIC_BGX=m +CONFIG_THUNDER_NIC_RGX=m +CONFIG_CAVIUM_PTP=y +CONFIG_LIQUIDIO_CORE=m +CONFIG_LIQUIDIO=m +CONFIG_LIQUIDIO_VF=m +CONFIG_NET_VENDOR_CHELSIO=y +# CONFIG_CHELSIO_T1 is not set +# CONFIG_CHELSIO_T3 is not set +CONFIG_CHELSIO_T4=m +# CONFIG_CHELSIO_T4_DCB is not set +CONFIG_CHELSIO_T4VF=m +CONFIG_CHELSIO_LIB=m +CONFIG_CHELSIO_INLINE_CRYPTO=y +CONFIG_CHELSIO_IPSEC_INLINE=m +CONFIG_CHELSIO_TLS_DEVICE=m +# CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_CORTINA is not set +CONFIG_NET_VENDOR_DAVICOM=y +# CONFIG_DM9051 is not set +CONFIG_DNET=m +# CONFIG_NET_VENDOR_DEC is not set +# CONFIG_NET_VENDOR_DLINK is not set +# CONFIG_NET_VENDOR_EMULEX is not set +CONFIG_NET_VENDOR_ENGLEDER=y +# CONFIG_TSNEP is not set +# CONFIG_NET_VENDOR_EZCHIP is not set +CONFIG_NET_VENDOR_FUNGIBLE=y +# CONFIG_FUN_ETH is not set +CONFIG_NET_VENDOR_GOOGLE=y +# CONFIG_GVE is not set +CONFIG_NET_VENDOR_HISILICON=y +# CONFIG_HIX5HD2_GMAC is not set +# CONFIG_HISI_FEMAC is not set +# CONFIG_HIP04_ETH is not set +CONFIG_HNS_MDIO=m +CONFIG_HNS=m +CONFIG_HNS_DSAF=m +CONFIG_HNS_ENET=m +CONFIG_HNS3=m +CONFIG_HNS3_HCLGE=m +CONFIG_HNS3_DCB=y +CONFIG_HNS3_HCLGEVF=m +CONFIG_HNS3_ENET=m +CONFIG_NET_VENDOR_HUAWEI=y +CONFIG_HINIC=m +CONFIG_HINIC3=m +CONFIG_BMA=m +# CONFIG_NET_VENDOR_I825XX is not set +CONFIG_NET_VENDOR_INTEL=y +# CONFIG_E100 is not set +CONFIG_E1000=m +CONFIG_E1000E=m +CONFIG_IGB=m +CONFIG_IGB_HWMON=y +CONFIG_IGBVF=m +CONFIG_IXGBE=m +CONFIG_IXGBE_HWMON=y +CONFIG_IXGBE_DCB=y +CONFIG_IXGBE_IPSEC=y +CONFIG_IXGBEVF=m +CONFIG_IXGBEVF_IPSEC=y +CONFIG_I40E=m +# CONFIG_I40E_DCB is not set +CONFIG_IAVF=m +CONFIG_I40EVF=m +CONFIG_ICE=m +CONFIG_ICE_SWITCHDEV=y +CONFIG_FM10K=m +# CONFIG_IGC is not set +CONFIG_NET_VENDOR_MUCSE=y +CONFIG_MXGBE=m +CONFIG_MXGBE_FIX_VF_QUEUE=y +CONFIG_MXGBE_FIX_MAC_PADDING=y +# CONFIG_MXGBE_OPTM_WITH_LARGE is not set +CONFIG_MXGBE_MSIX_COUNT=64 +CONFIG_MXGBE_DCB=y +CONFIG_MXGBEVF=m +CONFIG_MXGBEVF_FIX_VF_QUEUE=y +CONFIG_MXGBEVF_FIX_MAC_PADDING=y +# CONFIG_MXGBEVF_OPTM_WITH_LARGE is not set +CONFIG_MXGBEM=m +CONFIG_MXGBEM_FIX_MAC_PADDING=y +# CONFIG_MXGBEM_OPTM_WITH_LARGE is not set +CONFIG_MGBE=m +# CONFIG_MGBE_OPTM_WITH_LARGE is not set +CONFIG_MGBE_MSIX_COUNT=26 +CONFIG_MGBEVF=m +# CONFIG_MGBEVF_OPTM_WITH_LARGE is not set +CONFIG_NET_VENDOR_YUNSILICON=y +CONFIG_YUNSILICON_XSC_ETH=m +CONFIG_YUNSILICON_XSC_PCI=m +# CONFIG_JME is not set +CONFIG_NET_VENDOR_ADI=y +# CONFIG_ADIN1110 is not set +CONFIG_NET_VENDOR_LITEX=y +# CONFIG_LITEX_LITEETH is not set +# CONFIG_NET_VENDOR_MARVELL is not set +CONFIG_NET_VENDOR_MELLANOX=y +CONFIG_MLX4_EN=m +CONFIG_MLX4_EN_DCB=y +CONFIG_MLX4_CORE=m +CONFIG_MLX4_DEBUG=y +# CONFIG_MLX4_CORE_GEN2 is not set +CONFIG_MLX5_CORE=m +# CONFIG_MLX5_FPGA is not set +CONFIG_MLX5_CORE_EN=y +CONFIG_MLX5_EN_ARFS=y +CONFIG_MLX5_EN_RXNFC=y +CONFIG_MLX5_MPFS=y +CONFIG_MLX5_ESWITCH=y +CONFIG_MLX5_BRIDGE=y +CONFIG_MLX5_CORE_EN_DCB=y +CONFIG_MLX5_CORE_IPOIB=y +# CONFIG_MLX5_MACSEC is not set +# CONFIG_MLX5_EN_IPSEC is not set +# CONFIG_MLX5_EN_TLS is not set +CONFIG_MLX5_SW_STEERING=y +# CONFIG_MLX5_SF is not set +CONFIG_MLXSW_CORE=m +CONFIG_MLXSW_CORE_HWMON=y +CONFIG_MLXSW_CORE_THERMAL=y +CONFIG_MLXSW_PCI=m +CONFIG_MLXSW_I2C=m +# CONFIG_MLXSW_SPECTRUM is not set +CONFIG_MLXSW_MINIMAL=m +CONFIG_MLXFW=m +# CONFIG_MLXBF_GIGE is not set +# CONFIG_NET_VENDOR_MICREL is not set +# CONFIG_NET_VENDOR_MICROCHIP is not set +CONFIG_NET_VENDOR_MICROSEMI=y +# CONFIG_MSCC_OCELOT_SWITCH is not set +CONFIG_NET_VENDOR_MICROSOFT=y +CONFIG_NET_VENDOR_MYRI=y +# CONFIG_MYRI10GE is not set +# CONFIG_FEALNX is not set +# CONFIG_NET_VENDOR_NI is not set +# CONFIG_NET_VENDOR_NATSEMI is not set +# CONFIG_NET_VENDOR_NETERION is not set +CONFIG_NET_VENDOR_NETRONOME=y +CONFIG_NFP=m +CONFIG_NFP_APP_FLOWER=y +CONFIG_NFP_APP_ABM_NIC=y +CONFIG_NFP_NET_IPSEC=y +# CONFIG_NFP_DEBUG is not set +# CONFIG_NET_VENDOR_NVIDIA is not set +CONFIG_NET_VENDOR_OKI=y +CONFIG_ETHOC=m +# CONFIG_NET_VENDOR_PACKET_ENGINES is not set +CONFIG_NET_VENDOR_PENSANDO=y +# CONFIG_IONIC is not set +CONFIG_NET_VENDOR_QLOGIC=y +CONFIG_QLA3XXX=m +# CONFIG_QLCNIC is not set +CONFIG_NETXEN_NIC=m +CONFIG_QED=m +CONFIG_QED_LL2=y +CONFIG_QED_SRIOV=y +CONFIG_QEDE=m +CONFIG_QED_RDMA=y +CONFIG_QED_ISCSI=y +CONFIG_QED_FCOE=y +CONFIG_QED_OOO=y +# CONFIG_NET_VENDOR_BROCADE is not set +CONFIG_NET_VENDOR_QUALCOMM=y +# CONFIG_QCA7000_SPI is not set +CONFIG_QCOM_EMAC=m +# CONFIG_RMNET is not set +# CONFIG_NET_VENDOR_RDC is not set +CONFIG_NET_VENDOR_REALTEK=y +CONFIG_8139CP=m +CONFIG_8139TOO=m +# CONFIG_8139TOO_PIO is not set +# CONFIG_8139TOO_TUNE_TWISTER is not set +CONFIG_8139TOO_8129=y +# CONFIG_8139_OLD_RX_RESET is not set +CONFIG_R8169=m +# CONFIG_NET_VENDOR_RENESAS is not set +CONFIG_NET_VENDOR_ROCKER=y +CONFIG_ROCKER=m +# CONFIG_NET_VENDOR_SAMSUNG is not set +# CONFIG_NET_VENDOR_SEEQ is not set +# CONFIG_NET_VENDOR_SILAN is not set +# CONFIG_NET_VENDOR_SIS is not set +CONFIG_NET_VENDOR_SOLARFLARE=y +CONFIG_SFC=m +CONFIG_SFC_MTD=y +CONFIG_SFC_MCDI_MON=y +CONFIG_SFC_SRIOV=y +CONFIG_SFC_MCDI_LOGGING=y +# CONFIG_SFC_FALCON is not set +# CONFIG_SFC_SIENA is not set +CONFIG_NET_VENDOR_SMSC=y +CONFIG_SMC91X=m +CONFIG_EPIC100=m +CONFIG_SMSC911X=m +CONFIG_SMSC9420=m +# CONFIG_NET_VENDOR_SOCIONEXT is not set +# CONFIG_NET_VENDOR_STMICRO is not set +# CONFIG_NET_VENDOR_SUN is not set +# CONFIG_NET_VENDOR_SYNOPSYS is not set +# CONFIG_NET_VENDOR_TEHUTI is not set +# CONFIG_NET_VENDOR_TI is not set +CONFIG_NET_VENDOR_VERTEXCOM=y +# CONFIG_MSE102X is not set +# CONFIG_NET_VENDOR_VIA is not set +CONFIG_NET_VENDOR_WANGXUN=y +CONFIG_LIBWX=m +CONFIG_NGBE=m +CONFIG_TXGBE=m +# CONFIG_NET_VENDOR_WIZNET is not set +# CONFIG_NET_VENDOR_XILINX is not set +CONFIG_NET_VENDOR_BZWX=y +CONFIG_NCE=m +CONFIG_NE6X=m +CONFIG_NE6XVF=m +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +# CONFIG_NET_SB1000 is not set +CONFIG_PHYLINK=m +CONFIG_PHYLIB=y +CONFIG_SWPHY=y +# CONFIG_LED_TRIGGER_PHY is not set +CONFIG_PHYLIB_LEDS=y +CONFIG_FIXED_PHY=y +CONFIG_SFP=m + +# +# MII PHY device drivers +# +CONFIG_AMD_PHY=m +# CONFIG_ADIN_PHY is not set +# CONFIG_ADIN1100_PHY is not set +CONFIG_AQUANTIA_PHY=m +CONFIG_AX88796B_PHY=m +CONFIG_BROADCOM_PHY=m +# CONFIG_BCM54140_PHY is not set +# CONFIG_BCM7XXX_PHY is not set +# CONFIG_BCM84881_PHY is not set +CONFIG_BCM87XX_PHY=m +CONFIG_BCM_NET_PHYLIB=m +CONFIG_BCM_NET_PHYPTP=m +CONFIG_CICADA_PHY=m +# CONFIG_CORTINA_PHY is not set +CONFIG_DAVICOM_PHY=m +CONFIG_ICPLUS_PHY=m +CONFIG_LXT_PHY=m +# CONFIG_INTEL_XWAY_PHY is not set +CONFIG_LSI_ET1011C_PHY=m +CONFIG_MARVELL_PHY=m +CONFIG_MARVELL_10G_PHY=m +# CONFIG_MARVELL_88Q2XXX_PHY is not set +# CONFIG_MARVELL_88X2222_PHY is not set +# CONFIG_MAXLINEAR_GPHY is not set +# CONFIG_MEDIATEK_GE_PHY is not set +CONFIG_MICREL_PHY=m +# CONFIG_MICROCHIP_T1S_PHY is not set +CONFIG_MICROCHIP_PHY=m +# CONFIG_MICROCHIP_T1_PHY is not set +# CONFIG_MICROSEMI_PHY is not set +# CONFIG_MOTORCOMM_PHY is not set +CONFIG_NATIONAL_PHY=m +# CONFIG_NXP_CBTX_PHY is not set +# CONFIG_NXP_C45_TJA11XX_PHY is not set +# CONFIG_NXP_TJA11XX_PHY is not set +# CONFIG_NCN26000_PHY is not set +CONFIG_AT803X_PHY=m +CONFIG_QSEMI_PHY=m +CONFIG_REALTEK_PHY=m +# CONFIG_RENESAS_PHY is not set +# CONFIG_ROCKCHIP_PHY is not set +CONFIG_SMSC_PHY=m +CONFIG_STE10XP=m +CONFIG_TERANETICS_PHY=m +# CONFIG_DP83822_PHY is not set +# CONFIG_DP83TC811_PHY is not set +CONFIG_DP83848_PHY=m +CONFIG_DP83867_PHY=m +# CONFIG_DP83869_PHY is not set +# CONFIG_DP83TD510_PHY is not set +CONFIG_VITESSE_PHY=m +# CONFIG_XILINX_GMII2RGMII is not set +# CONFIG_MICREL_KS8995MA is not set +# CONFIG_PSE_CONTROLLER is not set +CONFIG_CAN_DEV=m +CONFIG_CAN_VCAN=m +# CONFIG_CAN_VXCAN is not set +CONFIG_CAN_NETLINK=y +CONFIG_CAN_CALC_BITTIMING=y +# CONFIG_CAN_CAN327 is not set +# CONFIG_CAN_FLEXCAN is not set +# CONFIG_CAN_GRCAN is not set +# CONFIG_CAN_KVASER_PCIEFD is not set +CONFIG_CAN_SLCAN=m +# CONFIG_CAN_XILINXCAN is not set +CONFIG_CAN_C_CAN=m +CONFIG_CAN_C_CAN_PLATFORM=m +CONFIG_CAN_C_CAN_PCI=m +CONFIG_CAN_CC770=m +# CONFIG_CAN_CC770_ISA is not set +CONFIG_CAN_CC770_PLATFORM=m +# CONFIG_CAN_CTUCANFD_PCI is not set +# CONFIG_CAN_CTUCANFD_PLATFORM is not set +# CONFIG_CAN_IFI_CANFD is not set +# CONFIG_CAN_M_CAN is not set +# CONFIG_CAN_PEAK_PCIEFD is not set +CONFIG_CAN_SJA1000=m +CONFIG_CAN_EMS_PCI=m +# CONFIG_CAN_F81601 is not set +CONFIG_CAN_KVASER_PCI=m +CONFIG_CAN_PEAK_PCI=m +CONFIG_CAN_PEAK_PCIEC=y +CONFIG_CAN_PLX_PCI=m +# CONFIG_CAN_SJA1000_ISA is not set +CONFIG_CAN_SJA1000_PLATFORM=m +CONFIG_CAN_SOFTING=m + +# +# CAN SPI interfaces +# +# CONFIG_CAN_HI311X is not set +# CONFIG_CAN_MCP251X is not set +# CONFIG_CAN_MCP251XFD is not set +# end of CAN SPI interfaces + +# +# CAN USB interfaces +# +CONFIG_CAN_8DEV_USB=m +CONFIG_CAN_EMS_USB=m +# CONFIG_CAN_ESD_USB is not set +# CONFIG_CAN_ETAS_ES58X is not set +# CONFIG_CAN_F81604 is not set +# CONFIG_CAN_GS_USB is not set +CONFIG_CAN_KVASER_USB=m +# CONFIG_CAN_MCBA_USB is not set +CONFIG_CAN_PEAK_USB=m +# CONFIG_CAN_UCAN is not set +# end of CAN USB interfaces + +# CONFIG_CAN_DEBUG_DEVICES is not set +CONFIG_MDIO_DEVICE=y +CONFIG_MDIO_BUS=y +CONFIG_FWNODE_MDIO=y +CONFIG_OF_MDIO=y +CONFIG_ACPI_MDIO=y +CONFIG_MDIO_DEVRES=y +CONFIG_MDIO_XGENE=y +CONFIG_MDIO_BITBANG=m +CONFIG_MDIO_BCM_UNIMAC=m +CONFIG_MDIO_CAVIUM=m +CONFIG_MDIO_GPIO=m +# CONFIG_MDIO_HISI_FEMAC is not set +CONFIG_MDIO_I2C=m +# CONFIG_MDIO_MVUSB is not set +# CONFIG_MDIO_MSCC_MIIM is not set +CONFIG_MDIO_OCTEON=m +# CONFIG_MDIO_IPQ4019 is not set +# CONFIG_MDIO_IPQ8064 is not set +CONFIG_MDIO_THUNDER=m + +# +# MDIO Multiplexers +# +# CONFIG_MDIO_BUS_MUX_GPIO is not set +# CONFIG_MDIO_BUS_MUX_MULTIPLEXER is not set +# CONFIG_MDIO_BUS_MUX_MMIOREG is not set + +# +# PCS device drivers +# +CONFIG_PCS_XPCS=m +# end of PCS device drivers + +CONFIG_PPP=m +CONFIG_PPP_BSDCOMP=m +CONFIG_PPP_DEFLATE=m +CONFIG_PPP_FILTER=y +CONFIG_PPP_MPPE=m +CONFIG_PPP_MULTILINK=y +CONFIG_PPPOATM=m +CONFIG_PPPOE=m +# CONFIG_PPPOE_HASH_BITS_1 is not set +# CONFIG_PPPOE_HASH_BITS_2 is not set +CONFIG_PPPOE_HASH_BITS_4=y +# CONFIG_PPPOE_HASH_BITS_8 is not set +CONFIG_PPPOE_HASH_BITS=4 +CONFIG_PPTP=m +CONFIG_PPPOL2TP=m +CONFIG_PPP_ASYNC=m +CONFIG_PPP_SYNC_TTY=m +CONFIG_SLIP=m +CONFIG_SLHC=m +CONFIG_SLIP_COMPRESSED=y +CONFIG_SLIP_SMART=y +# CONFIG_SLIP_MODE_SLIP6 is not set +CONFIG_USB_NET_DRIVERS=y +CONFIG_USB_CATC=m +CONFIG_USB_KAWETH=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_RTL8150=m +CONFIG_USB_RTL8152=m +CONFIG_USB_LAN78XX=m +CONFIG_USB_USBNET=m +CONFIG_USB_NET_AX8817X=m +CONFIG_USB_NET_AX88179_178A=m +CONFIG_USB_NET_CDCETHER=m +CONFIG_USB_NET_CDC_EEM=m +CONFIG_USB_NET_CDC_NCM=m +CONFIG_USB_NET_HUAWEI_CDC_NCM=m +CONFIG_USB_NET_CDC_MBIM=m +CONFIG_USB_NET_DM9601=m +CONFIG_USB_NET_SR9700=m +# CONFIG_USB_NET_SR9800 is not set +CONFIG_USB_NET_SMSC75XX=m +CONFIG_USB_NET_SMSC95XX=m +CONFIG_USB_NET_GL620A=m +CONFIG_USB_NET_NET1080=m +CONFIG_USB_NET_PLUSB=m +CONFIG_USB_NET_MCS7830=m +CONFIG_USB_NET_RNDIS_HOST=m +CONFIG_USB_NET_CDC_SUBSET_ENABLE=m +CONFIG_USB_NET_CDC_SUBSET=m +CONFIG_USB_ALI_M5632=y +CONFIG_USB_AN2720=y +CONFIG_USB_BELKIN=y +CONFIG_USB_ARMLINUX=y +CONFIG_USB_EPSON2888=y +CONFIG_USB_KC2190=y +CONFIG_USB_NET_ZAURUS=m +CONFIG_USB_NET_CX82310_ETH=m +CONFIG_USB_NET_KALMIA=m +CONFIG_USB_NET_QMI_WWAN=m +CONFIG_USB_HSO=m +CONFIG_USB_NET_INT51X1=m +CONFIG_USB_IPHETH=m +CONFIG_USB_SIERRA_NET=m +CONFIG_USB_VL600=m +CONFIG_USB_NET_CH9200=m +# CONFIG_USB_NET_AQC111 is not set +CONFIG_USB_RTL8153_ECM=m +CONFIG_WLAN=y +# CONFIG_WLAN_VENDOR_ADMTEK is not set +CONFIG_ATH_COMMON=m +CONFIG_WLAN_VENDOR_ATH=y +# CONFIG_ATH_DEBUG is not set +# CONFIG_ATH5K is not set +# CONFIG_ATH5K_PCI is not set +# CONFIG_ATH9K is not set +# CONFIG_ATH9K_HTC is not set +# CONFIG_CARL9170 is not set +# CONFIG_ATH6KL is not set +# CONFIG_AR5523 is not set +# CONFIG_WIL6210 is not set +CONFIG_ATH10K=m +CONFIG_ATH10K_CE=y +CONFIG_ATH10K_PCI=m +# CONFIG_ATH10K_AHB is not set +# CONFIG_ATH10K_SDIO is not set +# CONFIG_ATH10K_USB is not set +# CONFIG_ATH10K_DEBUG is not set +# CONFIG_ATH10K_DEBUGFS is not set +# CONFIG_ATH10K_TRACING is not set +# CONFIG_WCN36XX is not set +# CONFIG_ATH11K is not set +# CONFIG_ATH12K is not set +# CONFIG_WLAN_VENDOR_ATMEL is not set +# CONFIG_WLAN_VENDOR_BROADCOM is not set +# CONFIG_WLAN_VENDOR_CISCO is not set +# CONFIG_WLAN_VENDOR_INTEL is not set +# CONFIG_WLAN_VENDOR_INTERSIL is not set +# CONFIG_WLAN_VENDOR_MARVELL is not set +# CONFIG_WLAN_VENDOR_MEDIATEK is not set +CONFIG_WLAN_VENDOR_MICROCHIP=y +# CONFIG_WILC1000_SDIO is not set +# CONFIG_WILC1000_SPI is not set +CONFIG_WLAN_VENDOR_PURELIFI=y +# CONFIG_PLFXLC is not set +CONFIG_WLAN_VENDOR_RALINK=y +CONFIG_RT2X00=m +# CONFIG_RT2400PCI is not set +# CONFIG_RT2500PCI is not set +# CONFIG_RT61PCI is not set +# CONFIG_RT2800PCI is not set +# CONFIG_RT2500USB is not set +# CONFIG_RT73USB is not set +CONFIG_RT2800USB=m +CONFIG_RT2800USB_RT33XX=y +CONFIG_RT2800USB_RT35XX=y +# CONFIG_RT2800USB_RT3573 is not set +CONFIG_RT2800USB_RT53XX=y +# CONFIG_RT2800USB_RT55XX is not set +# CONFIG_RT2800USB_UNKNOWN is not set +CONFIG_RT2800_LIB=m +CONFIG_RT2X00_LIB_USB=m +CONFIG_RT2X00_LIB=m +CONFIG_RT2X00_LIB_FIRMWARE=y +CONFIG_RT2X00_LIB_CRYPTO=y +CONFIG_RT2X00_LIB_LEDS=y +# CONFIG_RT2X00_LIB_DEBUGFS is not set +# CONFIG_RT2X00_DEBUG is not set +# CONFIG_WLAN_VENDOR_REALTEK is not set +# CONFIG_WLAN_VENDOR_RSI is not set +CONFIG_WLAN_VENDOR_SILABS=y +# CONFIG_WFX is not set +# CONFIG_WLAN_VENDOR_ST is not set +# CONFIG_WLAN_VENDOR_TI is not set +# CONFIG_WLAN_VENDOR_ZYDAS is not set +# CONFIG_WLAN_VENDOR_QUANTENNA is not set +# CONFIG_USB_NET_RNDIS_WLAN is not set +# CONFIG_MAC80211_HWSIM is not set +# CONFIG_VIRT_WIFI is not set +CONFIG_WAN=y +CONFIG_HDLC=m +CONFIG_HDLC_RAW=m +# CONFIG_HDLC_RAW_ETH is not set +CONFIG_HDLC_CISCO=m +CONFIG_HDLC_FR=m +CONFIG_HDLC_PPP=m + +# +# X.25/LAPB support is disabled +# +# CONFIG_PCI200SYN is not set +# CONFIG_WANXL is not set +# CONFIG_PC300TOO is not set +# CONFIG_FARSYNC is not set +# CONFIG_IEEE802154_DRIVERS is not set + +# +# Wireless WAN +# +# CONFIG_WWAN is not set +# end of Wireless WAN + +# CONFIG_VMXNET3 is not set +# CONFIG_FUJITSU_ES is not set +CONFIG_USB4_NET=m +# CONFIG_NETDEVSIM is not set +CONFIG_NET_FAILOVER=y +# CONFIG_ISDN is not set + +# +# Input device support +# +CONFIG_INPUT=y +CONFIG_INPUT_LEDS=y +CONFIG_INPUT_FF_MEMLESS=y +CONFIG_INPUT_SPARSEKMAP=m +# CONFIG_INPUT_MATRIXKMAP is not set +CONFIG_INPUT_VIVALDIFMAP=y + +# +# Userland interfaces +# +CONFIG_INPUT_MOUSEDEV=y +# CONFIG_INPUT_MOUSEDEV_PSAUX is not set +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +# CONFIG_INPUT_JOYDEV is not set +CONFIG_INPUT_EVDEV=y +# CONFIG_INPUT_EVBUG is not set + +# +# Input Device Drivers +# +CONFIG_INPUT_KEYBOARD=y +# CONFIG_KEYBOARD_ADP5588 is not set +# CONFIG_KEYBOARD_ADP5589 is not set +CONFIG_KEYBOARD_ATKBD=y +# CONFIG_KEYBOARD_QT1050 is not set +# CONFIG_KEYBOARD_QT1070 is not set +# CONFIG_KEYBOARD_QT2160 is not set +# CONFIG_KEYBOARD_DLINK_DIR685 is not set +# CONFIG_KEYBOARD_LKKBD is not set +# CONFIG_KEYBOARD_GPIO is not set +# CONFIG_KEYBOARD_GPIO_POLLED is not set +# CONFIG_KEYBOARD_TCA6416 is not set +# CONFIG_KEYBOARD_TCA8418 is not set +# CONFIG_KEYBOARD_MATRIX is not set +# CONFIG_KEYBOARD_LM8323 is not set +# CONFIG_KEYBOARD_LM8333 is not set +# CONFIG_KEYBOARD_MAX7359 is not set +# CONFIG_KEYBOARD_MCS is not set +# CONFIG_KEYBOARD_MPR121 is not set +# CONFIG_KEYBOARD_NEWTON is not set +# CONFIG_KEYBOARD_OPENCORES is not set +# CONFIG_KEYBOARD_PINEPHONE is not set +# CONFIG_KEYBOARD_SAMSUNG is not set +# CONFIG_KEYBOARD_STOWAWAY is not set +# CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_OMAP4 is not set +# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set +# CONFIG_KEYBOARD_XTKBD is not set +# CONFIG_KEYBOARD_CAP11XX is not set +# CONFIG_KEYBOARD_BCM is not set +# CONFIG_KEYBOARD_CYPRESS_SF is not set +CONFIG_INPUT_MOUSE=y +CONFIG_MOUSE_PS2=y +CONFIG_MOUSE_PS2_ALPS=y +CONFIG_MOUSE_PS2_BYD=y +CONFIG_MOUSE_PS2_LOGIPS2PP=y +CONFIG_MOUSE_PS2_SYNAPTICS=y +CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y +CONFIG_MOUSE_PS2_CYPRESS=y +CONFIG_MOUSE_PS2_TRACKPOINT=y +CONFIG_MOUSE_PS2_ELANTECH=y +CONFIG_MOUSE_PS2_ELANTECH_SMBUS=y +CONFIG_MOUSE_PS2_SENTELIC=y +# CONFIG_MOUSE_PS2_TOUCHKIT is not set +CONFIG_MOUSE_PS2_FOCALTECH=y +CONFIG_MOUSE_PS2_SMBUS=y +CONFIG_MOUSE_SERIAL=m +CONFIG_MOUSE_APPLETOUCH=m +CONFIG_MOUSE_BCM5974=m +CONFIG_MOUSE_CYAPA=m +# CONFIG_MOUSE_ELAN_I2C is not set +CONFIG_MOUSE_VSXXXAA=m +# CONFIG_MOUSE_GPIO is not set +CONFIG_MOUSE_SYNAPTICS_I2C=m +CONFIG_MOUSE_SYNAPTICS_USB=m +# CONFIG_INPUT_JOYSTICK is not set +# CONFIG_INPUT_TABLET is not set +# CONFIG_INPUT_TOUCHSCREEN is not set +CONFIG_INPUT_MISC=y +# CONFIG_INPUT_AD714X is not set +# CONFIG_INPUT_ATMEL_CAPTOUCH is not set +# CONFIG_INPUT_BMA150 is not set +# CONFIG_INPUT_E3X0_BUTTON is not set +# CONFIG_INPUT_MMA8450 is not set +# CONFIG_INPUT_GPIO_BEEPER is not set +# CONFIG_INPUT_GPIO_DECODER is not set +# CONFIG_INPUT_GPIO_VIBRA is not set +# CONFIG_INPUT_ATI_REMOTE2 is not set +# CONFIG_INPUT_KEYSPAN_REMOTE is not set +# CONFIG_INPUT_KXTJ9 is not set +# CONFIG_INPUT_POWERMATE is not set +# CONFIG_INPUT_YEALINK is not set +# CONFIG_INPUT_CM109 is not set +# CONFIG_INPUT_REGULATOR_HAPTIC is not set +CONFIG_INPUT_UINPUT=m +# CONFIG_INPUT_PCF8574 is not set +# CONFIG_INPUT_PWM_BEEPER is not set +# CONFIG_INPUT_PWM_VIBRA is not set +# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set +# CONFIG_INPUT_DA7280_HAPTICS is not set +# CONFIG_INPUT_ADXL34X is not set +# CONFIG_INPUT_IBM_PANEL is not set +# CONFIG_INPUT_IMS_PCU is not set +# CONFIG_INPUT_IQS269A is not set +# CONFIG_INPUT_IQS626A is not set +# CONFIG_INPUT_IQS7222 is not set +# CONFIG_INPUT_CMA3000 is not set +# CONFIG_INPUT_DRV260X_HAPTICS is not set +# CONFIG_INPUT_DRV2665_HAPTICS is not set +# CONFIG_INPUT_DRV2667_HAPTICS is not set +# CONFIG_INPUT_HISI_POWERKEY is not set +CONFIG_RMI4_CORE=m +CONFIG_RMI4_I2C=m +CONFIG_RMI4_SPI=m +CONFIG_RMI4_SMB=m +CONFIG_RMI4_F03=y +CONFIG_RMI4_F03_SERIO=m +CONFIG_RMI4_2D_SENSOR=y +CONFIG_RMI4_F11=y +CONFIG_RMI4_F12=y +CONFIG_RMI4_F30=y +# CONFIG_RMI4_F34 is not set +# CONFIG_RMI4_F3A is not set +# CONFIG_RMI4_F54 is not set +# CONFIG_RMI4_F55 is not set + +# +# Hardware I/O ports +# +CONFIG_SERIO=y +CONFIG_SERIO_SERPORT=y +CONFIG_SERIO_AMBAKMI=y +# CONFIG_SERIO_PCIPS2 is not set +CONFIG_SERIO_LIBPS2=y +CONFIG_SERIO_RAW=m +CONFIG_SERIO_ALTERA_PS2=m +# CONFIG_SERIO_PS2MULT is not set +CONFIG_SERIO_ARC_PS2=m +# CONFIG_SERIO_APBPS2 is not set +# CONFIG_SERIO_GPIO_PS2 is not set +# CONFIG_USERIO is not set +# CONFIG_GAMEPORT is not set +# end of Hardware I/O ports +# end of Input device support + +# +# Character devices +# +CONFIG_TTY=y +CONFIG_VT=y +CONFIG_CONSOLE_TRANSLATIONS=y +CONFIG_VT_CONSOLE=y +CONFIG_VT_CONSOLE_SLEEP=y +CONFIG_HW_CONSOLE=y +CONFIG_VT_HW_CONSOLE_BINDING=y +CONFIG_UNIX98_PTYS=y +# CONFIG_LEGACY_PTYS is not set +CONFIG_LEGACY_TIOCSTI=y +CONFIG_LDISC_AUTOLOAD=y + +# +# Serial drivers +# +CONFIG_SERIAL_EARLYCON=y +CONFIG_SERIAL_8250=y +# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set +CONFIG_SERIAL_8250_PNP=y +CONFIG_SERIAL_8250_16550A_VARIANTS=y +# CONFIG_SERIAL_8250_FINTEK is not set +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_DMA=y +CONFIG_SERIAL_8250_PCILIB=y +CONFIG_SERIAL_8250_PCI=y +CONFIG_SERIAL_8250_EXAR=y +CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_RUNTIME_UARTS=4 +CONFIG_SERIAL_8250_EXTENDED=y +CONFIG_SERIAL_8250_MANY_PORTS=y +# CONFIG_SERIAL_8250_PCI1XXXX is not set +CONFIG_SERIAL_8250_SHARE_IRQ=y +# CONFIG_SERIAL_8250_DETECT_IRQ is not set +CONFIG_SERIAL_8250_RSA=y +CONFIG_SERIAL_8250_DWLIB=y +CONFIG_SERIAL_8250_FSL=y +CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_RT288X=y +CONFIG_SERIAL_8250_PERICOM=y +CONFIG_SERIAL_OF_PLATFORM=y + +# +# Non-8250 serial port support +# +# CONFIG_SERIAL_AMBA_PL010 is not set +CONFIG_SERIAL_AMBA_PL011=y +CONFIG_SERIAL_AMBA_PL011_CONSOLE=y +# CONFIG_SERIAL_EARLYCON_SEMIHOST is not set +# CONFIG_SERIAL_KGDB_NMI is not set +# CONFIG_SERIAL_MAX3100 is not set +# CONFIG_SERIAL_MAX310X is not set +# CONFIG_SERIAL_UARTLITE is not set +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +CONFIG_CONSOLE_POLL=y +# CONFIG_SERIAL_JSM is not set +# CONFIG_SERIAL_MSM is not set +# CONFIG_SERIAL_SIFIVE is not set +# CONFIG_SERIAL_SCCNXP is not set +# CONFIG_SERIAL_SC16IS7XX is not set +# CONFIG_SERIAL_ALTERA_JTAGUART is not set +# CONFIG_SERIAL_ALTERA_UART is not set +# CONFIG_SERIAL_XILINX_PS_UART is not set +# CONFIG_SERIAL_ARC is not set +# CONFIG_SERIAL_RP2 is not set +# CONFIG_SERIAL_FSL_LPUART is not set +# CONFIG_SERIAL_FSL_LINFLEXUART is not set +# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set +# CONFIG_SERIAL_SPRD is not set +# end of Serial drivers + +CONFIG_SERIAL_MCTRL_GPIO=y +CONFIG_SERIAL_NONSTANDARD=y +# CONFIG_MOXA_INTELLIO is not set +# CONFIG_MOXA_SMARTIO is not set +CONFIG_N_HDLC=m +CONFIG_N_GSM=m +# CONFIG_NOZOMI is not set +# CONFIG_NULL_TTY is not set +CONFIG_HVC_DRIVER=y +# CONFIG_HVC_DCC is not set +# CONFIG_SERIAL_DEV_BUS is not set +# CONFIG_TTY_PRINTK is not set +CONFIG_VIRTIO_CONSOLE=m +CONFIG_IPMI_HANDLER=m +CONFIG_IPMI_DMI_DECODE=y +CONFIG_IPMI_PLAT_DATA=y +# CONFIG_IPMI_PANIC_EVENT is not set +CONFIG_IPMI_DEVICE_INTERFACE=m +CONFIG_IPMI_SI=m +CONFIG_IPMI_SSIF=m +# CONFIG_IPMI_IPMB is not set +CONFIG_IPMI_WATCHDOG=m +CONFIG_IPMI_POWEROFF=m +# CONFIG_SSIF_IPMI_BMC is not set +# CONFIG_IPMB_DEVICE_INTERFACE is not set +CONFIG_HW_RANDOM=y +CONFIG_HW_RANDOM_TIMERIOMEM=m +# CONFIG_HW_RANDOM_BA431 is not set +CONFIG_HW_RANDOM_VIRTIO=m +CONFIG_HW_RANDOM_HISI=y +# CONFIG_HW_RANDOM_HISTB is not set +CONFIG_HW_RANDOM_XGENE=y +CONFIG_HW_RANDOM_CAVIUM=y +# CONFIG_HW_RANDOM_CCTRNG is not set +# CONFIG_HW_RANDOM_XIPHERA is not set +# CONFIG_HW_RANDOM_ARM_SMCCC_TRNG is not set +# CONFIG_HW_RANDOM_CN10K is not set +# CONFIG_APPLICOM is not set +CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set +CONFIG_TCG_TPM=y +CONFIG_HW_RANDOM_TPM=y +CONFIG_TCG_TIS_CORE=y +CONFIG_TCG_TIS=y +CONFIG_TCG_TIS_SPI=y +# CONFIG_TCG_TIS_SPI_CR50 is not set +# CONFIG_TCG_TIS_I2C is not set +# CONFIG_TCG_TIS_I2C_CR50 is not set +CONFIG_TCG_TIS_I2C_ATMEL=m +CONFIG_TCG_TIS_I2C_INFINEON=m +CONFIG_TCG_TIS_I2C_NUVOTON=m +CONFIG_TCG_ATMEL=m +CONFIG_TCG_INFINEON=y +CONFIG_TCG_CRB=y +# CONFIG_TCG_VTPM_PROXY is not set +CONFIG_TCG_TIS_ST33ZP24=m +CONFIG_TCG_TIS_ST33ZP24_I2C=m +CONFIG_TCG_TIS_ST33ZP24_SPI=m +# CONFIG_XILLYBUS is not set +# CONFIG_XILLYUSB is not set +# end of Character devices + +# +# I2C support +# +CONFIG_I2C=y +CONFIG_ACPI_I2C_OPREGION=y +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_COMPAT=y +CONFIG_I2C_CHARDEV=m +CONFIG_I2C_MUX=m + +# +# Multiplexer I2C Chip support +# +CONFIG_I2C_ARB_GPIO_CHALLENGE=m +CONFIG_I2C_MUX_GPIO=m +# CONFIG_I2C_MUX_GPMUX is not set +# CONFIG_I2C_MUX_LTC4306 is not set +CONFIG_I2C_MUX_PCA9541=m +CONFIG_I2C_MUX_PCA954x=m +CONFIG_I2C_MUX_PINCTRL=m +# CONFIG_I2C_MUX_REG is not set +# CONFIG_I2C_DEMUX_PINCTRL is not set +CONFIG_I2C_MUX_MLXCPLD=m +# end of Multiplexer I2C Chip support + +# CONFIG_I2C_HELPER_AUTO is not set +CONFIG_I2C_SMBUS=m + +# +# I2C Algorithms +# +CONFIG_I2C_ALGOBIT=y +# CONFIG_I2C_ALGOPCF is not set +CONFIG_I2C_ALGOPCA=m +# end of I2C Algorithms + +# +# I2C Hardware Bus support +# + +# +# PC SMBus host controller drivers +# +# CONFIG_I2C_ALI1535 is not set +# CONFIG_I2C_ALI1563 is not set +# CONFIG_I2C_ALI15X3 is not set +# CONFIG_I2C_AMD756 is not set +# CONFIG_I2C_AMD8111 is not set +# CONFIG_I2C_AMD_MP2 is not set +# CONFIG_I2C_HIX5HD2 is not set +# CONFIG_I2C_I801 is not set +# CONFIG_I2C_ISCH is not set +# CONFIG_I2C_PIIX4 is not set +CONFIG_I2C_NFORCE2=m +# CONFIG_I2C_NVIDIA_GPU is not set +# CONFIG_I2C_SIS5595 is not set +# CONFIG_I2C_SIS630 is not set +# CONFIG_I2C_SIS96X is not set +# CONFIG_I2C_VIA is not set +# CONFIG_I2C_VIAPRO is not set + +# +# ACPI drivers +# +# CONFIG_I2C_SCMI is not set + +# +# I2C system bus drivers (mostly embedded / system-on-chip) +# +# CONFIG_I2C_CADENCE is not set +# CONFIG_I2C_CBUS_GPIO is not set +CONFIG_I2C_DESIGNWARE_CORE=m +# CONFIG_I2C_DESIGNWARE_SLAVE is not set +CONFIG_I2C_DESIGNWARE_PLATFORM=m +# CONFIG_I2C_DESIGNWARE_PCI is not set +# CONFIG_I2C_EMEV2 is not set +CONFIG_I2C_GPIO=m +# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set +CONFIG_I2C_HISI=m +# CONFIG_I2C_NOMADIK is not set +# CONFIG_I2C_OCORES is not set +CONFIG_I2C_PCA_PLATFORM=m +# CONFIG_I2C_QCOM_CCI is not set +CONFIG_I2C_QUP=m +# CONFIG_I2C_RK3X is not set +CONFIG_I2C_SIMTEC=m +CONFIG_I2C_VERSATILE=m +CONFIG_I2C_THUNDERX=m +# CONFIG_I2C_XILINX is not set +CONFIG_I2C_XLP9XX=m + +# +# External I2C/SMBus adapter drivers +# +CONFIG_I2C_DIOLAN_U2C=m +# CONFIG_I2C_CP2615 is not set +# CONFIG_I2C_PCI1XXXX is not set +# CONFIG_I2C_ROBOTFUZZ_OSIF is not set +# CONFIG_I2C_TAOS_EVM is not set +CONFIG_I2C_TINY_USB=m + +# +# Other I2C/SMBus bus drivers +# +# CONFIG_I2C_MLXCPLD is not set +CONFIG_I2C_XGENE_SLIMPRO=m +# CONFIG_I2C_VIRTIO is not set +# end of I2C Hardware Bus support + +CONFIG_I2C_STUB=m +CONFIG_I2C_SLAVE=y +CONFIG_I2C_SLAVE_EEPROM=m +# CONFIG_I2C_SLAVE_TESTUNIT is not set +# CONFIG_I2C_DEBUG_CORE is not set +# CONFIG_I2C_DEBUG_ALGO is not set +# CONFIG_I2C_DEBUG_BUS is not set +# end of I2C support + +# CONFIG_I3C is not set +CONFIG_SPI=y +# CONFIG_SPI_DEBUG is not set +CONFIG_SPI_MASTER=y +CONFIG_SPI_MEM=y + +# +# SPI Master Controller Drivers +# +# CONFIG_SPI_ALTERA is not set +# CONFIG_SPI_AXI_SPI_ENGINE is not set +# CONFIG_SPI_BITBANG is not set +CONFIG_SPI_CADENCE=m +# CONFIG_SPI_CADENCE_QUADSPI is not set +# CONFIG_SPI_CADENCE_XSPI is not set +CONFIG_SPI_DESIGNWARE=y +# CONFIG_SPI_DW_DMA is not set +CONFIG_SPI_DW_PCI=m +CONFIG_SPI_DW_MMIO=y +CONFIG_SPI_HISI_KUNPENG=m +CONFIG_SPI_HISI_SFC_V3XX=m +# CONFIG_SPI_GPIO is not set +# CONFIG_SPI_FSL_SPI is not set +# CONFIG_SPI_MICROCHIP_CORE is not set +# CONFIG_SPI_MICROCHIP_CORE_QSPI is not set +# CONFIG_SPI_OC_TINY is not set +# CONFIG_SPI_PCI1XXXX is not set +CONFIG_SPI_PL022=m +# CONFIG_SPI_PXA2XX is not set +# CONFIG_SPI_QCOM_QSPI is not set +CONFIG_SPI_QUP=y +# CONFIG_SPI_SC18IS602 is not set +# CONFIG_SPI_SIFIVE is not set +# CONFIG_SPI_SN_F_OSPI is not set +# CONFIG_SPI_MXIC is not set +# CONFIG_SPI_THUNDERX is not set +# CONFIG_SPI_XCOMM is not set +# CONFIG_SPI_XILINX is not set +CONFIG_SPI_XLP=m +# CONFIG_SPI_ZYNQMP_GQSPI is not set +# CONFIG_SPI_AMD is not set + +# +# SPI Multiplexer support +# +# CONFIG_SPI_MUX is not set + +# +# SPI Protocol Masters +# +# CONFIG_SPI_SPIDEV is not set +# CONFIG_SPI_LOOPBACK_TEST is not set +# CONFIG_SPI_TLE62X0 is not set +# CONFIG_SPI_SLAVE is not set +CONFIG_SPI_DYNAMIC=y +# CONFIG_SPMI is not set +# CONFIG_HSI is not set +CONFIG_PPS=y +# CONFIG_PPS_DEBUG is not set + +# +# PPS clients support +# +# CONFIG_PPS_CLIENT_KTIMER is not set +CONFIG_PPS_CLIENT_LDISC=m +CONFIG_PPS_CLIENT_GPIO=m + +# +# PPS generators support +# + +# +# PTP clock support +# +CONFIG_PTP_1588_CLOCK=y +CONFIG_PTP_1588_CLOCK_OPTIONAL=y +CONFIG_DP83640_PHY=m +# CONFIG_PTP_1588_CLOCK_INES is not set +CONFIG_PTP_1588_CLOCK_KVM=y +# CONFIG_PTP_1588_CLOCK_IDT82P33 is not set +# CONFIG_PTP_1588_CLOCK_IDTCM is not set +# CONFIG_PTP_1588_CLOCK_MOCK is not set +# CONFIG_PTP_1588_CLOCK_OCP is not set +CONFIG_PTP_HISI=m +# end of PTP clock support + +CONFIG_PINCTRL=y +CONFIG_PINMUX=y +CONFIG_PINCONF=y +CONFIG_GENERIC_PINCONF=y +# CONFIG_DEBUG_PINCTRL is not set +# CONFIG_PINCTRL_AMD is not set +# CONFIG_PINCTRL_CY8C95X0 is not set +# CONFIG_PINCTRL_MCP23S08 is not set +# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set +# CONFIG_PINCTRL_OCELOT is not set +# CONFIG_PINCTRL_SINGLE is not set +# CONFIG_PINCTRL_STMFX is not set +# CONFIG_PINCTRL_SX150X is not set +CONFIG_PINCTRL_MSM=y +# CONFIG_PINCTRL_IPQ5018 is not set +# CONFIG_PINCTRL_IPQ5332 is not set +# CONFIG_PINCTRL_IPQ8074 is not set +# CONFIG_PINCTRL_IPQ6018 is not set +# CONFIG_PINCTRL_IPQ9574 is not set +# CONFIG_PINCTRL_MDM9607 is not set +# CONFIG_PINCTRL_MSM8916 is not set +# CONFIG_PINCTRL_MSM8953 is not set +# CONFIG_PINCTRL_MSM8976 is not set +# CONFIG_PINCTRL_MSM8994 is not set +# CONFIG_PINCTRL_MSM8996 is not set +# CONFIG_PINCTRL_MSM8998 is not set +# CONFIG_PINCTRL_QCM2290 is not set +# CONFIG_PINCTRL_QCS404 is not set +CONFIG_PINCTRL_QDF2XXX=y +# CONFIG_PINCTRL_QDU1000 is not set +# CONFIG_PINCTRL_SA8775P is not set +# CONFIG_PINCTRL_SC7180 is not set +# CONFIG_PINCTRL_SC7280 is not set +# CONFIG_PINCTRL_SC8180X is not set +# CONFIG_PINCTRL_SC8280XP is not set +# CONFIG_PINCTRL_SDM660 is not set +# CONFIG_PINCTRL_SDM670 is not set +# CONFIG_PINCTRL_SDM845 is not set +# CONFIG_PINCTRL_SDX75 is not set +# CONFIG_PINCTRL_SM6115 is not set +# CONFIG_PINCTRL_SM6125 is not set +# CONFIG_PINCTRL_SM6350 is not set +# CONFIG_PINCTRL_SM6375 is not set +# CONFIG_PINCTRL_SM7150 is not set +# CONFIG_PINCTRL_SM8150 is not set +# CONFIG_PINCTRL_SM8250 is not set +# CONFIG_PINCTRL_SM8350 is not set +# CONFIG_PINCTRL_SM8450 is not set +# CONFIG_PINCTRL_SM8550 is not set +# CONFIG_PINCTRL_QCOM_SSBI_PMIC is not set +# CONFIG_PINCTRL_LPASS_LPI is not set + +# +# Renesas pinctrl drivers +# +# end of Renesas pinctrl drivers + +CONFIG_GPIOLIB=y +CONFIG_GPIOLIB_FASTPATH_LIMIT=512 +CONFIG_OF_GPIO=y +CONFIG_GPIO_ACPI=y +CONFIG_GPIOLIB_IRQCHIP=y +# CONFIG_DEBUG_GPIO is not set +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_CDEV=y +CONFIG_GPIO_CDEV_V1=y +CONFIG_GPIO_GENERIC=y + +# +# Memory mapped GPIO drivers +# +# CONFIG_GPIO_74XX_MMIO is not set +# CONFIG_GPIO_ALTERA is not set +CONFIG_GPIO_AMDPT=m +# CONFIG_GPIO_CADENCE is not set +CONFIG_GPIO_DWAPB=y +# CONFIG_GPIO_EXAR is not set +# CONFIG_GPIO_FTGPIO010 is not set +CONFIG_GPIO_GENERIC_PLATFORM=m +# CONFIG_GPIO_GRGPIO is not set +CONFIG_GPIO_HISI=m +# CONFIG_GPIO_HLWD is not set +# CONFIG_GPIO_LOGICVC is not set +# CONFIG_GPIO_MB86S7X is not set +CONFIG_GPIO_PL061=y +# CONFIG_GPIO_SIFIVE is not set +# CONFIG_GPIO_SYSCON is not set +# CONFIG_GPIO_THUNDERX is not set +CONFIG_GPIO_XGENE=y +CONFIG_GPIO_XGENE_SB=m +# CONFIG_GPIO_XILINX is not set +CONFIG_GPIO_XLP=m +# CONFIG_GPIO_AMD_FCH is not set +# end of Memory mapped GPIO drivers + +# +# I2C GPIO expanders +# +# CONFIG_GPIO_ADNP is not set +# CONFIG_GPIO_FXL6408 is not set +# CONFIG_GPIO_DS4520 is not set +# CONFIG_GPIO_GW_PLD is not set +# CONFIG_GPIO_MAX7300 is not set +# CONFIG_GPIO_MAX732X is not set +# CONFIG_GPIO_PCA953X is not set +# CONFIG_GPIO_PCA9570 is not set +# CONFIG_GPIO_PCF857X is not set +# CONFIG_GPIO_TPIC2810 is not set +# end of I2C GPIO expanders + +# +# MFD GPIO expanders +# +# end of MFD GPIO expanders + +# +# PCI GPIO expanders +# +# CONFIG_GPIO_BT8XX is not set +# CONFIG_GPIO_PCI_IDIO_16 is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set +# CONFIG_GPIO_RDC321X is not set +# end of PCI GPIO expanders + +# +# SPI GPIO expanders +# +# CONFIG_GPIO_74X164 is not set +# CONFIG_GPIO_MAX3191X is not set +# CONFIG_GPIO_MAX7301 is not set +# CONFIG_GPIO_MC33880 is not set +# CONFIG_GPIO_PISOSR is not set +# CONFIG_GPIO_XRA1403 is not set +# end of SPI GPIO expanders + +# +# USB GPIO expanders +# +# end of USB GPIO expanders + +# +# Virtual GPIO drivers +# +# CONFIG_GPIO_AGGREGATOR is not set +# CONFIG_GPIO_LATCH is not set +# CONFIG_GPIO_MOCKUP is not set +# CONFIG_GPIO_VIRTIO is not set +# CONFIG_GPIO_SIM is not set +# end of Virtual GPIO drivers + +# CONFIG_W1 is not set +CONFIG_POWER_RESET=y +# CONFIG_POWER_RESET_BRCMSTB is not set +CONFIG_POWER_RESET_GPIO=y +CONFIG_POWER_RESET_GPIO_RESTART=y +CONFIG_POWER_RESET_HISI=y +# CONFIG_POWER_RESET_MSM is not set +# CONFIG_POWER_RESET_LTC2952 is not set +# CONFIG_POWER_RESET_REGULATOR is not set +CONFIG_POWER_RESET_RESTART=y +CONFIG_POWER_RESET_VEXPRESS=y +# CONFIG_POWER_RESET_XGENE is not set +CONFIG_POWER_RESET_SYSCON=y +# CONFIG_POWER_RESET_SYSCON_POWEROFF is not set +# CONFIG_SYSCON_REBOOT_MODE is not set +# CONFIG_NVMEM_REBOOT_MODE is not set +CONFIG_POWER_SUPPLY=y +# CONFIG_POWER_SUPPLY_DEBUG is not set +CONFIG_POWER_SUPPLY_HWMON=y +# CONFIG_IP5XXX_POWER is not set +# CONFIG_TEST_POWER is not set +# CONFIG_CHARGER_ADP5061 is not set +# CONFIG_BATTERY_CW2015 is not set +# CONFIG_BATTERY_DS2780 is not set +# CONFIG_BATTERY_DS2781 is not set +# CONFIG_BATTERY_DS2782 is not set +# CONFIG_BATTERY_SAMSUNG_SDI is not set +# CONFIG_BATTERY_SBS is not set +# CONFIG_CHARGER_SBS is not set +# CONFIG_MANAGER_SBS is not set +# CONFIG_BATTERY_BQ27XXX is not set +# CONFIG_BATTERY_MAX17040 is not set +# CONFIG_BATTERY_MAX17042 is not set +# CONFIG_CHARGER_MAX8903 is not set +# CONFIG_CHARGER_LP8727 is not set +# CONFIG_CHARGER_GPIO is not set +# CONFIG_CHARGER_MANAGER is not set +# CONFIG_CHARGER_LT3651 is not set +# CONFIG_CHARGER_LTC4162L is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set +# CONFIG_CHARGER_MAX77976 is not set +# CONFIG_CHARGER_BQ2415X is not set +# CONFIG_CHARGER_BQ24190 is not set +# CONFIG_CHARGER_BQ24257 is not set +# CONFIG_CHARGER_BQ24735 is not set +# CONFIG_CHARGER_BQ2515X is not set +# CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_BQ25980 is not set +# CONFIG_CHARGER_BQ256XX is not set +CONFIG_CHARGER_SMB347=m +# CONFIG_BATTERY_GAUGE_LTC2941 is not set +# CONFIG_BATTERY_GOLDFISH is not set +# CONFIG_BATTERY_RT5033 is not set +# CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_RT9467 is not set +# CONFIG_CHARGER_RT9471 is not set +# CONFIG_CHARGER_UCS1002 is not set +# CONFIG_CHARGER_BD99954 is not set +# CONFIG_BATTERY_UG3105 is not set +CONFIG_HWMON=y +CONFIG_HWMON_VID=m +# CONFIG_HWMON_DEBUG_CHIP is not set + +# +# Native drivers +# +CONFIG_SENSORS_AD7314=m +CONFIG_SENSORS_AD7414=m +CONFIG_SENSORS_AD7418=m +CONFIG_SENSORS_ADM1025=m +CONFIG_SENSORS_ADM1026=m +CONFIG_SENSORS_ADM1029=m +CONFIG_SENSORS_ADM1031=m +# CONFIG_SENSORS_ADM1177 is not set +CONFIG_SENSORS_ADM9240=m +CONFIG_SENSORS_ADT7X10=m +CONFIG_SENSORS_ADT7310=m +CONFIG_SENSORS_ADT7410=m +CONFIG_SENSORS_ADT7411=m +CONFIG_SENSORS_ADT7462=m +CONFIG_SENSORS_ADT7470=m +CONFIG_SENSORS_ADT7475=m +# CONFIG_SENSORS_AHT10 is not set +# CONFIG_SENSORS_AQUACOMPUTER_D5NEXT is not set +# CONFIG_SENSORS_AS370 is not set +CONFIG_SENSORS_ASC7621=m +# CONFIG_SENSORS_AXI_FAN_CONTROL is not set +CONFIG_SENSORS_ARM_SCPI=m +CONFIG_SENSORS_ATXP1=m +# CONFIG_SENSORS_CORSAIR_CPRO is not set +# CONFIG_SENSORS_CORSAIR_PSU is not set +# CONFIG_SENSORS_DRIVETEMP is not set +CONFIG_SENSORS_DS620=m +CONFIG_SENSORS_DS1621=m +# CONFIG_SENSORS_I5K_AMB is not set +CONFIG_SENSORS_F71805F=m +CONFIG_SENSORS_F71882FG=m +CONFIG_SENSORS_F75375S=m +# CONFIG_SENSORS_FTSTEUTATES is not set +CONFIG_SENSORS_GL518SM=m +CONFIG_SENSORS_GL520SM=m +CONFIG_SENSORS_G760A=m +CONFIG_SENSORS_G762=m +# CONFIG_SENSORS_GPIO_FAN is not set +# CONFIG_SENSORS_HIH6130 is not set +# CONFIG_SENSORS_HS3001 is not set +CONFIG_SENSORS_IBMAEM=m +CONFIG_SENSORS_IBMPEX=m +CONFIG_SENSORS_IT87=m +CONFIG_SENSORS_JC42=m +CONFIG_SENSORS_POWR1220=m +CONFIG_SENSORS_LINEAGE=m +CONFIG_SENSORS_LTC2945=m +# CONFIG_SENSORS_LTC2947_I2C is not set +# CONFIG_SENSORS_LTC2947_SPI is not set +# CONFIG_SENSORS_LTC2990 is not set +# CONFIG_SENSORS_LTC2992 is not set +CONFIG_SENSORS_LTC4151=m +CONFIG_SENSORS_LTC4215=m +CONFIG_SENSORS_LTC4222=m +CONFIG_SENSORS_LTC4245=m +CONFIG_SENSORS_LTC4260=m +CONFIG_SENSORS_LTC4261=m +CONFIG_SENSORS_MAX1111=m +# CONFIG_SENSORS_MAX127 is not set +CONFIG_SENSORS_MAX16065=m +CONFIG_SENSORS_MAX1619=m +CONFIG_SENSORS_MAX1668=m +CONFIG_SENSORS_MAX197=m +# CONFIG_SENSORS_MAX31722 is not set +# CONFIG_SENSORS_MAX31730 is not set +# CONFIG_SENSORS_MAX31760 is not set +# CONFIG_MAX31827 is not set +# CONFIG_SENSORS_MAX6620 is not set +# CONFIG_SENSORS_MAX6621 is not set +CONFIG_SENSORS_MAX6639=m +CONFIG_SENSORS_MAX6650=m +CONFIG_SENSORS_MAX6697=m +CONFIG_SENSORS_MAX31790=m +# CONFIG_SENSORS_MC34VR500 is not set +CONFIG_SENSORS_MCP3021=m +# CONFIG_SENSORS_TC654 is not set +# CONFIG_SENSORS_TPS23861 is not set +# CONFIG_SENSORS_MR75203 is not set +CONFIG_SENSORS_ADCXX=m +CONFIG_SENSORS_LM63=m +CONFIG_SENSORS_LM70=m +CONFIG_SENSORS_LM73=m +CONFIG_SENSORS_LM75=m +CONFIG_SENSORS_LM77=m +CONFIG_SENSORS_LM78=m +CONFIG_SENSORS_LM80=m +CONFIG_SENSORS_LM83=m +CONFIG_SENSORS_LM85=m +CONFIG_SENSORS_LM87=m +CONFIG_SENSORS_LM90=m +CONFIG_SENSORS_LM92=m +CONFIG_SENSORS_LM93=m +CONFIG_SENSORS_LM95234=m +CONFIG_SENSORS_LM95241=m +CONFIG_SENSORS_LM95245=m +CONFIG_SENSORS_PC87360=m +CONFIG_SENSORS_PC87427=m +CONFIG_SENSORS_NCT6683=m +CONFIG_SENSORS_NCT6775_CORE=m +CONFIG_SENSORS_NCT6775=m +# CONFIG_SENSORS_NCT6775_I2C is not set +CONFIG_SENSORS_NCT7802=m +CONFIG_SENSORS_NCT7904=m +# CONFIG_SENSORS_NPCM7XX is not set +# CONFIG_SENSORS_NZXT_KRAKEN2 is not set +# CONFIG_SENSORS_NZXT_SMART2 is not set +# CONFIG_SENSORS_OCC_P8_I2C is not set +CONFIG_SENSORS_PCF8591=m +CONFIG_PMBUS=m +CONFIG_SENSORS_PMBUS=m +# CONFIG_SENSORS_ACBEL_FSG032 is not set +# CONFIG_SENSORS_ADM1266 is not set +CONFIG_SENSORS_ADM1275=m +# CONFIG_SENSORS_BEL_PFE is not set +# CONFIG_SENSORS_BPA_RS600 is not set +# CONFIG_SENSORS_DELTA_AHE50DC_FAN is not set +# CONFIG_SENSORS_FSP_3Y is not set +# CONFIG_SENSORS_IBM_CFFPS is not set +# CONFIG_SENSORS_DPS920AB is not set +# CONFIG_SENSORS_INSPUR_IPSPS is not set +# CONFIG_SENSORS_IR35221 is not set +# CONFIG_SENSORS_IR36021 is not set +# CONFIG_SENSORS_IR38064 is not set +# CONFIG_SENSORS_IRPS5401 is not set +# CONFIG_SENSORS_ISL68137 is not set +CONFIG_SENSORS_LM25066=m +# CONFIG_SENSORS_LM25066_REGULATOR is not set +# CONFIG_SENSORS_LT7182S is not set +CONFIG_SENSORS_LTC2978=m +# CONFIG_SENSORS_LTC2978_REGULATOR is not set +CONFIG_SENSORS_LTC3815=m +# CONFIG_SENSORS_MAX15301 is not set +CONFIG_SENSORS_MAX16064=m +# CONFIG_SENSORS_MAX16601 is not set +# CONFIG_SENSORS_MAX20730 is not set +CONFIG_SENSORS_MAX20751=m +# CONFIG_SENSORS_MAX31785 is not set +CONFIG_SENSORS_MAX34440=m +CONFIG_SENSORS_MAX8688=m +# CONFIG_SENSORS_MP2888 is not set +# CONFIG_SENSORS_MP2975 is not set +# CONFIG_SENSORS_MP5023 is not set +# CONFIG_SENSORS_MPQ7932 is not set +# CONFIG_SENSORS_PIM4328 is not set +# CONFIG_SENSORS_PLI1209BC is not set +# CONFIG_SENSORS_PM6764TR is not set +# CONFIG_SENSORS_PXE1610 is not set +# CONFIG_SENSORS_Q54SJ108A2 is not set +# CONFIG_SENSORS_STPDDC60 is not set +# CONFIG_SENSORS_TDA38640 is not set +CONFIG_SENSORS_TPS40422=m +# CONFIG_SENSORS_TPS53679 is not set +# CONFIG_SENSORS_TPS546D24 is not set +CONFIG_SENSORS_UCD9000=m +CONFIG_SENSORS_UCD9200=m +# CONFIG_SENSORS_XDPE152 is not set +# CONFIG_SENSORS_XDPE122 is not set +CONFIG_SENSORS_ZL6100=m +CONFIG_SENSORS_PWM_FAN=m +# CONFIG_SENSORS_SBTSI is not set +# CONFIG_SENSORS_SBRMI is not set +CONFIG_SENSORS_SHT15=m +CONFIG_SENSORS_SHT21=m +# CONFIG_SENSORS_SHT3x is not set +# CONFIG_SENSORS_SHT4x is not set +CONFIG_SENSORS_SHTC1=m +CONFIG_SENSORS_SIS5595=m +CONFIG_SENSORS_DME1737=m +CONFIG_SENSORS_EMC1403=m +# CONFIG_SENSORS_EMC2103 is not set +# CONFIG_SENSORS_EMC2305 is not set +CONFIG_SENSORS_EMC6W201=m +CONFIG_SENSORS_SMSC47M1=m +CONFIG_SENSORS_SMSC47M192=m +CONFIG_SENSORS_SMSC47B397=m +CONFIG_SENSORS_SCH56XX_COMMON=m +CONFIG_SENSORS_SCH5627=m +CONFIG_SENSORS_SCH5636=m +# CONFIG_SENSORS_STTS751 is not set +CONFIG_SENSORS_ADC128D818=m +CONFIG_SENSORS_ADS7828=m +CONFIG_SENSORS_ADS7871=m +CONFIG_SENSORS_AMC6821=m +CONFIG_SENSORS_INA209=m +CONFIG_SENSORS_INA2XX=m +# CONFIG_SENSORS_INA238 is not set +# CONFIG_SENSORS_INA3221 is not set +CONFIG_SENSORS_TC74=m +CONFIG_SENSORS_THMC50=m +CONFIG_SENSORS_TMP102=m +CONFIG_SENSORS_TMP103=m +# CONFIG_SENSORS_TMP108 is not set +CONFIG_SENSORS_TMP401=m +CONFIG_SENSORS_TMP421=m +# CONFIG_SENSORS_TMP464 is not set +# CONFIG_SENSORS_TMP513 is not set +CONFIG_SENSORS_VEXPRESS=m +CONFIG_SENSORS_VIA686A=m +CONFIG_SENSORS_VT1211=m +CONFIG_SENSORS_VT8231=m +# CONFIG_SENSORS_W83773G is not set +CONFIG_SENSORS_W83781D=m +CONFIG_SENSORS_W83791D=m +CONFIG_SENSORS_W83792D=m +CONFIG_SENSORS_W83793=m +CONFIG_SENSORS_W83795=m +# CONFIG_SENSORS_W83795_FANCTRL is not set +CONFIG_SENSORS_W83L785TS=m +CONFIG_SENSORS_W83L786NG=m +CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83627EHF=m +CONFIG_SENSORS_XGENE=m + +# +# ACPI drivers +# +CONFIG_SENSORS_ACPI_POWER=m +CONFIG_THERMAL=y +# CONFIG_THERMAL_NETLINK is not set +# CONFIG_THERMAL_STATISTICS is not set +CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 +CONFIG_THERMAL_HWMON=y +CONFIG_THERMAL_OF=y +# CONFIG_THERMAL_WRITABLE_TRIPS is not set +CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y +# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set +# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set +CONFIG_THERMAL_GOV_FAIR_SHARE=y +CONFIG_THERMAL_GOV_STEP_WISE=y +# CONFIG_THERMAL_GOV_BANG_BANG is not set +CONFIG_THERMAL_GOV_USER_SPACE=y +CONFIG_CPU_THERMAL=y +CONFIG_CPU_FREQ_THERMAL=y +CONFIG_THERMAL_EMULATION=y +# CONFIG_THERMAL_MMIO is not set +CONFIG_HISI_THERMAL=m + +# +# Qualcomm thermal drivers +# +# CONFIG_QCOM_LMH is not set +# end of Qualcomm thermal drivers + +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_CORE=y +# CONFIG_WATCHDOG_NOWAYOUT is not set +CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y +CONFIG_WATCHDOG_OPEN_TIMEOUT=0 +CONFIG_WATCHDOG_SYSFS=y +# CONFIG_WATCHDOG_HRTIMER_PRETIMEOUT is not set + +# +# Watchdog Pretimeout Governors +# +# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set + +# +# Watchdog Device Drivers +# +CONFIG_SOFT_WATCHDOG=m +CONFIG_GPIO_WATCHDOG=m +# CONFIG_WDAT_WDT is not set +# CONFIG_XILINX_WATCHDOG is not set +# CONFIG_XILINX_WINDOW_WATCHDOG is not set +# CONFIG_ZIIRAVE_WATCHDOG is not set +CONFIG_ARM_SP805_WATCHDOG=m +CONFIG_ARM_SBSA_WATCHDOG=m +# CONFIG_CADENCE_WATCHDOG is not set +# CONFIG_DW_WATCHDOG is not set +# CONFIG_MAX63XX_WATCHDOG is not set +# CONFIG_QCOM_WDT is not set +# CONFIG_ARM_SMC_WATCHDOG is not set +CONFIG_ALIM7101_WDT=m +CONFIG_I6300ESB_WDT=m +# CONFIG_HP_WATCHDOG is not set +CONFIG_MARVELL_GTI_WDT=y +# CONFIG_MEN_A21_WDT is not set + +# +# PCI-based Watchdog Cards +# +CONFIG_PCIPCWATCHDOG=m +CONFIG_WDTPCI=m + +# +# USB-based Watchdog Cards +# +CONFIG_USBPCWATCHDOG=m +CONFIG_SSB_POSSIBLE=y +# CONFIG_SSB is not set +CONFIG_BCMA_POSSIBLE=y +CONFIG_BCMA=m +CONFIG_BCMA_HOST_PCI_POSSIBLE=y +CONFIG_BCMA_HOST_PCI=y +# CONFIG_BCMA_HOST_SOC is not set +CONFIG_BCMA_DRIVER_PCI=y +CONFIG_BCMA_DRIVER_GMAC_CMN=y +CONFIG_BCMA_DRIVER_GPIO=y +# CONFIG_BCMA_DEBUG is not set + +# +# Multifunction device drivers +# +CONFIG_MFD_CORE=m +# CONFIG_MFD_ACT8945A is not set +# CONFIG_MFD_AS3711 is not set +# CONFIG_MFD_SMPRO is not set +# CONFIG_MFD_AS3722 is not set +# CONFIG_PMIC_ADP5520 is not set +# CONFIG_MFD_AAT2870_CORE is not set +# CONFIG_MFD_ATMEL_FLEXCOM is not set +# CONFIG_MFD_ATMEL_HLCDC is not set +# CONFIG_MFD_BCM590XX is not set +# CONFIG_MFD_BD9571MWV is not set +# CONFIG_MFD_AXP20X_I2C is not set +# CONFIG_MFD_CS42L43_I2C is not set +# CONFIG_MFD_MADERA is not set +# CONFIG_MFD_MAX5970 is not set +# CONFIG_PMIC_DA903X is not set +# CONFIG_MFD_DA9052_SPI is not set +# CONFIG_MFD_DA9052_I2C is not set +# CONFIG_MFD_DA9055 is not set +# CONFIG_MFD_DA9062 is not set +# CONFIG_MFD_DA9063 is not set +# CONFIG_MFD_DA9150 is not set +# CONFIG_MFD_DLN2 is not set +# CONFIG_MFD_GATEWORKS_GSC is not set +# CONFIG_MFD_MC13XXX_SPI is not set +# CONFIG_MFD_MC13XXX_I2C is not set +# CONFIG_MFD_MP2629 is not set +# CONFIG_MFD_HI6421_PMIC is not set +# CONFIG_MFD_HI655X_PMIC is not set +# CONFIG_LPC_ICH is not set +# CONFIG_LPC_SCH is not set +# CONFIG_MFD_IQS62X is not set +# CONFIG_MFD_JANZ_CMODIO is not set +# CONFIG_MFD_KEMPLD is not set +# CONFIG_MFD_88PM800 is not set +# CONFIG_MFD_88PM805 is not set +# CONFIG_MFD_88PM860X is not set +# CONFIG_MFD_MAX14577 is not set +# CONFIG_MFD_MAX77541 is not set +# CONFIG_MFD_MAX77620 is not set +# CONFIG_MFD_MAX77650 is not set +# CONFIG_MFD_MAX77686 is not set +# CONFIG_MFD_MAX77693 is not set +# CONFIG_MFD_MAX77714 is not set +# CONFIG_MFD_MAX77843 is not set +# CONFIG_MFD_MAX8907 is not set +# CONFIG_MFD_MAX8925 is not set +# CONFIG_MFD_MAX8997 is not set +# CONFIG_MFD_MAX8998 is not set +# CONFIG_MFD_MT6360 is not set +# CONFIG_MFD_MT6370 is not set +# CONFIG_MFD_MT6397 is not set +# CONFIG_MFD_MENF21BMC is not set +# CONFIG_MFD_OCELOT is not set +# CONFIG_EZX_PCAP is not set +# CONFIG_MFD_CPCAP is not set +# CONFIG_MFD_VIPERBOARD is not set +# CONFIG_MFD_NTXEC is not set +# CONFIG_MFD_RETU is not set +# CONFIG_MFD_PCF50633 is not set +# CONFIG_MFD_QCOM_RPM is not set +# CONFIG_MFD_SY7636A is not set +# CONFIG_MFD_RDC321X is not set +# CONFIG_MFD_RT4831 is not set +# CONFIG_MFD_RT5033 is not set +# CONFIG_MFD_RT5120 is not set +# CONFIG_MFD_RC5T583 is not set +# CONFIG_MFD_RK8XX_I2C is not set +# CONFIG_MFD_RK8XX_SPI is not set +# CONFIG_MFD_RN5T618 is not set +# CONFIG_MFD_SEC_CORE is not set +# CONFIG_MFD_SI476X_CORE is not set +# CONFIG_MFD_SM501 is not set +# CONFIG_MFD_SKY81452 is not set +# CONFIG_MFD_STMPE is not set +CONFIG_MFD_SYSCON=y +# CONFIG_MFD_LP3943 is not set +# CONFIG_MFD_LP8788 is not set +# CONFIG_MFD_TI_LMU is not set +# CONFIG_MFD_PALMAS is not set +# CONFIG_TPS6105X is not set +# CONFIG_TPS65010 is not set +# CONFIG_TPS6507X is not set +# CONFIG_MFD_TPS65086 is not set +# CONFIG_MFD_TPS65090 is not set +# CONFIG_MFD_TPS65217 is not set +# CONFIG_MFD_TI_LP873X is not set +# CONFIG_MFD_TI_LP87565 is not set +# CONFIG_MFD_TPS65218 is not set +# CONFIG_MFD_TPS65219 is not set +# CONFIG_MFD_TPS6586X is not set +# CONFIG_MFD_TPS65910 is not set +# CONFIG_MFD_TPS65912_I2C is not set +# CONFIG_MFD_TPS65912_SPI is not set +# CONFIG_MFD_TPS6594_I2C is not set +# CONFIG_MFD_TPS6594_SPI is not set +# CONFIG_TWL4030_CORE is not set +# CONFIG_TWL6040_CORE is not set +# CONFIG_MFD_WL1273_CORE is not set +# CONFIG_MFD_LM3533 is not set +# CONFIG_MFD_TC3589X is not set +# CONFIG_MFD_TQMX86 is not set +# CONFIG_MFD_VX855 is not set +# CONFIG_MFD_LOCHNAGAR is not set +# CONFIG_MFD_ARIZONA_I2C is not set +# CONFIG_MFD_ARIZONA_SPI is not set +# CONFIG_MFD_WM8400 is not set +# CONFIG_MFD_WM831X_I2C is not set +# CONFIG_MFD_WM831X_SPI is not set +# CONFIG_MFD_WM8350_I2C is not set +# CONFIG_MFD_WM8994 is not set +# CONFIG_MFD_ROHM_BD718XX is not set +# CONFIG_MFD_ROHM_BD71828 is not set +# CONFIG_MFD_ROHM_BD957XMUF is not set +# CONFIG_MFD_STPMIC1 is not set +# CONFIG_MFD_STMFX is not set +# CONFIG_MFD_ATC260X_I2C is not set +# CONFIG_MFD_QCOM_PM8008 is not set +# CONFIG_MFD_VEXPRESS_SYSREG is not set +# CONFIG_MFD_INTEL_M10_BMC_SPI is not set +# CONFIG_MFD_RSMU_I2C is not set +# CONFIG_MFD_RSMU_SPI is not set +# end of Multifunction device drivers + +CONFIG_REGULATOR=y +# CONFIG_REGULATOR_DEBUG is not set +# CONFIG_REGULATOR_FIXED_VOLTAGE is not set +# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set +# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set +# CONFIG_REGULATOR_88PG86X is not set +# CONFIG_REGULATOR_ACT8865 is not set +# CONFIG_REGULATOR_AD5398 is not set +# CONFIG_REGULATOR_AW37503 is not set +# CONFIG_REGULATOR_DA9121 is not set +# CONFIG_REGULATOR_DA9210 is not set +# CONFIG_REGULATOR_DA9211 is not set +# CONFIG_REGULATOR_FAN53555 is not set +# CONFIG_REGULATOR_FAN53880 is not set +# CONFIG_REGULATOR_GPIO is not set +# CONFIG_REGULATOR_ISL9305 is not set +# CONFIG_REGULATOR_ISL6271A is not set +# CONFIG_REGULATOR_LP3971 is not set +# CONFIG_REGULATOR_LP3972 is not set +# CONFIG_REGULATOR_LP872X is not set +# CONFIG_REGULATOR_LP8755 is not set +# CONFIG_REGULATOR_LTC3589 is not set +# CONFIG_REGULATOR_LTC3676 is not set +# CONFIG_REGULATOR_MAX1586 is not set +# CONFIG_REGULATOR_MAX77857 is not set +# CONFIG_REGULATOR_MAX8649 is not set +# CONFIG_REGULATOR_MAX8660 is not set +# CONFIG_REGULATOR_MAX8893 is not set +# CONFIG_REGULATOR_MAX8952 is not set +# CONFIG_REGULATOR_MAX8973 is not set +# CONFIG_REGULATOR_MAX20086 is not set +# CONFIG_REGULATOR_MAX20411 is not set +# CONFIG_REGULATOR_MAX77826 is not set +# CONFIG_REGULATOR_MCP16502 is not set +# CONFIG_REGULATOR_MP5416 is not set +# CONFIG_REGULATOR_MP8859 is not set +# CONFIG_REGULATOR_MP886X is not set +# CONFIG_REGULATOR_MPQ7920 is not set +# CONFIG_REGULATOR_MT6311 is not set +# CONFIG_REGULATOR_PCA9450 is not set +# CONFIG_REGULATOR_PF8X00 is not set +# CONFIG_REGULATOR_PFUZE100 is not set +# CONFIG_REGULATOR_PV88060 is not set +# CONFIG_REGULATOR_PV88080 is not set +# CONFIG_REGULATOR_PV88090 is not set +# CONFIG_REGULATOR_PWM is not set +# CONFIG_REGULATOR_QCOM_REFGEN is not set +# CONFIG_REGULATOR_RAA215300 is not set +# CONFIG_REGULATOR_RASPBERRYPI_TOUCHSCREEN_ATTINY is not set +# CONFIG_REGULATOR_RT4801 is not set +# CONFIG_REGULATOR_RT4803 is not set +# CONFIG_REGULATOR_RT5190A is not set +# CONFIG_REGULATOR_RT5739 is not set +# CONFIG_REGULATOR_RT5759 is not set +# CONFIG_REGULATOR_RT6160 is not set +# CONFIG_REGULATOR_RT6190 is not set +# CONFIG_REGULATOR_RT6245 is not set +# CONFIG_REGULATOR_RTQ2134 is not set +# CONFIG_REGULATOR_RTMV20 is not set +# CONFIG_REGULATOR_RTQ6752 is not set +# CONFIG_REGULATOR_RTQ2208 is not set +# CONFIG_REGULATOR_SLG51000 is not set +# CONFIG_REGULATOR_SY8106A is not set +# CONFIG_REGULATOR_SY8824X is not set +# CONFIG_REGULATOR_SY8827N is not set +# CONFIG_REGULATOR_TPS51632 is not set +# CONFIG_REGULATOR_TPS62360 is not set +# CONFIG_REGULATOR_TPS6286X is not set +# CONFIG_REGULATOR_TPS6287X is not set +# CONFIG_REGULATOR_TPS65023 is not set +# CONFIG_REGULATOR_TPS6507X is not set +# CONFIG_REGULATOR_TPS65132 is not set +# CONFIG_REGULATOR_TPS6524X is not set +# CONFIG_REGULATOR_VCTRL is not set +# CONFIG_REGULATOR_VEXPRESS is not set +# CONFIG_REGULATOR_VQMMC_IPQ4019 is not set +# CONFIG_RC_CORE is not set + +# +# CEC support +# +# CONFIG_MEDIA_CEC_SUPPORT is not set +# end of CEC support + +CONFIG_MEDIA_SUPPORT=m +# CONFIG_MEDIA_SUPPORT_FILTER is not set +# CONFIG_MEDIA_SUBDRV_AUTOSELECT is not set + +# +# Media device types +# +CONFIG_MEDIA_CAMERA_SUPPORT=y +CONFIG_MEDIA_ANALOG_TV_SUPPORT=y +CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y +CONFIG_MEDIA_RADIO_SUPPORT=y +CONFIG_MEDIA_SDR_SUPPORT=y +CONFIG_MEDIA_PLATFORM_SUPPORT=y +CONFIG_MEDIA_TEST_SUPPORT=y +# end of Media device types + +# +# Media core support +# +CONFIG_VIDEO_DEV=m +CONFIG_MEDIA_CONTROLLER=y +CONFIG_DVB_CORE=m +# end of Media core support + +# +# Video4Linux options +# +CONFIG_VIDEO_V4L2_I2C=y +CONFIG_VIDEO_V4L2_SUBDEV_API=y +# CONFIG_VIDEO_ADV_DEBUG is not set +CONFIG_VIDEO_FIXED_MINOR_RANGES=y +# CONFIG_V4L2_FLASH_LED_CLASS is not set +CONFIG_V4L2_FWNODE=m +CONFIG_V4L2_ASYNC=m +# end of Video4Linux options + +# +# Media controller options +# +# CONFIG_MEDIA_CONTROLLER_DVB is not set +# end of Media controller options + +# +# Digital TV options +# +# CONFIG_DVB_MMAP is not set +# CONFIG_DVB_NET is not set +CONFIG_DVB_MAX_ADAPTERS=16 +# CONFIG_DVB_DYNAMIC_MINORS is not set +# CONFIG_DVB_DEMUX_SECTION_LOSS_LOG is not set +# CONFIG_DVB_ULE_DEBUG is not set +# end of Digital TV options + +# +# Media drivers +# + +# +# Media drivers +# +CONFIG_MEDIA_USB_SUPPORT=y + +# +# Webcam devices +# +# CONFIG_USB_GSPCA is not set +# CONFIG_USB_PWC is not set +# CONFIG_USB_S2255 is not set +CONFIG_USB_VIDEO_CLASS=m +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y + +# +# Analog TV USB devices +# +# CONFIG_VIDEO_HDPVR is not set +# CONFIG_VIDEO_PVRUSB2 is not set +# CONFIG_VIDEO_STK1160 is not set + +# +# Analog/digital TV USB devices +# +# CONFIG_VIDEO_AU0828 is not set +# CONFIG_VIDEO_CX231XX is not set + +# +# Digital TV USB devices +# +# CONFIG_DVB_AS102 is not set +# CONFIG_DVB_B2C2_FLEXCOP_USB is not set +# CONFIG_DVB_USB_V2 is not set +# CONFIG_SMS_USB_DRV is not set +# CONFIG_DVB_TTUSB_BUDGET is not set +# CONFIG_DVB_TTUSB_DEC is not set + +# +# Webcam, TV (analog/digital) USB devices +# +# CONFIG_VIDEO_EM28XX is not set + +# +# Software defined radio USB devices +# +# CONFIG_USB_AIRSPY is not set +# CONFIG_USB_HACKRF is not set +# CONFIG_USB_MSI2500 is not set +# CONFIG_MEDIA_PCI_SUPPORT is not set +CONFIG_RADIO_ADAPTERS=m +# CONFIG_RADIO_MAXIRADIO is not set +# CONFIG_RADIO_SAA7706H is not set +# CONFIG_RADIO_SHARK is not set +# CONFIG_RADIO_SHARK2 is not set +# CONFIG_RADIO_SI4713 is not set +# CONFIG_RADIO_TEA5764 is not set +# CONFIG_RADIO_TEF6862 is not set +# CONFIG_RADIO_WL1273 is not set +# CONFIG_USB_DSBR is not set +# CONFIG_USB_KEENE is not set +# CONFIG_USB_MA901 is not set +# CONFIG_USB_MR800 is not set +# CONFIG_USB_RAREMONO is not set +# CONFIG_RADIO_SI470X is not set +CONFIG_MEDIA_PLATFORM_DRIVERS=y +# CONFIG_V4L_PLATFORM_DRIVERS is not set +# CONFIG_SDR_PLATFORM_DRIVERS is not set +# CONFIG_DVB_PLATFORM_DRIVERS is not set +# CONFIG_V4L_MEM2MEM_DRIVERS is not set + +# +# Allegro DVT media platform drivers +# + +# +# Amlogic media platform drivers +# + +# +# Amphion drivers +# + +# +# Aspeed media platform drivers +# + +# +# Atmel media platform drivers +# + +# +# Cadence media platform drivers +# +# CONFIG_VIDEO_CADENCE_CSI2RX is not set +# CONFIG_VIDEO_CADENCE_CSI2TX is not set + +# +# Chips&Media media platform drivers +# + +# +# Intel media platform drivers +# + +# +# Marvell media platform drivers +# + +# +# Mediatek media platform drivers +# + +# +# Microchip Technology, Inc. media platform drivers +# + +# +# NVidia media platform drivers +# + +# +# NXP media platform drivers +# + +# +# Qualcomm media platform drivers +# + +# +# Renesas media platform drivers +# + +# +# Rockchip media platform drivers +# + +# +# Samsung media platform drivers +# + +# +# STMicroelectronics media platform drivers +# + +# +# Sunxi media platform drivers +# + +# +# Texas Instruments drivers +# + +# +# Verisilicon media platform drivers +# + +# +# VIA media platform drivers +# + +# +# Xilinx media platform drivers +# + +# +# MMC/SDIO DVB adapters +# +# CONFIG_SMS_SDIO_DRV is not set +# CONFIG_V4L_TEST_DRIVERS is not set +# CONFIG_DVB_TEST_DRIVERS is not set +CONFIG_UVC_COMMON=m +CONFIG_VIDEOBUF2_CORE=m +CONFIG_VIDEOBUF2_V4L2=m +CONFIG_VIDEOBUF2_MEMOPS=m +CONFIG_VIDEOBUF2_VMALLOC=m +# end of Media drivers + +# +# Media ancillary drivers +# +CONFIG_MEDIA_ATTACH=y +CONFIG_VIDEO_CAMERA_SENSOR=y +# CONFIG_VIDEO_AR0521 is not set +# CONFIG_VIDEO_HI556 is not set +# CONFIG_VIDEO_HI846 is not set +# CONFIG_VIDEO_HI847 is not set +# CONFIG_VIDEO_IMX208 is not set +# CONFIG_VIDEO_IMX214 is not set +# CONFIG_VIDEO_IMX219 is not set +# CONFIG_VIDEO_IMX258 is not set +# CONFIG_VIDEO_IMX274 is not set +# CONFIG_VIDEO_IMX290 is not set +# CONFIG_VIDEO_IMX296 is not set +# CONFIG_VIDEO_IMX319 is not set +# CONFIG_VIDEO_IMX334 is not set +# CONFIG_VIDEO_IMX335 is not set +# CONFIG_VIDEO_IMX355 is not set +# CONFIG_VIDEO_IMX412 is not set +# CONFIG_VIDEO_IMX415 is not set +# CONFIG_VIDEO_MT9M001 is not set +# CONFIG_VIDEO_MT9M111 is not set +# CONFIG_VIDEO_MT9P031 is not set +# CONFIG_VIDEO_MT9T112 is not set +# CONFIG_VIDEO_MT9V011 is not set +# CONFIG_VIDEO_MT9V032 is not set +# CONFIG_VIDEO_MT9V111 is not set +# CONFIG_VIDEO_OG01A1B is not set +# CONFIG_VIDEO_OV01A10 is not set +# CONFIG_VIDEO_OV02A10 is not set +# CONFIG_VIDEO_OV08D10 is not set +# CONFIG_VIDEO_OV08X40 is not set +# CONFIG_VIDEO_OV13858 is not set +# CONFIG_VIDEO_OV13B10 is not set +# CONFIG_VIDEO_OV2640 is not set +# CONFIG_VIDEO_OV2659 is not set +# CONFIG_VIDEO_OV2680 is not set +# CONFIG_VIDEO_OV2685 is not set +# CONFIG_VIDEO_OV2740 is not set +# CONFIG_VIDEO_OV4689 is not set +# CONFIG_VIDEO_OV5640 is not set +# CONFIG_VIDEO_OV5645 is not set +# CONFIG_VIDEO_OV5647 is not set +# CONFIG_VIDEO_OV5648 is not set +# CONFIG_VIDEO_OV5670 is not set +# CONFIG_VIDEO_OV5675 is not set +# CONFIG_VIDEO_OV5693 is not set +# CONFIG_VIDEO_OV5695 is not set +# CONFIG_VIDEO_OV6650 is not set +# CONFIG_VIDEO_OV7251 is not set +# CONFIG_VIDEO_OV7640 is not set +# CONFIG_VIDEO_OV7670 is not set +# CONFIG_VIDEO_OV772X is not set +# CONFIG_VIDEO_OV7740 is not set +# CONFIG_VIDEO_OV8856 is not set +# CONFIG_VIDEO_OV8858 is not set +# CONFIG_VIDEO_OV8865 is not set +# CONFIG_VIDEO_OV9282 is not set +# CONFIG_VIDEO_OV9640 is not set +# CONFIG_VIDEO_OV9650 is not set +# CONFIG_VIDEO_OV9734 is not set +# CONFIG_VIDEO_RDACM20 is not set +# CONFIG_VIDEO_RDACM21 is not set +# CONFIG_VIDEO_RJ54N1 is not set +# CONFIG_VIDEO_S5C73M3 is not set +# CONFIG_VIDEO_S5K5BAF is not set +# CONFIG_VIDEO_S5K6A3 is not set +# CONFIG_VIDEO_ST_VGXY61 is not set +# CONFIG_VIDEO_CCS is not set +# CONFIG_VIDEO_ET8EK8 is not set + +# +# Lens drivers +# +# CONFIG_VIDEO_AD5820 is not set +# CONFIG_VIDEO_AK7375 is not set +# CONFIG_VIDEO_DW9714 is not set +# CONFIG_VIDEO_DW9719 is not set +# CONFIG_VIDEO_DW9768 is not set +# CONFIG_VIDEO_DW9807_VCM is not set +# end of Lens drivers + +# +# Flash devices +# +# CONFIG_VIDEO_ADP1653 is not set +# CONFIG_VIDEO_LM3560 is not set +# CONFIG_VIDEO_LM3646 is not set +# end of Flash devices + +# +# Audio decoders, processors and mixers +# +# CONFIG_VIDEO_CS3308 is not set +# CONFIG_VIDEO_CS5345 is not set +# CONFIG_VIDEO_CS53L32A is not set +# CONFIG_VIDEO_MSP3400 is not set +# CONFIG_VIDEO_SONY_BTF_MPX is not set +# CONFIG_VIDEO_TDA7432 is not set +# CONFIG_VIDEO_TDA9840 is not set +# CONFIG_VIDEO_TEA6415C is not set +# CONFIG_VIDEO_TEA6420 is not set +# CONFIG_VIDEO_TLV320AIC23B is not set +# CONFIG_VIDEO_TVAUDIO is not set +# CONFIG_VIDEO_UDA1342 is not set +# CONFIG_VIDEO_VP27SMPX is not set +# CONFIG_VIDEO_WM8739 is not set +# CONFIG_VIDEO_WM8775 is not set +# end of Audio decoders, processors and mixers + +# +# RDS decoders +# +# CONFIG_VIDEO_SAA6588 is not set +# end of RDS decoders + +# +# Video decoders +# +# CONFIG_VIDEO_ADV7180 is not set +# CONFIG_VIDEO_ADV7183 is not set +# CONFIG_VIDEO_ADV748X is not set +# CONFIG_VIDEO_ADV7604 is not set +# CONFIG_VIDEO_ADV7842 is not set +# CONFIG_VIDEO_BT819 is not set +# CONFIG_VIDEO_BT856 is not set +# CONFIG_VIDEO_BT866 is not set +# CONFIG_VIDEO_ISL7998X is not set +# CONFIG_VIDEO_KS0127 is not set +# CONFIG_VIDEO_MAX9286 is not set +# CONFIG_VIDEO_ML86V7667 is not set +# CONFIG_VIDEO_SAA7110 is not set +# CONFIG_VIDEO_SAA711X is not set +# CONFIG_VIDEO_TC358743 is not set +# CONFIG_VIDEO_TC358746 is not set +# CONFIG_VIDEO_TVP514X is not set +# CONFIG_VIDEO_TVP5150 is not set +# CONFIG_VIDEO_TVP7002 is not set +# CONFIG_VIDEO_TW2804 is not set +# CONFIG_VIDEO_TW9903 is not set +# CONFIG_VIDEO_TW9906 is not set +# CONFIG_VIDEO_TW9910 is not set +# CONFIG_VIDEO_VPX3220 is not set + +# +# Video and audio decoders +# +# CONFIG_VIDEO_SAA717X is not set +# CONFIG_VIDEO_CX25840 is not set +# end of Video decoders + +# +# Video encoders +# +# CONFIG_VIDEO_ADV7170 is not set +# CONFIG_VIDEO_ADV7175 is not set +# CONFIG_VIDEO_ADV7343 is not set +# CONFIG_VIDEO_ADV7393 is not set +# CONFIG_VIDEO_ADV7511 is not set +# CONFIG_VIDEO_AK881X is not set +# CONFIG_VIDEO_SAA7127 is not set +# CONFIG_VIDEO_SAA7185 is not set +# CONFIG_VIDEO_THS8200 is not set +# end of Video encoders + +# +# Video improvement chips +# +# CONFIG_VIDEO_UPD64031A is not set +# CONFIG_VIDEO_UPD64083 is not set +# end of Video improvement chips + +# +# Audio/Video compression chips +# +# CONFIG_VIDEO_SAA6752HS is not set +# end of Audio/Video compression chips + +# +# SDR tuner chips +# +# CONFIG_SDR_MAX2175 is not set +# end of SDR tuner chips + +# +# Miscellaneous helper chips +# +# CONFIG_VIDEO_I2C is not set +# CONFIG_VIDEO_M52790 is not set +# CONFIG_VIDEO_ST_MIPID02 is not set +# CONFIG_VIDEO_THS7303 is not set +# end of Miscellaneous helper chips + +# +# Video serializers and deserializers +# +# CONFIG_VIDEO_DS90UB913 is not set +# CONFIG_VIDEO_DS90UB953 is not set +# CONFIG_VIDEO_DS90UB960 is not set +# end of Video serializers and deserializers + +# +# Media SPI Adapters +# +CONFIG_CXD2880_SPI_DRV=m +# CONFIG_VIDEO_GS1662 is not set +# end of Media SPI Adapters + +CONFIG_MEDIA_TUNER=m + +# +# Customize TV tuners +# +CONFIG_MEDIA_TUNER_E4000=m +CONFIG_MEDIA_TUNER_FC0011=m +CONFIG_MEDIA_TUNER_FC0012=m +CONFIG_MEDIA_TUNER_FC0013=m +CONFIG_MEDIA_TUNER_FC2580=m +CONFIG_MEDIA_TUNER_IT913X=m +CONFIG_MEDIA_TUNER_M88RS6000T=m +CONFIG_MEDIA_TUNER_MAX2165=m +CONFIG_MEDIA_TUNER_MC44S803=m +CONFIG_MEDIA_TUNER_MSI001=m +CONFIG_MEDIA_TUNER_MT2060=m +CONFIG_MEDIA_TUNER_MT2063=m +CONFIG_MEDIA_TUNER_MT20XX=m +CONFIG_MEDIA_TUNER_MT2131=m +CONFIG_MEDIA_TUNER_MT2266=m +CONFIG_MEDIA_TUNER_MXL301RF=m +CONFIG_MEDIA_TUNER_MXL5005S=m +CONFIG_MEDIA_TUNER_MXL5007T=m +CONFIG_MEDIA_TUNER_QM1D1B0004=m +CONFIG_MEDIA_TUNER_QM1D1C0042=m +CONFIG_MEDIA_TUNER_QT1010=m +CONFIG_MEDIA_TUNER_R820T=m +CONFIG_MEDIA_TUNER_SI2157=m +CONFIG_MEDIA_TUNER_SIMPLE=m +CONFIG_MEDIA_TUNER_TDA18212=m +CONFIG_MEDIA_TUNER_TDA18218=m +CONFIG_MEDIA_TUNER_TDA18250=m +CONFIG_MEDIA_TUNER_TDA18271=m +CONFIG_MEDIA_TUNER_TDA827X=m +CONFIG_MEDIA_TUNER_TDA8290=m +CONFIG_MEDIA_TUNER_TDA9887=m +CONFIG_MEDIA_TUNER_TEA5761=m +CONFIG_MEDIA_TUNER_TEA5767=m +CONFIG_MEDIA_TUNER_TUA9001=m +CONFIG_MEDIA_TUNER_XC2028=m +CONFIG_MEDIA_TUNER_XC4000=m +CONFIG_MEDIA_TUNER_XC5000=m +# end of Customize TV tuners + +# +# Customise DVB Frontends +# + +# +# Multistandard (satellite) frontends +# +CONFIG_DVB_M88DS3103=m +CONFIG_DVB_MXL5XX=m +CONFIG_DVB_STB0899=m +CONFIG_DVB_STB6100=m +CONFIG_DVB_STV090x=m +CONFIG_DVB_STV0910=m +CONFIG_DVB_STV6110x=m +CONFIG_DVB_STV6111=m + +# +# Multistandard (cable + terrestrial) frontends +# +CONFIG_DVB_DRXK=m +CONFIG_DVB_MN88472=m +CONFIG_DVB_MN88473=m +CONFIG_DVB_SI2165=m +CONFIG_DVB_TDA18271C2DD=m + +# +# DVB-S (satellite) frontends +# +CONFIG_DVB_CX24110=m +CONFIG_DVB_CX24116=m +CONFIG_DVB_CX24117=m +CONFIG_DVB_CX24120=m +CONFIG_DVB_CX24123=m +CONFIG_DVB_DS3000=m +CONFIG_DVB_MB86A16=m +CONFIG_DVB_MT312=m +CONFIG_DVB_S5H1420=m +CONFIG_DVB_SI21XX=m +CONFIG_DVB_STB6000=m +CONFIG_DVB_STV0288=m +CONFIG_DVB_STV0299=m +CONFIG_DVB_STV0900=m +CONFIG_DVB_STV6110=m +CONFIG_DVB_TDA10071=m +CONFIG_DVB_TDA10086=m +CONFIG_DVB_TDA8083=m +CONFIG_DVB_TDA8261=m +CONFIG_DVB_TDA826X=m +CONFIG_DVB_TS2020=m +CONFIG_DVB_TUA6100=m +CONFIG_DVB_TUNER_CX24113=m +CONFIG_DVB_TUNER_ITD1000=m +CONFIG_DVB_VES1X93=m +CONFIG_DVB_ZL10036=m +CONFIG_DVB_ZL10039=m + +# +# DVB-T (terrestrial) frontends +# +CONFIG_DVB_AF9013=m +CONFIG_DVB_CX22700=m +CONFIG_DVB_CX22702=m +CONFIG_DVB_CXD2820R=m +CONFIG_DVB_CXD2841ER=m +CONFIG_DVB_DIB3000MB=m +CONFIG_DVB_DIB3000MC=m +CONFIG_DVB_DIB7000M=m +CONFIG_DVB_DIB7000P=m +CONFIG_DVB_DIB9000=m +CONFIG_DVB_DRXD=m +CONFIG_DVB_EC100=m +CONFIG_DVB_L64781=m +CONFIG_DVB_MT352=m +CONFIG_DVB_NXT6000=m +CONFIG_DVB_RTL2830=m +CONFIG_DVB_RTL2832=m +CONFIG_DVB_RTL2832_SDR=m +CONFIG_DVB_S5H1432=m +CONFIG_DVB_SI2168=m +CONFIG_DVB_SP887X=m +CONFIG_DVB_STV0367=m +CONFIG_DVB_TDA10048=m +CONFIG_DVB_TDA1004X=m +CONFIG_DVB_ZD1301_DEMOD=m +CONFIG_DVB_ZL10353=m +CONFIG_DVB_CXD2880=m + +# +# DVB-C (cable) frontends +# +CONFIG_DVB_STV0297=m +CONFIG_DVB_TDA10021=m +CONFIG_DVB_TDA10023=m +CONFIG_DVB_VES1820=m + +# +# ATSC (North American/Korean Terrestrial/Cable DTV) frontends +# +CONFIG_DVB_AU8522=m +CONFIG_DVB_AU8522_DTV=m +CONFIG_DVB_AU8522_V4L=m +CONFIG_DVB_BCM3510=m +CONFIG_DVB_LG2160=m +CONFIG_DVB_LGDT3305=m +CONFIG_DVB_LGDT3306A=m +CONFIG_DVB_LGDT330X=m +CONFIG_DVB_MXL692=m +CONFIG_DVB_NXT200X=m +CONFIG_DVB_OR51132=m +CONFIG_DVB_OR51211=m +CONFIG_DVB_S5H1409=m +CONFIG_DVB_S5H1411=m + +# +# ISDB-T (terrestrial) frontends +# +CONFIG_DVB_DIB8000=m +CONFIG_DVB_MB86A20S=m +CONFIG_DVB_S921=m + +# +# ISDB-S (satellite) & ISDB-T (terrestrial) frontends +# +CONFIG_DVB_MN88443X=m +CONFIG_DVB_TC90522=m + +# +# Digital terrestrial only tuners/PLL +# +CONFIG_DVB_PLL=m +CONFIG_DVB_TUNER_DIB0070=m +CONFIG_DVB_TUNER_DIB0090=m + +# +# SEC control devices for DVB-S +# +CONFIG_DVB_A8293=m +CONFIG_DVB_AF9033=m +CONFIG_DVB_ASCOT2E=m +CONFIG_DVB_ATBM8830=m +CONFIG_DVB_HELENE=m +CONFIG_DVB_HORUS3A=m +CONFIG_DVB_ISL6405=m +CONFIG_DVB_ISL6421=m +CONFIG_DVB_ISL6423=m +CONFIG_DVB_IX2505V=m +CONFIG_DVB_LGS8GL5=m +CONFIG_DVB_LGS8GXX=m +CONFIG_DVB_LNBH25=m +CONFIG_DVB_LNBH29=m +CONFIG_DVB_LNBP21=m +CONFIG_DVB_LNBP22=m +CONFIG_DVB_M88RS2000=m +CONFIG_DVB_TDA665x=m +CONFIG_DVB_DRX39XYJ=m + +# +# Common Interface (EN50221) controller drivers +# +CONFIG_DVB_CXD2099=m +CONFIG_DVB_SP2=m +# end of Customise DVB Frontends + +# +# Tools to develop new frontends +# +# CONFIG_DVB_DUMMY_FE is not set +# end of Media ancillary drivers + +# +# Graphics support +# +CONFIG_APERTURE_HELPERS=y +CONFIG_SCREEN_INFO=y +CONFIG_VIDEO_CMDLINE=y +CONFIG_VIDEO_NOMODESET=y +CONFIG_AUXDISPLAY=y +# CONFIG_HD44780 is not set +# CONFIG_IMG_ASCII_LCD is not set +# CONFIG_HT16K33 is not set +# CONFIG_LCD2S is not set +# CONFIG_CHARLCD_BL_OFF is not set +# CONFIG_CHARLCD_BL_ON is not set +CONFIG_CHARLCD_BL_FLASH=y +CONFIG_DRM=m +CONFIG_DRM_KMS_HELPER=m +# CONFIG_DRM_DEBUG_DP_MST_TOPOLOGY_REFS is not set +# CONFIG_DRM_DEBUG_MODESET_LOCK is not set +CONFIG_DRM_FBDEV_EMULATION=y +CONFIG_DRM_FBDEV_OVERALLOC=100 +# CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM is not set +CONFIG_DRM_LOAD_EDID_FIRMWARE=y +CONFIG_DRM_DISPLAY_HELPER=m +CONFIG_DRM_DISPLAY_DP_HELPER=y +CONFIG_DRM_DISPLAY_HDCP_HELPER=y +CONFIG_DRM_DISPLAY_HDMI_HELPER=y +CONFIG_DRM_DP_AUX_CHARDEV=y +# CONFIG_DRM_DP_CEC is not set +CONFIG_DRM_TTM=m +CONFIG_DRM_EXEC=m +CONFIG_DRM_BUDDY=m +CONFIG_DRM_VRAM_HELPER=m +CONFIG_DRM_TTM_HELPER=m +CONFIG_DRM_GEM_SHMEM_HELPER=m +CONFIG_DRM_SUBALLOC_HELPER=m +CONFIG_DRM_SCHED=m + +# +# I2C encoder or helper chips +# +CONFIG_DRM_I2C_CH7006=m +# CONFIG_DRM_I2C_SIL164 is not set +CONFIG_DRM_I2C_NXP_TDA998X=m +# CONFIG_DRM_I2C_NXP_TDA9950 is not set +# end of I2C encoder or helper chips + +# +# ARM devices +# +# CONFIG_DRM_HDLCD is not set +# CONFIG_DRM_MALI_DISPLAY is not set +# CONFIG_DRM_KOMEDA is not set +# end of ARM devices + +CONFIG_DRM_RADEON=m +CONFIG_DRM_RADEON_USERPTR=y +CONFIG_DRM_AMDGPU=m +# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_CIK=y +CONFIG_DRM_AMDGPU_USERPTR=y +# CONFIG_DRM_AMDGPU_WERROR is not set + +# +# ACP (Audio CoProcessor) Configuration +# +# CONFIG_DRM_AMD_ACP is not set +# end of ACP (Audio CoProcessor) Configuration + +# +# Display Engine Configuration +# +CONFIG_DRM_AMD_DC=y +CONFIG_DRM_AMD_DC_FP=y +# CONFIG_DEBUG_KERNEL_DC is not set +# CONFIG_DRM_AMD_SECURE_DISPLAY is not set +# end of Display Engine Configuration + +# CONFIG_HSA_AMD is not set +CONFIG_DRM_NOUVEAU=m +CONFIG_NOUVEAU_DEBUG=5 +CONFIG_NOUVEAU_DEBUG_DEFAULT=3 +# CONFIG_NOUVEAU_DEBUG_MMU is not set +# CONFIG_NOUVEAU_DEBUG_PUSH is not set +CONFIG_DRM_NOUVEAU_BACKLIGHT=y +# CONFIG_DRM_VGEM is not set +# CONFIG_DRM_VKMS is not set +# CONFIG_DRM_VMWGFX is not set +CONFIG_DRM_UDL=m +CONFIG_DRM_AST=m +CONFIG_DRM_MGAG200=m +CONFIG_DRM_QXL=m +CONFIG_DRM_VIRTIO_GPU=m +CONFIG_DRM_VIRTIO_GPU_KMS=y +# CONFIG_DRM_MSM is not set +CONFIG_DRM_PANEL=y + +# +# Display Panels +# +# CONFIG_DRM_PANEL_ABT_Y030XX067A is not set +# CONFIG_DRM_PANEL_ARM_VERSATILE is not set +# CONFIG_DRM_PANEL_AUO_A030JTN01 is not set +# CONFIG_DRM_PANEL_LVDS is not set +# CONFIG_DRM_PANEL_SIMPLE is not set +# CONFIG_DRM_PANEL_EDP is not set +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set +# CONFIG_DRM_PANEL_ILITEK_ILI9341 is not set +# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set +# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set +# CONFIG_DRM_PANEL_LG_LB035Q02 is not set +# CONFIG_DRM_PANEL_LG_LG4573 is not set +# CONFIG_DRM_PANEL_NEC_NL8048HL11 is not set +# CONFIG_DRM_PANEL_NEWVISION_NV3052C is not set +# CONFIG_DRM_PANEL_NOVATEK_NT39016 is not set +# CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set +# CONFIG_DRM_PANEL_ORISETECH_OTA5601A is not set +# CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20 is not set +# CONFIG_DRM_PANEL_SAMSUNG_DB7430 is not set +# CONFIG_DRM_PANEL_SAMSUNG_S6D27A1 is not set +# CONFIG_DRM_PANEL_SAMSUNG_S6D7AA0 is not set +# CONFIG_DRM_PANEL_SAMSUNG_S6E63M0 is not set +# CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 is not set +# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set +# CONFIG_DRM_PANEL_SEIKO_43WVF1G is not set +# CONFIG_DRM_PANEL_SHARP_LS037V7DW01 is not set +# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set +# CONFIG_DRM_PANEL_SONY_ACX565AKM is not set +# CONFIG_DRM_PANEL_TPO_TD028TTEC1 is not set +# CONFIG_DRM_PANEL_TPO_TD043MTEA1 is not set +# CONFIG_DRM_PANEL_TPO_TPG110 is not set +# CONFIG_DRM_PANEL_WIDECHIPS_WS2401 is not set +# end of Display Panels + +CONFIG_DRM_BRIDGE=y +CONFIG_DRM_PANEL_BRIDGE=y + +# +# Display Interface Bridges +# +# CONFIG_DRM_CHIPONE_ICN6211 is not set +# CONFIG_DRM_CHRONTEL_CH7033 is not set +# CONFIG_DRM_DISPLAY_CONNECTOR is not set +# CONFIG_DRM_ITE_IT6505 is not set +# CONFIG_DRM_LONTIUM_LT8912B is not set +# CONFIG_DRM_LONTIUM_LT9211 is not set +# CONFIG_DRM_LONTIUM_LT9611 is not set +# CONFIG_DRM_LONTIUM_LT9611UXC is not set +# CONFIG_DRM_ITE_IT66121 is not set +# CONFIG_DRM_LVDS_CODEC is not set +# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set +# CONFIG_DRM_NWL_MIPI_DSI is not set +# CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PARADE_PS8622 is not set +# CONFIG_DRM_PARADE_PS8640 is not set +# CONFIG_DRM_SAMSUNG_DSIM is not set +# CONFIG_DRM_SIL_SII8620 is not set +# CONFIG_DRM_SII902X is not set +# CONFIG_DRM_SII9234 is not set +# CONFIG_DRM_SIMPLE_BRIDGE is not set +# CONFIG_DRM_THINE_THC63LVD1024 is not set +# CONFIG_DRM_TOSHIBA_TC358762 is not set +# CONFIG_DRM_TOSHIBA_TC358764 is not set +# CONFIG_DRM_TOSHIBA_TC358767 is not set +# CONFIG_DRM_TOSHIBA_TC358768 is not set +# CONFIG_DRM_TOSHIBA_TC358775 is not set +# CONFIG_DRM_TI_DLPC3433 is not set +# CONFIG_DRM_TI_TFP410 is not set +# CONFIG_DRM_TI_SN65DSI83 is not set +# CONFIG_DRM_TI_SN65DSI86 is not set +# CONFIG_DRM_TI_TPD12S015 is not set +# CONFIG_DRM_ANALOGIX_ANX6345 is not set +# CONFIG_DRM_ANALOGIX_ANX78XX is not set +# CONFIG_DRM_ANALOGIX_ANX7625 is not set +# CONFIG_DRM_I2C_ADV7511 is not set +# CONFIG_DRM_CDNS_DSI is not set +# CONFIG_DRM_CDNS_MHDP8546 is not set +# end of Display Interface Bridges + +# CONFIG_DRM_LOONGSON is not set +# CONFIG_DRM_ETNAVIV is not set +CONFIG_DRM_HISI_HIBMC=m +# CONFIG_DRM_HISI_KIRIN is not set +# CONFIG_DRM_LOGICVC is not set +# CONFIG_DRM_ARCPGU is not set +CONFIG_DRM_BOCHS=m +CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_GM12U320 is not set +# CONFIG_DRM_PANEL_MIPI_DBI is not set +# CONFIG_DRM_SIMPLEDRM is not set +# CONFIG_TINYDRM_HX8357D is not set +# CONFIG_TINYDRM_ILI9163 is not set +# CONFIG_TINYDRM_ILI9225 is not set +# CONFIG_TINYDRM_ILI9341 is not set +# CONFIG_TINYDRM_ILI9486 is not set +# CONFIG_TINYDRM_MI0283QT is not set +# CONFIG_TINYDRM_REPAPER is not set +# CONFIG_TINYDRM_ST7586 is not set +# CONFIG_TINYDRM_ST7735R is not set +# CONFIG_DRM_PL111 is not set +# CONFIG_DRM_LIMA is not set +# CONFIG_DRM_PANFROST is not set +# CONFIG_DRM_TIDSS is not set +# CONFIG_DRM_GUD is not set +# CONFIG_DRM_SSD130X is not set +CONFIG_DRM_PHYTIUM=m +# CONFIG_DRM_LEGACY is not set +CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y + +# +# Frame buffer Devices +# +CONFIG_FB=y +# CONFIG_FB_CIRRUS is not set +# CONFIG_FB_PM2 is not set +# CONFIG_FB_ARMCLCD is not set +# CONFIG_FB_CYBER2000 is not set +# CONFIG_FB_ASILIANT is not set +# CONFIG_FB_IMSTT is not set +# CONFIG_FB_UVESA is not set +CONFIG_FB_EFI=y +# CONFIG_FB_OPENCORES is not set +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_NVIDIA is not set +# CONFIG_FB_RIVA is not set +# CONFIG_FB_I740 is not set +# CONFIG_FB_MATROX is not set +# CONFIG_FB_RADEON is not set +# CONFIG_FB_ATY128 is not set +# CONFIG_FB_ATY is not set +# CONFIG_FB_S3 is not set +# CONFIG_FB_SAVAGE is not set +# CONFIG_FB_SIS is not set +# CONFIG_FB_NEOMAGIC is not set +# CONFIG_FB_KYRO is not set +# CONFIG_FB_3DFX is not set +# CONFIG_FB_VOODOO1 is not set +# CONFIG_FB_VT8623 is not set +# CONFIG_FB_TRIDENT is not set +# CONFIG_FB_ARK is not set +# CONFIG_FB_PM3 is not set +# CONFIG_FB_CARMINE is not set +# CONFIG_FB_SMSCUFX is not set +# CONFIG_FB_UDL is not set +# CONFIG_FB_IBM_GXT4500 is not set +# CONFIG_FB_VIRTUAL is not set +# CONFIG_FB_METRONOME is not set +# CONFIG_FB_MB862XX is not set +CONFIG_FB_SIMPLE=y +CONFIG_FB_SSD1307=m +# CONFIG_FB_SM712 is not set +# CONFIG_FB_LS2K500 is not set +CONFIG_FB_CORE=y +CONFIG_FB_NOTIFY=y +# CONFIG_FIRMWARE_EDID is not set +CONFIG_FB_DEVICE=y +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_IMAGEBLIT=y +CONFIG_FB_SYS_FILLRECT=y +CONFIG_FB_SYS_COPYAREA=y +CONFIG_FB_SYS_IMAGEBLIT=y +# CONFIG_FB_FOREIGN_ENDIAN is not set +CONFIG_FB_SYS_FOPS=y +CONFIG_FB_DEFERRED_IO=y +CONFIG_FB_IOMEM_FOPS=y +CONFIG_FB_IOMEM_HELPERS=y +CONFIG_FB_SYSMEM_HELPERS=y +CONFIG_FB_SYSMEM_HELPERS_DEFERRED=y +CONFIG_FB_BACKLIGHT=m +CONFIG_FB_MODE_HELPERS=y +CONFIG_FB_TILEBLITTING=y +# end of Frame buffer Devices + +# +# Backlight & LCD device support +# +CONFIG_LCD_CLASS_DEVICE=m +# CONFIG_LCD_L4F00242T03 is not set +# CONFIG_LCD_LMS283GF05 is not set +# CONFIG_LCD_LTV350QV is not set +# CONFIG_LCD_ILI922X is not set +# CONFIG_LCD_ILI9320 is not set +# CONFIG_LCD_TDO24M is not set +# CONFIG_LCD_VGG2432A4 is not set +CONFIG_LCD_PLATFORM=m +# CONFIG_LCD_AMS369FG06 is not set +# CONFIG_LCD_LMS501KF03 is not set +# CONFIG_LCD_HX8357 is not set +# CONFIG_LCD_OTM3225A is not set +CONFIG_BACKLIGHT_CLASS_DEVICE=y +# CONFIG_BACKLIGHT_KTD253 is not set +# CONFIG_BACKLIGHT_KTZ8866 is not set +CONFIG_BACKLIGHT_PWM=m +# CONFIG_BACKLIGHT_QCOM_WLED is not set +# CONFIG_BACKLIGHT_ADP8860 is not set +# CONFIG_BACKLIGHT_ADP8870 is not set +# CONFIG_BACKLIGHT_LM3630A is not set +# CONFIG_BACKLIGHT_LM3639 is not set +CONFIG_BACKLIGHT_LP855X=m +CONFIG_BACKLIGHT_GPIO=m +# CONFIG_BACKLIGHT_LV5207LP is not set +# CONFIG_BACKLIGHT_BD6107 is not set +# CONFIG_BACKLIGHT_ARCXCNN is not set +# CONFIG_BACKLIGHT_LED is not set +# end of Backlight & LCD device support + +CONFIG_HDMI=y + +# +# Console display driver support +# +CONFIG_DUMMY_CONSOLE=y +CONFIG_DUMMY_CONSOLE_COLUMNS=80 +CONFIG_DUMMY_CONSOLE_ROWS=25 +CONFIG_FRAMEBUFFER_CONSOLE=y +# CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION is not set +CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y +CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set +# end of Console display driver support + +CONFIG_LOGO=y +# CONFIG_LOGO_LINUX_MONO is not set +# CONFIG_LOGO_LINUX_VGA16 is not set +CONFIG_LOGO_LINUX_CLUT224=y +# end of Graphics support + +# CONFIG_DRM_ACCEL is not set +CONFIG_SOUND=m +# CONFIG_SND is not set +CONFIG_HID_SUPPORT=y +CONFIG_HID=y +CONFIG_HID_BATTERY_STRENGTH=y +CONFIG_HIDRAW=y +CONFIG_UHID=m +CONFIG_HID_GENERIC=y + +# +# Special HID drivers +# +CONFIG_HID_A4TECH=y +# CONFIG_HID_ACCUTOUCH is not set +CONFIG_HID_ACRUX=m +# CONFIG_HID_ACRUX_FF is not set +CONFIG_HID_APPLE=y +CONFIG_HID_APPLEIR=m +# CONFIG_HID_ASUS is not set +CONFIG_HID_AUREAL=m +CONFIG_HID_BELKIN=y +CONFIG_HID_BETOP_FF=m +# CONFIG_HID_BIGBEN_FF is not set +CONFIG_HID_CHERRY=y +CONFIG_HID_CHICONY=y +CONFIG_HID_CORSAIR=m +# CONFIG_HID_COUGAR is not set +# CONFIG_HID_MACALLY is not set +# CONFIG_HID_CMEDIA is not set +# CONFIG_HID_CP2112 is not set +# CONFIG_HID_CREATIVE_SB0540 is not set +CONFIG_HID_CYPRESS=y +CONFIG_HID_DRAGONRISE=m +# CONFIG_DRAGONRISE_FF is not set +# CONFIG_HID_EMS_FF is not set +# CONFIG_HID_ELAN is not set +CONFIG_HID_ELECOM=m +CONFIG_HID_ELO=m +# CONFIG_HID_EVISION is not set +CONFIG_HID_EZKEY=y +# CONFIG_HID_FT260 is not set +CONFIG_HID_GEMBIRD=m +CONFIG_HID_GFRM=m +# CONFIG_HID_GLORIOUS is not set +CONFIG_HID_HOLTEK=m +# CONFIG_HOLTEK_FF is not set +# CONFIG_HID_GOOGLE_STADIA_FF is not set +# CONFIG_HID_VIVALDI is not set +CONFIG_HID_GT683R=m +CONFIG_HID_KEYTOUCH=m +CONFIG_HID_KYE=m +CONFIG_HID_UCLOGIC=m +CONFIG_HID_WALTOP=m +# CONFIG_HID_VIEWSONIC is not set +# CONFIG_HID_VRC2 is not set +# CONFIG_HID_XIAOMI is not set +CONFIG_HID_GYRATION=m +CONFIG_HID_ICADE=m +CONFIG_HID_ITE=y +# CONFIG_HID_JABRA is not set +CONFIG_HID_TWINHAN=m +CONFIG_HID_KENSINGTON=y +CONFIG_HID_LCPOWER=m +CONFIG_HID_LED=m +CONFIG_HID_LENOVO=m +# CONFIG_HID_LETSKETCH is not set +CONFIG_HID_LOGITECH=y +CONFIG_HID_LOGITECH_DJ=m +CONFIG_HID_LOGITECH_HIDPP=m +# CONFIG_LOGITECH_FF is not set +# CONFIG_LOGIRUMBLEPAD2_FF is not set +# CONFIG_LOGIG940_FF is not set +# CONFIG_LOGIWHEELS_FF is not set +CONFIG_HID_MAGICMOUSE=y +# CONFIG_HID_MALTRON is not set +# CONFIG_HID_MAYFLASH is not set +# CONFIG_HID_MEGAWORLD_FF is not set +# CONFIG_HID_REDRAGON is not set +CONFIG_HID_MICROSOFT=y +CONFIG_HID_MONTEREY=y +CONFIG_HID_MULTITOUCH=m +# CONFIG_HID_NINTENDO is not set +# CONFIG_HID_NTI is not set +CONFIG_HID_NTRIG=y +CONFIG_HID_ORTEK=m +CONFIG_HID_PANTHERLORD=m +# CONFIG_PANTHERLORD_FF is not set +CONFIG_HID_PENMOUNT=m +CONFIG_HID_PETALYNX=m +CONFIG_HID_PICOLCD=m +CONFIG_HID_PICOLCD_FB=y +CONFIG_HID_PICOLCD_BACKLIGHT=y +CONFIG_HID_PICOLCD_LCD=y +CONFIG_HID_PICOLCD_LEDS=y +CONFIG_HID_PLANTRONICS=m +# CONFIG_HID_PXRC is not set +# CONFIG_HID_RAZER is not set +CONFIG_HID_PRIMAX=m +# CONFIG_HID_RETRODE is not set +CONFIG_HID_ROCCAT=m +CONFIG_HID_SAITEK=m +CONFIG_HID_SAMSUNG=m +# CONFIG_HID_SEMITEK is not set +# CONFIG_HID_SIGMAMICRO is not set +CONFIG_HID_SONY=m +CONFIG_SONY_FF=y +CONFIG_HID_SPEEDLINK=m +# CONFIG_HID_STEAM is not set +CONFIG_HID_STEELSERIES=m +CONFIG_HID_SUNPLUS=m +CONFIG_HID_RMI=m +CONFIG_HID_GREENASIA=m +# CONFIG_GREENASIA_FF is not set +CONFIG_HID_SMARTJOYPLUS=m +# CONFIG_SMARTJOYPLUS_FF is not set +CONFIG_HID_TIVO=m +CONFIG_HID_TOPSEED=m +# CONFIG_HID_TOPRE is not set +CONFIG_HID_THINGM=m +CONFIG_HID_THRUSTMASTER=m +# CONFIG_THRUSTMASTER_FF is not set +# CONFIG_HID_UDRAW_PS3 is not set +# CONFIG_HID_U2FZERO is not set +CONFIG_HID_WACOM=m +CONFIG_HID_WIIMOTE=m +CONFIG_HID_XINMO=m +CONFIG_HID_ZEROPLUS=m +# CONFIG_ZEROPLUS_FF is not set +CONFIG_HID_ZYDACRON=m +CONFIG_HID_SENSOR_HUB=m +# CONFIG_HID_SENSOR_CUSTOM_SENSOR is not set +# CONFIG_HID_ALPS is not set +# CONFIG_HID_MCP2221 is not set +# end of Special HID drivers + +# +# HID-BPF support +# +# CONFIG_HID_BPF is not set +# end of HID-BPF support + +# +# USB HID support +# +CONFIG_USB_HID=y +CONFIG_HID_PID=y +CONFIG_USB_HIDDEV=y +# end of USB HID support + +CONFIG_I2C_HID=m +# CONFIG_I2C_HID_ACPI is not set +# CONFIG_I2C_HID_OF is not set +# CONFIG_I2C_HID_OF_ELAN is not set +# CONFIG_I2C_HID_OF_GOODIX is not set +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +CONFIG_USB_SUPPORT=y +CONFIG_USB_COMMON=y +CONFIG_USB_LED_TRIG=y +CONFIG_USB_ULPI_BUS=m +# CONFIG_USB_CONN_GPIO is not set +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB=y +CONFIG_USB_PCI=y +CONFIG_USB_ANNOUNCE_NEW_DEVICES=y + +# +# Miscellaneous USB options +# +CONFIG_USB_DEFAULT_PERSIST=y +# CONFIG_USB_FEW_INIT_RETRIES is not set +# CONFIG_USB_DYNAMIC_MINORS is not set +# CONFIG_USB_OTG is not set +# CONFIG_USB_OTG_PRODUCTLIST is not set +# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set +CONFIG_USB_LEDS_TRIGGER_USBPORT=m +CONFIG_USB_AUTOSUSPEND_DELAY=2 +CONFIG_USB_MON=y + +# +# USB Host Controller Drivers +# +# CONFIG_USB_C67X00_HCD is not set +CONFIG_USB_XHCI_HCD=y +# CONFIG_USB_XHCI_DBGCAP is not set +CONFIG_USB_XHCI_PCI=y +# CONFIG_USB_XHCI_PCI_RENESAS is not set +CONFIG_USB_XHCI_PLATFORM=m +# CONFIG_USB_XHCI_HISTB is not set +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHCI_TT_NEWSCHED=y +CONFIG_USB_EHCI_PCI=y +# CONFIG_USB_EHCI_FSL is not set +CONFIG_USB_EHCI_HCD_PLATFORM=y +# CONFIG_USB_OXU210HP_HCD is not set +# CONFIG_USB_ISP116X_HCD is not set +# CONFIG_USB_MAX3421_HCD is not set +CONFIG_USB_OHCI_HCD=y +CONFIG_USB_OHCI_HCD_PCI=y +# CONFIG_USB_OHCI_HCD_PLATFORM is not set +CONFIG_USB_UHCI_HCD=y +# CONFIG_USB_SL811_HCD is not set +# CONFIG_USB_R8A66597_HCD is not set +# CONFIG_USB_HCD_BCMA is not set +# CONFIG_USB_HCD_TEST_MODE is not set + +# +# USB Device Class drivers +# +CONFIG_USB_ACM=m +CONFIG_USB_PRINTER=m +CONFIG_USB_WDM=m +CONFIG_USB_TMC=m + +# +# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may +# + +# +# also be needed; see USB_STORAGE Help for more info +# +CONFIG_USB_STORAGE=m +# CONFIG_USB_STORAGE_DEBUG is not set +CONFIG_USB_STORAGE_REALTEK=m +CONFIG_REALTEK_AUTOPM=y +CONFIG_USB_STORAGE_DATAFAB=m +CONFIG_USB_STORAGE_FREECOM=m +CONFIG_USB_STORAGE_ISD200=m +CONFIG_USB_STORAGE_USBAT=m +CONFIG_USB_STORAGE_SDDR09=m +CONFIG_USB_STORAGE_SDDR55=m +CONFIG_USB_STORAGE_JUMPSHOT=m +CONFIG_USB_STORAGE_ALAUDA=m +CONFIG_USB_STORAGE_ONETOUCH=m +CONFIG_USB_STORAGE_KARMA=m +CONFIG_USB_STORAGE_CYPRESS_ATACB=m +CONFIG_USB_STORAGE_ENE_UB6250=m +CONFIG_USB_UAS=m + +# +# USB Imaging devices +# +CONFIG_USB_MDC800=m +CONFIG_USB_MICROTEK=m +# CONFIG_USBIP_CORE is not set + +# +# USB dual-mode controller drivers +# +# CONFIG_USB_CDNS_SUPPORT is not set +# CONFIG_USB_MUSB_HDRC is not set +# CONFIG_USB_DWC3 is not set +# CONFIG_USB_DWC2 is not set +# CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_ISP1760 is not set + +# +# USB port drivers +# +CONFIG_USB_SERIAL=m +CONFIG_USB_SERIAL_GENERIC=y +CONFIG_USB_SERIAL_SIMPLE=m +CONFIG_USB_SERIAL_AIRCABLE=m +CONFIG_USB_SERIAL_ARK3116=m +CONFIG_USB_SERIAL_BELKIN=m +CONFIG_USB_SERIAL_CH341=m +CONFIG_USB_SERIAL_WHITEHEAT=m +CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m +CONFIG_USB_SERIAL_CP210X=m +CONFIG_USB_SERIAL_CYPRESS_M8=m +CONFIG_USB_SERIAL_EMPEG=m +CONFIG_USB_SERIAL_FTDI_SIO=m +CONFIG_USB_SERIAL_VISOR=m +CONFIG_USB_SERIAL_IPAQ=m +CONFIG_USB_SERIAL_IR=m +CONFIG_USB_SERIAL_EDGEPORT=m +CONFIG_USB_SERIAL_EDGEPORT_TI=m +# CONFIG_USB_SERIAL_F81232 is not set +# CONFIG_USB_SERIAL_F8153X is not set +CONFIG_USB_SERIAL_GARMIN=m +CONFIG_USB_SERIAL_IPW=m +CONFIG_USB_SERIAL_IUU=m +CONFIG_USB_SERIAL_KEYSPAN_PDA=m +CONFIG_USB_SERIAL_KEYSPAN=m +CONFIG_USB_SERIAL_KLSI=m +CONFIG_USB_SERIAL_KOBIL_SCT=m +CONFIG_USB_SERIAL_MCT_U232=m +# CONFIG_USB_SERIAL_METRO is not set +CONFIG_USB_SERIAL_MOS7720=m +CONFIG_USB_SERIAL_MOS7840=m +# CONFIG_USB_SERIAL_MXUPORT is not set +CONFIG_USB_SERIAL_NAVMAN=m +CONFIG_USB_SERIAL_PL2303=m +CONFIG_USB_SERIAL_OTI6858=m +CONFIG_USB_SERIAL_QCAUX=m +CONFIG_USB_SERIAL_QUALCOMM=m +CONFIG_USB_SERIAL_SPCP8X5=m +CONFIG_USB_SERIAL_SAFE=m +CONFIG_USB_SERIAL_SAFE_PADDED=y +CONFIG_USB_SERIAL_SIERRAWIRELESS=m +CONFIG_USB_SERIAL_SYMBOL=m +CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_CYBERJACK=m +CONFIG_USB_SERIAL_WWAN=m +CONFIG_USB_SERIAL_OPTION=m +CONFIG_USB_SERIAL_OMNINET=m +CONFIG_USB_SERIAL_OPTICON=m +CONFIG_USB_SERIAL_XSENS_MT=m +# CONFIG_USB_SERIAL_WISHBONE is not set +CONFIG_USB_SERIAL_SSU100=m +CONFIG_USB_SERIAL_QT2=m +# CONFIG_USB_SERIAL_UPD78F0730 is not set +# CONFIG_USB_SERIAL_XR is not set +CONFIG_USB_SERIAL_DEBUG=m + +# +# USB Miscellaneous drivers +# +CONFIG_USB_EMI62=m +CONFIG_USB_EMI26=m +CONFIG_USB_ADUTUX=m +CONFIG_USB_SEVSEG=m +CONFIG_USB_LEGOTOWER=m +CONFIG_USB_LCD=m +# CONFIG_USB_CYPRESS_CY7C63 is not set +# CONFIG_USB_CYTHERM is not set +CONFIG_USB_IDMOUSE=m +CONFIG_USB_APPLEDISPLAY=m +# CONFIG_USB_QCOM_EUD is not set +# CONFIG_APPLE_MFI_FASTCHARGE is not set +CONFIG_USB_SISUSBVGA=m +CONFIG_USB_LD=m +# CONFIG_USB_TRANCEVIBRATOR is not set +CONFIG_USB_IOWARRIOR=m +# CONFIG_USB_TEST is not set +# CONFIG_USB_EHSET_TEST_FIXTURE is not set +CONFIG_USB_ISIGHTFW=m +# CONFIG_USB_YUREX is not set +CONFIG_USB_EZUSB_FX2=m +# CONFIG_USB_HUB_USB251XB is not set +CONFIG_USB_HSIC_USB3503=m +# CONFIG_USB_HSIC_USB4604 is not set +# CONFIG_USB_LINK_LAYER_TEST is not set +CONFIG_USB_CHAOSKEY=m +# CONFIG_USB_ONBOARD_HUB is not set +CONFIG_USB_ATM=m +# CONFIG_USB_SPEEDTOUCH is not set +CONFIG_USB_CXACRU=m +CONFIG_USB_UEAGLEATM=m +CONFIG_USB_XUSBATM=m + +# +# USB Physical Layer drivers +# +# CONFIG_NOP_USB_XCEIV is not set +# CONFIG_USB_GPIO_VBUS is not set +# CONFIG_USB_ISP1301 is not set +# CONFIG_USB_ULPI is not set +# end of USB Physical Layer drivers + +# CONFIG_USB_GADGET is not set +CONFIG_TYPEC=m +CONFIG_TYPEC_TCPM=m +CONFIG_TYPEC_TCPCI=m +# CONFIG_TYPEC_RT1711H is not set +# CONFIG_TYPEC_TCPCI_MAXIM is not set +# CONFIG_TYPEC_FUSB302 is not set +# CONFIG_TYPEC_QCOM_PMIC is not set +CONFIG_TYPEC_UCSI=m +# CONFIG_UCSI_CCG is not set +CONFIG_UCSI_ACPI=m +# CONFIG_UCSI_STM32G0 is not set +# CONFIG_TYPEC_TPS6598X is not set +# CONFIG_TYPEC_ANX7411 is not set +# CONFIG_TYPEC_RT1719 is not set +# CONFIG_TYPEC_HD3SS3220 is not set +# CONFIG_TYPEC_STUSB160X is not set +# CONFIG_TYPEC_WUSB3801 is not set + +# +# USB Type-C Multiplexer/DeMultiplexer Switch support +# +# CONFIG_TYPEC_MUX_FSA4480 is not set +# CONFIG_TYPEC_MUX_GPIO_SBU is not set +# CONFIG_TYPEC_MUX_PI3USB30532 is not set +# CONFIG_TYPEC_MUX_NB7VPQ904M is not set +# end of USB Type-C Multiplexer/DeMultiplexer Switch support + +# +# USB Type-C Alternate Mode drivers +# +CONFIG_TYPEC_DP_ALTMODE=m +# CONFIG_TYPEC_NVIDIA_ALTMODE is not set +# end of USB Type-C Alternate Mode drivers + +CONFIG_USB_ROLE_SWITCH=y +CONFIG_MMC=m +CONFIG_PWRSEQ_EMMC=m +CONFIG_PWRSEQ_SIMPLE=m +CONFIG_MMC_BLOCK=m +CONFIG_MMC_BLOCK_MINORS=8 +CONFIG_SDIO_UART=m +# CONFIG_MMC_TEST is not set + +# +# MMC/SD/SDIO Host Controller Drivers +# +# CONFIG_MMC_DEBUG is not set +CONFIG_MMC_ARMMMCI=m +CONFIG_MMC_STM32_SDMMC=y +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_IO_ACCESSORS=y +CONFIG_MMC_SDHCI_PCI=m +CONFIG_MMC_RICOH_MMC=y +CONFIG_MMC_SDHCI_ACPI=m +CONFIG_MMC_SDHCI_PLTFM=m +# CONFIG_MMC_SDHCI_OF_ARASAN is not set +# CONFIG_MMC_SDHCI_OF_AT91 is not set +# CONFIG_MMC_SDHCI_OF_DWCMSHC is not set +CONFIG_MMC_SDHCI_CADENCE=m +# CONFIG_MMC_SDHCI_F_SDH30 is not set +# CONFIG_MMC_SDHCI_MILBEAUT is not set +# CONFIG_MMC_SDHCI_MSM is not set +CONFIG_MMC_TIFM_SD=m +CONFIG_MMC_SPI=m +CONFIG_MMC_CB710=m +CONFIG_MMC_VIA_SDMMC=m +CONFIG_MMC_DW=m +CONFIG_MMC_DW_PLTFM=m +CONFIG_MMC_DW_BLUEFIELD=m +# CONFIG_MMC_DW_EXYNOS is not set +# CONFIG_MMC_DW_HI3798CV200 is not set +# CONFIG_MMC_DW_K3 is not set +# CONFIG_MMC_DW_PCI is not set +CONFIG_MMC_VUB300=m +CONFIG_MMC_USHC=m +# CONFIG_MMC_USDHI6ROL0 is not set +# CONFIG_MMC_REALTEK_PCI is not set +# CONFIG_MMC_REALTEK_USB is not set +CONFIG_MMC_CQHCI=m +# CONFIG_MMC_HSQ is not set +CONFIG_MMC_TOSHIBA_PCI=m +CONFIG_MMC_MTK=m +CONFIG_MMC_SDHCI_XENON=m +# CONFIG_SCSI_UFSHCD is not set +CONFIG_MEMSTICK=m +# CONFIG_MEMSTICK_DEBUG is not set + +# +# MemoryStick drivers +# +# CONFIG_MEMSTICK_UNSAFE_RESUME is not set +CONFIG_MSPRO_BLOCK=m +# CONFIG_MS_BLOCK is not set + +# +# MemoryStick Host Controller Drivers +# +CONFIG_MEMSTICK_TIFM_MS=m +CONFIG_MEMSTICK_JMICRON_38X=m +CONFIG_MEMSTICK_R592=m +# CONFIG_MEMSTICK_REALTEK_PCI is not set +# CONFIG_MEMSTICK_REALTEK_USB is not set +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=y +CONFIG_LEDS_CLASS_FLASH=m +# CONFIG_LEDS_CLASS_MULTICOLOR is not set +# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set + +# +# LED drivers +# +# CONFIG_LEDS_AN30259A is not set +# CONFIG_LEDS_AW200XX is not set +# CONFIG_LEDS_AW2013 is not set +# CONFIG_LEDS_BCM6328 is not set +# CONFIG_LEDS_BCM6358 is not set +# CONFIG_LEDS_CR0014114 is not set +# CONFIG_LEDS_EL15203000 is not set +CONFIG_LEDS_LM3530=m +# CONFIG_LEDS_LM3532 is not set +# CONFIG_LEDS_LM3642 is not set +# CONFIG_LEDS_LM3692X is not set +# CONFIG_LEDS_PCA9532 is not set +# CONFIG_LEDS_GPIO is not set +CONFIG_LEDS_LP3944=m +# CONFIG_LEDS_LP3952 is not set +# CONFIG_LEDS_LP50XX is not set +# CONFIG_LEDS_LP55XX_COMMON is not set +# CONFIG_LEDS_LP8860 is not set +# CONFIG_LEDS_PCA955X is not set +# CONFIG_LEDS_PCA963X is not set +# CONFIG_LEDS_PCA995X is not set +# CONFIG_LEDS_DAC124S085 is not set +# CONFIG_LEDS_PWM is not set +# CONFIG_LEDS_REGULATOR is not set +# CONFIG_LEDS_BD2606MVV is not set +# CONFIG_LEDS_BD2802 is not set +CONFIG_LEDS_LT3593=m +# CONFIG_LEDS_TCA6507 is not set +# CONFIG_LEDS_TLC591XX is not set +# CONFIG_LEDS_LM355x is not set +# CONFIG_LEDS_IS31FL319X is not set +# CONFIG_LEDS_IS31FL32XX is not set + +# +# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM) +# +CONFIG_LEDS_BLINKM=m +# CONFIG_LEDS_SYSCON is not set +# CONFIG_LEDS_MLXREG is not set +# CONFIG_LEDS_USER is not set +# CONFIG_LEDS_SPI_BYTE is not set +# CONFIG_LEDS_LM3697 is not set + +# +# Flash and Torch LED drivers +# +# CONFIG_LEDS_AAT1290 is not set +# CONFIG_LEDS_AS3645A is not set +# CONFIG_LEDS_KTD2692 is not set +# CONFIG_LEDS_LM3601X is not set +# CONFIG_LEDS_RT4505 is not set +# CONFIG_LEDS_RT8515 is not set +# CONFIG_LEDS_SGM3140 is not set + +# +# RGB LED drivers +# + +# +# LED Triggers +# +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_TIMER=m +CONFIG_LEDS_TRIGGER_ONESHOT=m +# CONFIG_LEDS_TRIGGER_DISK is not set +# CONFIG_LEDS_TRIGGER_MTD is not set +CONFIG_LEDS_TRIGGER_HEARTBEAT=m +CONFIG_LEDS_TRIGGER_BACKLIGHT=m +# CONFIG_LEDS_TRIGGER_CPU is not set +# CONFIG_LEDS_TRIGGER_ACTIVITY is not set +CONFIG_LEDS_TRIGGER_DEFAULT_ON=m + +# +# iptables trigger is under Netfilter config (LED target) +# +CONFIG_LEDS_TRIGGER_TRANSIENT=m +CONFIG_LEDS_TRIGGER_CAMERA=m +# CONFIG_LEDS_TRIGGER_PANIC is not set +# CONFIG_LEDS_TRIGGER_NETDEV is not set +# CONFIG_LEDS_TRIGGER_PATTERN is not set +# CONFIG_LEDS_TRIGGER_AUDIO is not set +# CONFIG_LEDS_TRIGGER_TTY is not set + +# +# Simple LED drivers +# +# CONFIG_ACCESSIBILITY is not set +CONFIG_INFINIBAND=m +CONFIG_INFINIBAND_USER_MAD=m +CONFIG_INFINIBAND_USER_ACCESS=m +CONFIG_INFINIBAND_USER_MEM=y +CONFIG_INFINIBAND_ON_DEMAND_PAGING=y +CONFIG_INFINIBAND_ADDR_TRANS=y +CONFIG_INFINIBAND_ADDR_TRANS_CONFIGFS=y +CONFIG_INFINIBAND_PEER_MEMORY=y +CONFIG_INFINIBAND_VIRT_DMA=y +CONFIG_INFINIBAND_BNXT_RE=m +CONFIG_INFINIBAND_CXGB4=m +# CONFIG_INFINIBAND_EFA is not set +# CONFIG_INFINIBAND_ERDMA is not set +CONFIG_INFINIBAND_HNS=m +CONFIG_INFINIBAND_HNS_HIP08=y +# CONFIG_INFINIBAND_IRDMA is not set +CONFIG_MLX4_INFINIBAND=m +CONFIG_MLX5_INFINIBAND=m +# CONFIG_INFINIBAND_MTHCA is not set +# CONFIG_INFINIBAND_OCRDMA is not set +CONFIG_INFINIBAND_QEDR=m +CONFIG_HIROCE3=m +CONFIG_INFINIBAND_XSC=m +CONFIG_RDMA_RXE=m +# CONFIG_RDMA_SIW is not set +CONFIG_INFINIBAND_IPOIB=m +CONFIG_INFINIBAND_IPOIB_CM=y +# CONFIG_INFINIBAND_IPOIB_DEBUG is not set +CONFIG_INFINIBAND_SRP=m +CONFIG_INFINIBAND_SRPT=m +CONFIG_INFINIBAND_ISER=m +CONFIG_INFINIBAND_ISERT=m +# CONFIG_INFINIBAND_RTRS_CLIENT is not set +# CONFIG_INFINIBAND_RTRS_SERVER is not set +CONFIG_EDAC_SUPPORT=y +CONFIG_EDAC=y +CONFIG_EDAC_LEGACY_SYSFS=y +# CONFIG_EDAC_DEBUG is not set +CONFIG_EDAC_GHES=y +CONFIG_EDAC_THUNDERX=m +CONFIG_EDAC_XGENE=m +# CONFIG_EDAC_DMC520 is not set +CONFIG_RTC_LIB=y +CONFIG_RTC_CLASS=y +CONFIG_RTC_HCTOSYS=y +CONFIG_RTC_HCTOSYS_DEVICE="rtc0" +CONFIG_RTC_SYSTOHC=y +CONFIG_RTC_SYSTOHC_DEVICE="rtc0" +# CONFIG_RTC_DEBUG is not set +CONFIG_RTC_NVMEM=y + +# +# RTC interfaces +# +CONFIG_RTC_INTF_SYSFS=y +CONFIG_RTC_INTF_PROC=y +CONFIG_RTC_INTF_DEV=y +# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set +# CONFIG_RTC_DRV_TEST is not set + +# +# I2C RTC drivers +# +CONFIG_RTC_DRV_ABB5ZES3=m +# CONFIG_RTC_DRV_ABEOZ9 is not set +CONFIG_RTC_DRV_ABX80X=m +CONFIG_RTC_DRV_DS1307=m +# CONFIG_RTC_DRV_DS1307_CENTURY is not set +CONFIG_RTC_DRV_DS1374=m +CONFIG_RTC_DRV_DS1374_WDT=y +CONFIG_RTC_DRV_DS1672=m +# CONFIG_RTC_DRV_HYM8563 is not set +CONFIG_RTC_DRV_MAX6900=m +# CONFIG_RTC_DRV_NCT3018Y is not set +CONFIG_RTC_DRV_RS5C372=m +CONFIG_RTC_DRV_ISL1208=m +CONFIG_RTC_DRV_ISL12022=m +# CONFIG_RTC_DRV_ISL12026 is not set +CONFIG_RTC_DRV_X1205=m +CONFIG_RTC_DRV_PCF8523=m +CONFIG_RTC_DRV_PCF85063=m +# CONFIG_RTC_DRV_PCF85363 is not set +CONFIG_RTC_DRV_PCF8563=m +CONFIG_RTC_DRV_PCF8583=m +CONFIG_RTC_DRV_M41T80=m +CONFIG_RTC_DRV_M41T80_WDT=y +CONFIG_RTC_DRV_BQ32K=m +# CONFIG_RTC_DRV_S35390A is not set +CONFIG_RTC_DRV_FM3130=m +CONFIG_RTC_DRV_RX8010=m +CONFIG_RTC_DRV_RX8581=m +CONFIG_RTC_DRV_RX8025=m +CONFIG_RTC_DRV_EM3027=m +# CONFIG_RTC_DRV_RV3028 is not set +# CONFIG_RTC_DRV_RV3032 is not set +CONFIG_RTC_DRV_RV8803=m +# CONFIG_RTC_DRV_SD3078 is not set + +# +# SPI RTC drivers +# +CONFIG_RTC_DRV_M41T93=m +CONFIG_RTC_DRV_M41T94=m +# CONFIG_RTC_DRV_DS1302 is not set +CONFIG_RTC_DRV_DS1305=m +CONFIG_RTC_DRV_DS1343=m +CONFIG_RTC_DRV_DS1347=m +CONFIG_RTC_DRV_DS1390=m +# CONFIG_RTC_DRV_MAX6916 is not set +CONFIG_RTC_DRV_R9701=m +CONFIG_RTC_DRV_RX4581=m +CONFIG_RTC_DRV_RS5C348=m +CONFIG_RTC_DRV_MAX6902=m +CONFIG_RTC_DRV_PCF2123=m +CONFIG_RTC_DRV_MCP795=m +CONFIG_RTC_I2C_AND_SPI=y + +# +# SPI and I2C RTC drivers +# +CONFIG_RTC_DRV_DS3232=m +CONFIG_RTC_DRV_DS3232_HWMON=y +CONFIG_RTC_DRV_PCF2127=m +CONFIG_RTC_DRV_RV3029C2=m +# CONFIG_RTC_DRV_RV3029_HWMON is not set +# CONFIG_RTC_DRV_RX6110 is not set + +# +# Platform RTC drivers +# +CONFIG_RTC_DRV_DS1286=m +CONFIG_RTC_DRV_DS1511=m +CONFIG_RTC_DRV_DS1553=m +CONFIG_RTC_DRV_DS1685_FAMILY=m +CONFIG_RTC_DRV_DS1685=y +# CONFIG_RTC_DRV_DS1689 is not set +# CONFIG_RTC_DRV_DS17285 is not set +# CONFIG_RTC_DRV_DS17485 is not set +# CONFIG_RTC_DRV_DS17885 is not set +CONFIG_RTC_DRV_DS1742=m +CONFIG_RTC_DRV_DS2404=m +CONFIG_RTC_DRV_EFI=y +CONFIG_RTC_DRV_STK17TA8=m +# CONFIG_RTC_DRV_M48T86 is not set +CONFIG_RTC_DRV_M48T35=m +CONFIG_RTC_DRV_M48T59=m +CONFIG_RTC_DRV_MSM6242=m +CONFIG_RTC_DRV_RP5C01=m +# CONFIG_RTC_DRV_ZYNQMP is not set + +# +# on-CPU RTC drivers +# +# CONFIG_RTC_DRV_PL030 is not set +CONFIG_RTC_DRV_PL031=y +# CONFIG_RTC_DRV_CADENCE is not set +# CONFIG_RTC_DRV_FTRTC010 is not set +# CONFIG_RTC_DRV_XGENE is not set +# CONFIG_RTC_DRV_R7301 is not set + +# +# HID Sensor RTC drivers +# +# CONFIG_RTC_DRV_GOLDFISH is not set +CONFIG_DMADEVICES=y +# CONFIG_DMADEVICES_DEBUG is not set + +# +# DMA Devices +# +CONFIG_DMA_ENGINE=y +CONFIG_DMA_ACPI=y +CONFIG_DMA_OF=y +# CONFIG_ALTERA_MSGDMA is not set +# CONFIG_AMBA_PL08X is not set +# CONFIG_BCM_SBA_RAID is not set +# CONFIG_DW_AXI_DMAC is not set +# CONFIG_FSL_EDMA is not set +# CONFIG_FSL_QDMA is not set +# CONFIG_HISI_DMA is not set +# CONFIG_INTEL_IDMA64 is not set +# CONFIG_K3_DMA is not set +# CONFIG_MV_XOR_V2 is not set +# CONFIG_PL330_DMA is not set +# CONFIG_PLX_DMA is not set +# CONFIG_XGENE_DMA is not set +# CONFIG_XILINX_DMA is not set +# CONFIG_XILINX_XDMA is not set +# CONFIG_XILINX_ZYNQMP_DMA is not set +# CONFIG_XILINX_ZYNQMP_DPDMA is not set +# CONFIG_QCOM_BAM_DMA is not set +# CONFIG_QCOM_GPI_DMA is not set +CONFIG_QCOM_HIDMA_MGMT=m +CONFIG_QCOM_HIDMA=m +CONFIG_DW_DMAC_CORE=m +CONFIG_DW_DMAC=m +CONFIG_DW_DMAC_PCI=m +# CONFIG_DW_EDMA is not set +# CONFIG_SF_PDMA is not set + +# +# DMA Clients +# +CONFIG_ASYNC_TX_DMA=y +# CONFIG_DMATEST is not set + +# +# DMABUF options +# +CONFIG_SYNC_FILE=y +# CONFIG_SW_SYNC is not set +# CONFIG_UDMABUF is not set +# CONFIG_DMABUF_MOVE_NOTIFY is not set +# CONFIG_DMABUF_DEBUG is not set +# CONFIG_DMABUF_SELFTESTS is not set +# CONFIG_DMABUF_HEAPS is not set +# CONFIG_DMABUF_SYSFS_STATS is not set +# end of DMABUF options + +CONFIG_UIO=m +CONFIG_UIO_CIF=m +CONFIG_UIO_PDRV_GENIRQ=m +# CONFIG_UIO_DMEM_GENIRQ is not set +CONFIG_UIO_AEC=m +CONFIG_UIO_SERCOS3=m +CONFIG_UIO_PCI_GENERIC=m +# CONFIG_UIO_NETX is not set +# CONFIG_UIO_PRUSS is not set +# CONFIG_UIO_MF624 is not set +CONFIG_VFIO=m +CONFIG_VFIO_DEVICE_CDEV=y +CONFIG_VFIO_GROUP=y +CONFIG_VFIO_CONTAINER=y +CONFIG_VFIO_IOMMU_TYPE1=m +CONFIG_VFIO_NOIOMMU=y +CONFIG_VFIO_VIRQFD=y + +# +# VFIO support for PCI devices +# +CONFIG_VFIO_PCI_CORE=m +CONFIG_VFIO_PCI_MMAP=y +CONFIG_VFIO_PCI_INTX=y +CONFIG_VFIO_PCI=m +# CONFIG_MLX5_VFIO_PCI is not set +CONFIG_HISI_ACC_VFIO_PCI=m +# end of VFIO support for PCI devices + +# +# VFIO support for platform devices +# +CONFIG_VFIO_PLATFORM_BASE=m +CONFIG_VFIO_PLATFORM=m +# CONFIG_VFIO_AMBA is not set + +# +# VFIO platform reset drivers +# +# CONFIG_VFIO_PLATFORM_CALXEDAXGMAC_RESET is not set +# CONFIG_VFIO_PLATFORM_AMDXGBE_RESET is not set +# end of VFIO platform reset drivers +# end of VFIO support for platform devices + +# CONFIG_VIRT_DRIVERS is not set +CONFIG_VIRTIO_ANCHOR=y +CONFIG_VIRTIO=y +CONFIG_VIRTIO_PCI_LIB=y +CONFIG_VIRTIO_PCI_LIB_LEGACY=y +CONFIG_VIRTIO_MENU=y +CONFIG_VIRTIO_PCI=y +CONFIG_VIRTIO_PCI_LEGACY=y +# CONFIG_VIRTIO_VDPA is not set +# CONFIG_VIRTIO_PMEM is not set +CONFIG_VIRTIO_BALLOON=y +CONFIG_VIRTIO_MEM=y +CONFIG_VIRTIO_INPUT=y +CONFIG_VIRTIO_MMIO=y +# CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set +CONFIG_VIRTIO_DMA_SHARED_BUFFER=m +CONFIG_VDPA=m +# CONFIG_VDPA_USER is not set +# CONFIG_IFCVF is not set +# CONFIG_MLX5_VDPA_NET is not set +# CONFIG_MLX5_VDPA_STEERING_DEBUG is not set +# CONFIG_VP_VDPA is not set +# CONFIG_SNET_VDPA is not set +CONFIG_VHOST_IOTLB=y +CONFIG_VHOST_TASK=y +CONFIG_VHOST=y +CONFIG_VHOST_MENU=y +CONFIG_VHOST_NET=m +CONFIG_VHOST_SCSI=m +CONFIG_VHOST_VSOCK=y +CONFIG_VHOST_VDPA=m +# CONFIG_VHOST_VDPA_MIGRATION is not set +# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set + +# +# Microsoft Hyper-V guest support +# +# CONFIG_HYPERV is not set +# end of Microsoft Hyper-V guest support + +# CONFIG_GREYBUS is not set +# CONFIG_COMEDI is not set +# CONFIG_STAGING is not set +# CONFIG_GOLDFISH is not set +CONFIG_CHROME_PLATFORMS=y +# CONFIG_CHROMEOS_ACPI is not set +# CONFIG_CHROMEOS_TBMC is not set +# CONFIG_CROS_EC is not set +# CONFIG_CROS_KBD_LED_BACKLIGHT is not set +# CONFIG_CROS_HPS_I2C is not set +# CONFIG_CHROMEOS_PRIVACY_SCREEN is not set +# CONFIG_MELLANOX_PLATFORM is not set +CONFIG_ARM_CPU_RESCTRL=y +CONFIG_SURFACE_PLATFORMS=y +# CONFIG_SURFACE_3_POWER_OPREGION is not set +# CONFIG_SURFACE_GPE is not set +# CONFIG_SURFACE_HOTPLUG is not set +# CONFIG_SURFACE_PRO3_BUTTON is not set +CONFIG_HAVE_CLK=y +CONFIG_HAVE_CLK_PREPARE=y +CONFIG_COMMON_CLK=y + +# +# Clock driver for ARM Reference designs +# +# CONFIG_CLK_ICST is not set +CONFIG_CLK_SP810=y +CONFIG_CLK_VEXPRESS_OSC=y +# end of Clock driver for ARM Reference designs + +# CONFIG_LMK04832 is not set +# CONFIG_COMMON_CLK_MAX9485 is not set +CONFIG_COMMON_CLK_SCPI=m +# CONFIG_COMMON_CLK_SI5341 is not set +# CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_SI514 is not set +# CONFIG_COMMON_CLK_SI544 is not set +# CONFIG_COMMON_CLK_SI570 is not set +# CONFIG_COMMON_CLK_CDCE706 is not set +# CONFIG_COMMON_CLK_CDCE925 is not set +# CONFIG_COMMON_CLK_CS2000_CP is not set +# CONFIG_COMMON_CLK_AXI_CLKGEN is not set +CONFIG_COMMON_CLK_XGENE=y +# CONFIG_COMMON_CLK_PWM is not set +# CONFIG_COMMON_CLK_RS9_PCIE is not set +# CONFIG_COMMON_CLK_SI521XX is not set +# CONFIG_COMMON_CLK_VC3 is not set +# CONFIG_COMMON_CLK_VC5 is not set +# CONFIG_COMMON_CLK_VC7 is not set +# CONFIG_COMMON_CLK_FIXED_MMIO is not set +CONFIG_COMMON_CLK_HI3516CV300=y +CONFIG_COMMON_CLK_HI3519=y +CONFIG_COMMON_CLK_HI3559A=y +CONFIG_COMMON_CLK_HI3660=y +CONFIG_COMMON_CLK_HI3670=y +CONFIG_COMMON_CLK_HI3798CV200=y +# CONFIG_COMMON_CLK_HI6220 is not set +CONFIG_RESET_HISI=y +CONFIG_STUB_CLK_HI3660=y +# CONFIG_COMMON_CLK_QCOM is not set +# CONFIG_XILINX_VCU is not set +# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +CONFIG_HWSPINLOCK=y +# CONFIG_HWSPINLOCK_QCOM is not set + +# +# Clock Source drivers +# +CONFIG_TIMER_OF=y +CONFIG_TIMER_ACPI=y +CONFIG_TIMER_PROBE=y +CONFIG_CLKSRC_MMIO=y +CONFIG_ARM_ARCH_TIMER=y +CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y +CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y +CONFIG_FSL_ERRATUM_A008585=y +CONFIG_HISILICON_ERRATUM_161010101=y +CONFIG_ARM64_ERRATUM_858921=y +CONFIG_ARM_TIMER_SP804=y +# CONFIG_ARM_ARCH_TIMER_WORKAROUND_IN_USERSPACE is not set +# end of Clock Source drivers + +CONFIG_MAILBOX=y +CONFIG_ARM_MHU=m +# CONFIG_ARM_MHU_V2 is not set +# CONFIG_PLATFORM_MHU is not set +# CONFIG_PL320_MBOX is not set +CONFIG_PCC=y +# CONFIG_ALTERA_MBOX is not set +CONFIG_HI3660_MBOX=y +CONFIG_HI6220_MBOX=y +# CONFIG_MAILBOX_TEST is not set +# CONFIG_QCOM_APCS_IPC is not set +CONFIG_XGENE_SLIMPRO_MBOX=m +# CONFIG_QCOM_IPCC is not set +CONFIG_IOMMU_IOVA=y +CONFIG_IOMMU_API=y +CONFIG_IOMMU_SUPPORT=y + +# +# Generic IOMMU Pagetable Support +# +CONFIG_IOMMU_IO_PGTABLE=y +CONFIG_IOMMU_IO_PGTABLE_LPAE=y +# CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST is not set +# CONFIG_IOMMU_IO_PGTABLE_ARMV7S is not set +# CONFIG_IOMMU_IO_PGTABLE_DART is not set +# end of Generic IOMMU Pagetable Support + +# CONFIG_IOMMU_DEBUGFS is not set +CONFIG_IOMMU_DEFAULT_DMA_STRICT=y +# CONFIG_IOMMU_DEFAULT_DMA_LAZY is not set +# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set +CONFIG_OF_IOMMU=y +CONFIG_IOMMU_DMA=y +CONFIG_IOMMU_SVA=y +CONFIG_IOMMU_IOPF=y +CONFIG_IOMMUFD=m +CONFIG_ARM_SMMU=y +# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set +CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT=y +CONFIG_ARM_SMMU_QCOM=y +# CONFIG_ARM_SMMU_QCOM_DEBUG is not set +CONFIG_ARM_SMMU_V3=y +CONFIG_ARM_SMMU_V3_SVA=y +# CONFIG_ARM_SMMU_V3_PM is not set +CONFIG_ARM_SMMU_V3_HTTU=y +CONFIG_ARM_SMMU_V3_ECMDQ=y +# CONFIG_QCOM_IOMMU is not set +# CONFIG_VIRTIO_IOMMU is not set +CONFIG_SMMU_BYPASS_DEV=y + +# +# Remoteproc drivers +# +# CONFIG_REMOTEPROC is not set +# end of Remoteproc drivers + +# +# Rpmsg drivers +# +# CONFIG_RPMSG_QCOM_GLINK_RPM is not set +# CONFIG_RPMSG_VIRTIO is not set +# end of Rpmsg drivers + +# CONFIG_SOUNDWIRE is not set + +# +# SOC (System On Chip) specific Drivers +# + +# +# Amlogic SoC drivers +# +# end of Amlogic SoC drivers + +# +# Broadcom SoC drivers +# +# CONFIG_SOC_BRCMSTB is not set +# end of Broadcom SoC drivers + +# +# NXP/Freescale QorIQ SoC drivers +# +# CONFIG_QUICC_ENGINE is not set +# CONFIG_FSL_RCPM is not set +# end of NXP/Freescale QorIQ SoC drivers + +# +# fujitsu SoC drivers +# +# CONFIG_A64FX_DIAG is not set +# end of fujitsu SoC drivers + +# +# Hisilicon SoC drivers +# +# CONFIG_HISI_HBMDEV is not set +# CONFIG_HISI_HBMCACHE is not set +CONFIG_KUNPENG_HCCS=m +# end of Hisilicon SoC drivers + +# +# i.MX SoC drivers +# +# end of i.MX SoC drivers + +# +# Enable LiteX SoC Builder specific drivers +# +# CONFIG_LITEX_SOC_CONTROLLER is not set +# end of Enable LiteX SoC Builder specific drivers + +# CONFIG_WPCM450_SOC is not set + +# +# Qualcomm SoC drivers +# +# CONFIG_QCOM_AOSS_QMP is not set +# CONFIG_QCOM_COMMAND_DB is not set +# CONFIG_QCOM_CPR is not set +# CONFIG_QCOM_GENI_SE is not set +# CONFIG_QCOM_GSBI is not set +# CONFIG_QCOM_LLCC is not set +CONFIG_QCOM_KRYO_L2_ACCESSORS=y +# CONFIG_QCOM_OCMEM is not set +# CONFIG_QCOM_RAMP_CTRL is not set +# CONFIG_QCOM_RMTFS_MEM is not set +# CONFIG_QCOM_RPM_MASTER_STATS is not set +# CONFIG_QCOM_RPMH is not set +# CONFIG_QCOM_SMEM is not set +# CONFIG_QCOM_SPM is not set +# CONFIG_QCOM_ICC_BWMON is not set +# end of Qualcomm SoC drivers + +# CONFIG_SOC_TI is not set + +# +# Xilinx SoC drivers +# +# end of Xilinx SoC drivers +# end of SOC (System On Chip) specific Drivers + +# CONFIG_PM_DEVFREQ is not set +CONFIG_EXTCON=y + +# +# Extcon Device Drivers +# +# CONFIG_EXTCON_FSA9480 is not set +CONFIG_EXTCON_GPIO=m +# CONFIG_EXTCON_MAX3355 is not set +# CONFIG_EXTCON_PTN5150 is not set +# CONFIG_EXTCON_QCOM_SPMI_MISC is not set +# CONFIG_EXTCON_RT8973A is not set +# CONFIG_EXTCON_SM5502 is not set +# CONFIG_EXTCON_USB_GPIO is not set +# CONFIG_EXTCON_USBC_TUSB320 is not set +# CONFIG_MEMORY is not set +# CONFIG_IIO is not set +CONFIG_NTB=m +# CONFIG_NTB_MSI is not set +# CONFIG_NTB_IDT is not set +# CONFIG_NTB_EPF is not set +# CONFIG_NTB_SWITCHTEC is not set +# CONFIG_NTB_PINGPONG is not set +# CONFIG_NTB_TOOL is not set +# CONFIG_NTB_PERF is not set +# CONFIG_NTB_TRANSPORT is not set +CONFIG_PWM=y +CONFIG_PWM_SYSFS=y +# CONFIG_PWM_DEBUG is not set +# CONFIG_PWM_ATMEL_TCB is not set +# CONFIG_PWM_CLK is not set +# CONFIG_PWM_DWC is not set +# CONFIG_PWM_FSL_FTM is not set +# CONFIG_PWM_HIBVT is not set +# CONFIG_PWM_PCA9685 is not set +# CONFIG_PWM_XILINX is not set + +# +# IRQ chip support +# +CONFIG_IRQCHIP=y +CONFIG_ARM_GIC=y +CONFIG_ARM_GIC_MAX_NR=1 +CONFIG_ARM_GIC_V2M=y +CONFIG_ARM_GIC_V3=y +CONFIG_ARM_GIC_V3_ITS=y +CONFIG_ARM_GIC_V3_ITS_PCI=y +CONFIG_ARM_GIC_PHYTIUM_2500=y +# CONFIG_AL_FIC is not set +CONFIG_HISILICON_IRQ_MBIGEN=y +CONFIG_IRQ_MBIGEN_ENABLE_SPI=y +# CONFIG_XILINX_INTC is not set +CONFIG_PARTITION_PERCPU=y +CONFIG_QCOM_IRQ_COMBINER=y +# CONFIG_QCOM_PDC is not set +# CONFIG_QCOM_MPM is not set +# end of IRQ chip support + +# CONFIG_IPACK_BUS is not set +CONFIG_RESET_CONTROLLER=y +# CONFIG_RESET_QCOM_AOSS is not set +# CONFIG_RESET_QCOM_PDC is not set +# CONFIG_RESET_SIMPLE is not set +# CONFIG_RESET_TI_SYSCON is not set +# CONFIG_RESET_TI_TPS380X is not set +CONFIG_COMMON_RESET_HI3660=y +CONFIG_COMMON_RESET_HI6220=y + +# +# PHY Subsystem +# +CONFIG_GENERIC_PHY=y +CONFIG_PHY_XGENE=y +# CONFIG_PHY_CAN_TRANSCEIVER is not set + +# +# PHY drivers for Broadcom platforms +# +# CONFIG_BCM_KONA_USB2_PHY is not set +# end of PHY drivers for Broadcom platforms + +# CONFIG_PHY_CADENCE_TORRENT is not set +# CONFIG_PHY_CADENCE_DPHY is not set +# CONFIG_PHY_CADENCE_DPHY_RX is not set +# CONFIG_PHY_CADENCE_SIERRA is not set +# CONFIG_PHY_CADENCE_SALVO is not set +CONFIG_PHY_HI6220_USB=m +# CONFIG_PHY_HI3660_USB is not set +# CONFIG_PHY_HI3670_USB is not set +# CONFIG_PHY_HI3670_PCIE is not set +# CONFIG_PHY_HISTB_COMBPHY is not set +# CONFIG_PHY_HISI_INNO_USB2 is not set +# CONFIG_PHY_PXA_28NM_HSIC is not set +# CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_LAN966X_SERDES is not set +# CONFIG_PHY_MAPPHONE_MDM6600 is not set +# CONFIG_PHY_OCELOT_SERDES is not set +# CONFIG_PHY_QCOM_APQ8064_SATA is not set +# CONFIG_PHY_QCOM_EDP is not set +# CONFIG_PHY_QCOM_IPQ4019_USB is not set +# CONFIG_PHY_QCOM_IPQ806X_SATA is not set +# CONFIG_PHY_QCOM_PCIE2 is not set +# CONFIG_PHY_QCOM_QMP is not set +# CONFIG_PHY_QCOM_QUSB2 is not set +# CONFIG_PHY_QCOM_SNPS_EUSB2 is not set +# CONFIG_PHY_QCOM_EUSB2_REPEATER is not set +# CONFIG_PHY_QCOM_M31_USB is not set +# CONFIG_PHY_QCOM_USB_HS is not set +# CONFIG_PHY_QCOM_USB_SNPS_FEMTO_V2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS_28NM is not set +# CONFIG_PHY_QCOM_USB_SS is not set +# CONFIG_PHY_QCOM_IPQ806X_USB is not set +# CONFIG_PHY_QCOM_SGMII_ETH is not set +# CONFIG_PHY_TUSB1210 is not set +# end of PHY Subsystem + +# CONFIG_POWERCAP is not set +# CONFIG_MCB is not set + +# +# Performance monitor support +# +# CONFIG_ARM_CCI_PMU is not set +CONFIG_ARM_CCN=y +# CONFIG_ARM_CMN is not set +CONFIG_ARM_PMU=y +CONFIG_ARM_PMU_ACPI=y +CONFIG_ARM_SMMU_V3_PMU=m +CONFIG_ARM_PMUV3=y +# CONFIG_ARM_DSU_PMU is not set +CONFIG_QCOM_L2_PMU=y +CONFIG_QCOM_L3_PMU=y +CONFIG_THUNDERX2_PMU=m +CONFIG_XGENE_PMU=y +CONFIG_ARM_SPE_PMU=m +# CONFIG_ARM_DMC620_PMU is not set +# CONFIG_MARVELL_CN10K_TAD_PMU is not set +# CONFIG_ALIBABA_UNCORE_DRW_PMU is not set +CONFIG_HISI_PMU=m +CONFIG_HISI_PCIE_PMU=m +CONFIG_HNS3_PMU=m +# CONFIG_MARVELL_CN10K_DDR_PMU is not set +# CONFIG_ARM_CORESIGHT_PMU_ARCH_SYSTEM_PMU is not set +# end of Performance monitor support + +CONFIG_RAS=y +CONFIG_RAS_ARM_EVENT_INFO=y +CONFIG_PAGE_EJECT=m +CONFIG_USB4=m +# CONFIG_USB4_DEBUGFS_WRITE is not set +# CONFIG_USB4_DMA_TEST is not set + +# +# Android +# +# CONFIG_ANDROID_BINDER_IPC is not set +# end of Android + +# +# Vendor Hooks +# +CONFIG_VENDOR_HOOKS=y +CONFIG_VENDOR_BOND_HOOKS=y +# end of Vendor Hooks + +CONFIG_LIBNVDIMM=y +CONFIG_BLK_DEV_PMEM=m +CONFIG_ND_CLAIM=y +CONFIG_ND_BTT=m +CONFIG_BTT=y +CONFIG_ND_PFN=m +CONFIG_NVDIMM_PFN=y +CONFIG_NVDIMM_DAX=y +CONFIG_OF_PMEM=m +CONFIG_NVDIMM_KEYS=y +# CONFIG_NVDIMM_SECURITY_TEST is not set +CONFIG_DAX=y +CONFIG_DEV_DAX=y +CONFIG_DEV_DAX_PMEM=y +CONFIG_DEV_DAX_HMEM=y +CONFIG_DEV_DAX_CXL=y +CONFIG_DEV_DAX_HMEM_DEVICES=y +CONFIG_DEV_DAX_KMEM=y +CONFIG_NVMEM=y +CONFIG_NVMEM_SYSFS=y + +# +# Layout Types +# +# CONFIG_NVMEM_LAYOUT_SL28_VPD is not set +# CONFIG_NVMEM_LAYOUT_ONIE_TLV is not set +# end of Layout Types + +# CONFIG_NVMEM_QCOM_QFPROM is not set +# CONFIG_NVMEM_QCOM_SEC_QFPROM is not set +# CONFIG_NVMEM_RMEM is not set +# CONFIG_NVMEM_U_BOOT_ENV is not set + +# +# HW tracing support +# +# CONFIG_STM is not set +# CONFIG_INTEL_TH is not set +CONFIG_HISI_PTT=m +# end of HW tracing support + +# CONFIG_FPGA is not set +# CONFIG_FSI is not set +CONFIG_TEE=m +# CONFIG_OPTEE is not set +# CONFIG_SIOX is not set +# CONFIG_SLIMBUS is not set +# CONFIG_INTERCONNECT is not set +# CONFIG_COUNTER is not set +# CONFIG_MOST is not set +# CONFIG_PECI is not set +# CONFIG_HTE is not set +# CONFIG_CDX_BUS is not set + +# +# CPU Inspect +# +CONFIG_CPU_INSPECT=m +CONFIG_CPU_INSPECTOR_ATF=m +# end of CPU Inspect + +CONFIG_ROH=m +CONFIG_ROH_HNS=m +# end of Device Drivers + +# +# File systems +# +CONFIG_DCACHE_WORD_ACCESS=y +# CONFIG_VALIDATE_FS_PARSER is not set +CONFIG_FS_IOMAP=y +CONFIG_BUFFER_HEAD=y +CONFIG_LEGACY_DIRECT_IO=y +# CONFIG_EXT2_FS is not set +CONFIG_EXT3_FS=m +# CONFIG_EXT3_FS_POSIX_ACL is not set +# CONFIG_EXT3_FS_SECURITY is not set +CONFIG_EXT4_FS=y +CONFIG_EXT4_USE_FOR_EXT2=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +# CONFIG_EXT4_DEBUG is not set +CONFIG_EXT4_ERROR_REPORT=y +# CONFIG_EXT4_DIOREAD_NOLOCK_PARAM is not set +CONFIG_JBD2=y +# CONFIG_JBD2_DEBUG is not set +CONFIG_FS_MBCACHE=y +# CONFIG_REISERFS_FS is not set +# CONFIG_JFS_FS is not set +CONFIG_XFS_FS=m +CONFIG_XFS_SUPPORT_V4=y +CONFIG_XFS_SUPPORT_ASCII_CI=y +CONFIG_XFS_QUOTA=y +CONFIG_XFS_POSIX_ACL=y +# CONFIG_XFS_RT is not set +# CONFIG_XFS_ONLINE_SCRUB is not set +# CONFIG_XFS_WARN is not set +# CONFIG_XFS_DEBUG is not set +# CONFIG_GFS2_FS is not set +CONFIG_OCFS2_FS=m +CONFIG_OCFS2_FS_O2CB=m +CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +# CONFIG_OCFS2_FS_STATS is not set +# CONFIG_OCFS2_DEBUG_MASKLOG is not set +# CONFIG_OCFS2_DEBUG_FS is not set +CONFIG_BTRFS_FS=m +CONFIG_BTRFS_FS_POSIX_ACL=y +# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set +# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set +# CONFIG_BTRFS_DEBUG is not set +# CONFIG_BTRFS_ASSERT is not set +# CONFIG_BTRFS_FS_REF_VERIFY is not set +# CONFIG_NILFS2_FS is not set +# CONFIG_F2FS_FS is not set +# CONFIG_ZONEFS_FS is not set +CONFIG_FS_DAX=y +CONFIG_FS_DAX_PMD=y +CONFIG_FS_POSIX_ACL=y +CONFIG_EXPORTFS=y +CONFIG_EXPORTFS_BLOCK_OPS=y +CONFIG_FILE_LOCKING=y +# CONFIG_FS_ENCRYPTION is not set +# CONFIG_FS_VERITY is not set +CONFIG_FSNOTIFY=y +CONFIG_DNOTIFY=y +CONFIG_INOTIFY_USER=y +CONFIG_FANOTIFY=y +CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y +CONFIG_QUOTA=y +CONFIG_QUOTA_NETLINK_INTERFACE=y +# CONFIG_QUOTA_DEBUG is not set +CONFIG_QUOTA_TREE=y +# CONFIG_QFMT_V1 is not set +CONFIG_QFMT_V2=y +CONFIG_QUOTACTL=y +CONFIG_AUTOFS_FS=y +CONFIG_FUSE_FS=y +CONFIG_CUSE=m +CONFIG_VIRTIO_FS=y +CONFIG_FUSE_DAX=y +CONFIG_OVERLAY_FS=y +CONFIG_OVERLAY_FS_REDIRECT_DIR=y +# CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW is not set +CONFIG_OVERLAY_FS_INDEX=y +# CONFIG_OVERLAY_FS_NFS_EXPORT is not set +# CONFIG_OVERLAY_FS_XINO_AUTO is not set +# CONFIG_OVERLAY_FS_METACOPY is not set +# CONFIG_OVERLAY_FS_DEBUG is not set + +# +# Caches +# +CONFIG_NETFS_SUPPORT=y +CONFIG_NETFS_STATS=y +CONFIG_FSCACHE=m +CONFIG_FSCACHE_STATS=y +# CONFIG_FSCACHE_DEBUG is not set +CONFIG_CACHEFILES=m +# CONFIG_CACHEFILES_DEBUG is not set +# CONFIG_CACHEFILES_ERROR_INJECTION is not set +CONFIG_CACHEFILES_ONDEMAND=y +# end of Caches + +# +# CD-ROM/DVD Filesystems +# +CONFIG_ISO9660_FS=m +CONFIG_JOLIET=y +CONFIG_ZISOFS=y +CONFIG_UDF_FS=m +# end of CD-ROM/DVD Filesystems + +# +# DOS/FAT/EXFAT/NT Filesystems +# +CONFIG_FAT_FS=m +CONFIG_MSDOS_FS=m +CONFIG_VFAT_FS=m +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="ascii" +# CONFIG_FAT_DEFAULT_UTF8 is not set +CONFIG_EXFAT_FS=m +CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8" +CONFIG_NTFS_FS=m +# CONFIG_NTFS_DEBUG is not set +# CONFIG_NTFS_RW is not set +CONFIG_NTFS3_FS=m +# CONFIG_NTFS3_64BIT_CLUSTER is not set +CONFIG_NTFS3_LZX_XPRESS=y +CONFIG_NTFS3_FS_POSIX_ACL=y +# end of DOS/FAT/EXFAT/NT Filesystems + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +CONFIG_PROC_KCORE=y +CONFIG_PROC_VMCORE=y +# CONFIG_PROC_VMCORE_DEVICE_DUMP is not set +CONFIG_PROC_SYSCTL=y +CONFIG_PROC_PAGE_MONITOR=y +CONFIG_PROC_CHILDREN=y +CONFIG_PROC_CPU_RESCTRL=y +CONFIG_KERNFS=y +CONFIG_SYSFS=y +CONFIG_DIRTY_PAGES=y +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_TMPFS_XATTR=y +# CONFIG_TMPFS_INODE64 is not set +# CONFIG_TMPFS_QUOTA is not set +CONFIG_ARCH_SUPPORTS_HUGETLBFS=y +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP=y +# CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP_DEFAULT_ON is not set +CONFIG_HUGETLB_ALLOC_LIMIT=y +CONFIG_ARCH_HAS_GIGANTIC_PAGE=y +CONFIG_CONFIGFS_FS=y +CONFIG_EFIVAR_FS=y +# end of Pseudo filesystems + +CONFIG_MISC_FILESYSTEMS=y +# CONFIG_ORANGEFS_FS is not set +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +# CONFIG_ECRYPT_FS is not set +# CONFIG_HFS_FS is not set +# CONFIG_HFSPLUS_FS is not set +# CONFIG_BEFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +# CONFIG_JFFS2_FS is not set +# CONFIG_UBIFS_FS is not set +CONFIG_CRAMFS=m +CONFIG_CRAMFS_BLOCKDEV=y +# CONFIG_CRAMFS_MTD is not set +CONFIG_SQUASHFS=m +CONFIG_SQUASHFS_FILE_CACHE=y +# CONFIG_SQUASHFS_FILE_DIRECT is not set +CONFIG_SQUASHFS_DECOMP_SINGLE=y +# CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT is not set +CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE=y +# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is not set +# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is not set +CONFIG_SQUASHFS_XATTR=y +CONFIG_SQUASHFS_ZLIB=y +CONFIG_SQUASHFS_LZ4=y +CONFIG_SQUASHFS_LZO=y +CONFIG_SQUASHFS_XZ=y +# CONFIG_SQUASHFS_ZSTD is not set +# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +# CONFIG_VXFS_FS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_OMFS_FS is not set +# CONFIG_HPFS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_QNX6FS_FS is not set +CONFIG_RESCTRL_FS=y +CONFIG_RESCTRL_RMID_DEPENDS_ON_CLOSID=y +# CONFIG_ROMFS_FS is not set +CONFIG_PSTORE=y +CONFIG_PSTORE_DEFAULT_KMSG_BYTES=10240 +CONFIG_PSTORE_COMPRESS=y +# CONFIG_PSTORE_CONSOLE is not set +# CONFIG_PSTORE_PMSG is not set +# CONFIG_PSTORE_FTRACE is not set +CONFIG_PSTORE_RAM=m +# CONFIG_PSTORE_BLK is not set +# CONFIG_SYSV_FS is not set +# CONFIG_UFS_FS is not set +CONFIG_EROFS_FS=m +# CONFIG_EROFS_FS_DEBUG is not set +CONFIG_EROFS_FS_XATTR=y +CONFIG_EROFS_FS_POSIX_ACL=y +CONFIG_EROFS_FS_SECURITY=y +# CONFIG_EROFS_FS_ZIP is not set +CONFIG_EROFS_FS_ONDEMAND=y +CONFIG_NETWORK_FILESYSTEMS=y +CONFIG_NFS_FS=m +CONFIG_NFS_V2=m +CONFIG_NFS_V3=m +CONFIG_NFS_V3_ACL=y +CONFIG_NFS_V4=m +# CONFIG_NFS_SWAP is not set +CONFIG_NFS_V4_1=y +CONFIG_NFS_V4_2=y +CONFIG_PNFS_FILE_LAYOUT=m +CONFIG_PNFS_BLOCK=m +CONFIG_PNFS_FLEXFILE_LAYOUT=m +CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org" +# CONFIG_NFS_V4_1_MIGRATION is not set +CONFIG_NFS_V4_SECURITY_LABEL=y +CONFIG_NFS_FSCACHE=y +# CONFIG_NFS_USE_LEGACY_DNS is not set +CONFIG_NFS_USE_KERNEL_DNS=y +CONFIG_NFS_DEBUG=y +# CONFIG_NFS_DISABLE_UDP_SUPPORT is not set +# CONFIG_NFS_V4_2_READ_PLUS is not set +CONFIG_NFSD=m +# CONFIG_NFSD_V2 is not set +CONFIG_NFSD_V3_ACL=y +CONFIG_NFSD_V4=y +CONFIG_NFSD_PNFS=y +CONFIG_NFSD_BLOCKLAYOUT=y +CONFIG_NFSD_SCSILAYOUT=y +CONFIG_NFSD_FLEXFILELAYOUT=y +CONFIG_NFSD_V4_2_INTER_SSC=y +CONFIG_NFSD_V4_SECURITY_LABEL=y +CONFIG_GRACE_PERIOD=m +CONFIG_LOCKD=m +CONFIG_LOCKD_V4=y +CONFIG_NFS_ACL_SUPPORT=m +CONFIG_NFS_COMMON=y +CONFIG_NFS_V4_2_SSC_HELPER=y +CONFIG_SUNRPC=m +CONFIG_SUNRPC_GSS=m +CONFIG_SUNRPC_BACKCHANNEL=y +CONFIG_RPCSEC_GSS_KRB5=m +CONFIG_RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA1=y +# CONFIG_RPCSEC_GSS_KRB5_ENCTYPES_CAMELLIA is not set +# CONFIG_RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA2 is not set +CONFIG_SUNRPC_DEBUG=y +CONFIG_SUNRPC_XPRT_RDMA=m +CONFIG_CEPH_FS=m +# CONFIG_CEPH_FSCACHE is not set +CONFIG_CEPH_FS_POSIX_ACL=y +# CONFIG_CEPH_FS_SECURITY_LABEL is not set +CONFIG_CIFS=m +# CONFIG_CIFS_STATS2 is not set +CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y +CONFIG_CIFS_UPCALL=y +CONFIG_CIFS_XATTR=y +CONFIG_CIFS_POSIX=y +CONFIG_CIFS_DEBUG=y +# CONFIG_CIFS_DEBUG2 is not set +# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set +CONFIG_CIFS_DFS_UPCALL=y +# CONFIG_CIFS_SWN_UPCALL is not set +# CONFIG_CIFS_SMB_DIRECT is not set +# CONFIG_CIFS_FSCACHE is not set +# CONFIG_SMB_SERVER is not set +CONFIG_SMBFS=m +# CONFIG_CODA_FS is not set +# CONFIG_AFS_FS is not set +CONFIG_9P_FS=y +CONFIG_9P_FS_POSIX_ACL=y +CONFIG_9P_FS_SECURITY=y +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_CODEPAGE_737=m +CONFIG_NLS_CODEPAGE_775=m +CONFIG_NLS_CODEPAGE_850=m +CONFIG_NLS_CODEPAGE_852=m +CONFIG_NLS_CODEPAGE_855=m +CONFIG_NLS_CODEPAGE_857=m +CONFIG_NLS_CODEPAGE_860=m +CONFIG_NLS_CODEPAGE_861=m +CONFIG_NLS_CODEPAGE_862=m +CONFIG_NLS_CODEPAGE_863=m +CONFIG_NLS_CODEPAGE_864=m +CONFIG_NLS_CODEPAGE_865=m +CONFIG_NLS_CODEPAGE_866=m +CONFIG_NLS_CODEPAGE_869=m +CONFIG_NLS_CODEPAGE_936=m +CONFIG_NLS_CODEPAGE_950=m +CONFIG_NLS_CODEPAGE_932=m +CONFIG_NLS_CODEPAGE_949=m +CONFIG_NLS_CODEPAGE_874=m +CONFIG_NLS_ISO8859_8=m +CONFIG_NLS_CODEPAGE_1250=m +CONFIG_NLS_CODEPAGE_1251=m +CONFIG_NLS_ASCII=y +CONFIG_NLS_ISO8859_1=m +CONFIG_NLS_ISO8859_2=m +CONFIG_NLS_ISO8859_3=m +CONFIG_NLS_ISO8859_4=m +CONFIG_NLS_ISO8859_5=m +CONFIG_NLS_ISO8859_6=m +CONFIG_NLS_ISO8859_7=m +CONFIG_NLS_ISO8859_9=m +CONFIG_NLS_ISO8859_13=m +CONFIG_NLS_ISO8859_14=m +CONFIG_NLS_ISO8859_15=m +CONFIG_NLS_KOI8_R=m +CONFIG_NLS_KOI8_U=m +CONFIG_NLS_MAC_ROMAN=m +CONFIG_NLS_MAC_CELTIC=m +CONFIG_NLS_MAC_CENTEURO=m +CONFIG_NLS_MAC_CROATIAN=m +CONFIG_NLS_MAC_CYRILLIC=m +CONFIG_NLS_MAC_GAELIC=m +CONFIG_NLS_MAC_GREEK=m +CONFIG_NLS_MAC_ICELAND=m +CONFIG_NLS_MAC_INUIT=m +CONFIG_NLS_MAC_ROMANIAN=m +CONFIG_NLS_MAC_TURKISH=m +CONFIG_NLS_UTF8=m +CONFIG_NLS_UCS2_UTILS=m +CONFIG_DLM=m +# CONFIG_DLM_DEBUG is not set +CONFIG_UNICODE=y +# CONFIG_UNICODE_NORMALIZATION_SELFTEST is not set +CONFIG_IO_WQ=y +# end of File systems + +# +# Security options +# +CONFIG_KEYS=y +# CONFIG_KEYS_REQUEST_CACHE is not set +CONFIG_PERSISTENT_KEYRINGS=y +CONFIG_TRUSTED_KEYS=y +CONFIG_TRUSTED_KEYS_TPM=y +CONFIG_ENCRYPTED_KEYS=y +# CONFIG_USER_DECRYPTED_DATA is not set +# CONFIG_KEY_DH_OPERATIONS is not set +# CONFIG_SECURITY_DMESG_RESTRICT is not set +CONFIG_SECURITY=y +CONFIG_SECURITYFS=y +CONFIG_SECURITY_NETWORK=y +CONFIG_SECURITY_INFINIBAND=y +CONFIG_SECURITY_NETWORK_XFRM=y +CONFIG_SECURITY_PATH=y +CONFIG_LSM_MMAP_MIN_ADDR=32768 +CONFIG_HARDENED_USERCOPY=y +CONFIG_FORTIFY_SOURCE=y +# CONFIG_STATIC_USERMODEHELPER is not set +CONFIG_SECURITY_SELINUX=y +CONFIG_SECURITY_SELINUX_BOOTPARAM=y +CONFIG_SECURITY_SELINUX_DEVELOP=y +CONFIG_SECURITY_SELINUX_AVC_STATS=y +CONFIG_SECURITY_SELINUX_SIDTAB_HASH_BITS=9 +CONFIG_SECURITY_SELINUX_SID2STR_CACHE_SIZE=256 +# CONFIG_SECURITY_SELINUX_DEBUG is not set +# CONFIG_SECURITY_SMACK is not set +# CONFIG_SECURITY_TOMOYO is not set +CONFIG_SECURITY_APPARMOR=y +# CONFIG_SECURITY_APPARMOR_DEBUG is not set +CONFIG_SECURITY_APPARMOR_INTROSPECT_POLICY=y +CONFIG_SECURITY_APPARMOR_HASH=y +CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y +CONFIG_SECURITY_APPARMOR_EXPORT_BINARY=y +CONFIG_SECURITY_APPARMOR_PARANOID_LOAD=y +# CONFIG_SECURITY_LOADPIN is not set +CONFIG_SECURITY_YAMA=y +# CONFIG_SECURITY_SAFESETID is not set +CONFIG_SECURITY_LOCKDOWN_LSM=y +CONFIG_SECURITY_LOCKDOWN_LSM_EARLY=y +CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y +# CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY is not set +# CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY is not set +# CONFIG_SECURITY_LANDLOCK is not set +CONFIG_INTEGRITY=y +CONFIG_INTEGRITY_SIGNATURE=y +CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y +CONFIG_INTEGRITY_TRUSTED_KEYRING=y +CONFIG_INTEGRITY_PLATFORM_KEYRING=y +# CONFIG_INTEGRITY_MACHINE_KEYRING is not set +CONFIG_LOAD_UEFI_KEYS=y +CONFIG_INTEGRITY_AUDIT=y +CONFIG_IMA=y +# CONFIG_IMA_KEXEC is not set +CONFIG_IMA_MEASURE_PCR_IDX=10 +CONFIG_IMA_LSM_RULES=y +CONFIG_IMA_NG_TEMPLATE=y +# CONFIG_IMA_SIG_TEMPLATE is not set +CONFIG_IMA_DEFAULT_TEMPLATE="ima-ng" +# CONFIG_IMA_DEFAULT_HASH_SHA1 is not set +CONFIG_IMA_DEFAULT_HASH_SHA256=y +# CONFIG_IMA_DEFAULT_HASH_SHA512 is not set +# CONFIG_IMA_DEFAULT_HASH_SM3 is not set +CONFIG_IMA_DEFAULT_HASH="sha256" +# CONFIG_IMA_WRITE_POLICY is not set +CONFIG_IMA_READ_POLICY=y +CONFIG_IMA_APPRAISE=y +# CONFIG_IMA_ARCH_POLICY is not set +# CONFIG_IMA_APPRAISE_BUILD_POLICY is not set +CONFIG_IMA_APPRAISE_BOOTPARAM=y +CONFIG_IMA_APPRAISE_MODSIG=y +# CONFIG_IMA_KEYRINGS_PERMIT_SIGNED_BY_BUILTIN_OR_SECONDARY is not set +# CONFIG_IMA_BLACKLIST_KEYRING is not set +CONFIG_IMA_LOAD_X509=y +CONFIG_IMA_X509_PATH="/etc/keys/x509_ima.der" +# CONFIG_IMA_APPRAISE_SIGNED_INIT is not set +CONFIG_IMA_MEASURE_ASYMMETRIC_KEYS=y +CONFIG_IMA_QUEUE_EARLY_BOOT_KEYS=y +# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set +# CONFIG_IMA_DISABLE_HTABLE is not set +CONFIG_IMA_DIGEST_LIST=y +CONFIG_IMA_DIGEST_LISTS_DIR="/etc/ima/digest_lists" +CONFIG_IMA_STANDARD_DIGEST_DB_SIZE=y +# CONFIG_IMA_MAX_DIGEST_DB_SIZE is not set +# CONFIG_IMA_CUSTOM_DIGEST_DB_SIZE is not set +CONFIG_IMA_DIGEST_DB_MEGABYTES=16 +CONFIG_IMA_PARSER_BINARY_PATH="/usr/bin/upload_digest_lists" +# CONFIG_IMA_OVERLAYFS_DETECTION_BYPASS is not set +CONFIG_EVM=y +# CONFIG_EVM_DEFAULT_HASH_SHA1 is not set +CONFIG_EVM_DEFAULT_HASH_SHA256=y +# CONFIG_EVM_DEFAULT_HASH_SHA512 is not set +CONFIG_EVM_DEFAULT_HASH="sha256" +CONFIG_EVM_ATTR_FSUUID=y +# CONFIG_EVM_ADD_XATTRS is not set +CONFIG_EVM_LOAD_X509=y +CONFIG_EVM_X509_PATH="/etc/keys/x509_evm.der" +CONFIG_DEFAULT_SECURITY_SELINUX=y +# CONFIG_DEFAULT_SECURITY_APPARMOR is not set +# CONFIG_DEFAULT_SECURITY_DAC is not set +CONFIG_LSM="lockdown,yama,loadpin,safesetid,integrity,selinux,smack,tomoyo,apparmor,bpf" + +# +# Kernel hardening options +# + +# +# Memory initialization +# +CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y +CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y +CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y +CONFIG_INIT_STACK_NONE=y +# CONFIG_INIT_STACK_ALL_PATTERN is not set +# CONFIG_INIT_STACK_ALL_ZERO is not set +# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set +# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set +CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y +# CONFIG_ZERO_CALL_USED_REGS is not set +# end of Memory initialization + +# +# Hardening of kernel data structures +# +CONFIG_LIST_HARDENED=y +# CONFIG_BUG_ON_DATA_CORRUPTION is not set +# end of Hardening of kernel data structures + +CONFIG_RANDSTRUCT_NONE=y +# end of Kernel hardening options +# end of Security options + +CONFIG_XOR_BLOCKS=m +CONFIG_ASYNC_CORE=m +CONFIG_ASYNC_MEMCPY=m +CONFIG_ASYNC_XOR=m +CONFIG_ASYNC_PQ=m +CONFIG_ASYNC_RAID6_RECOV=m +CONFIG_CRYPTO=y + +# +# Crypto core or helper +# +CONFIG_CRYPTO_FIPS=y +CONFIG_CRYPTO_FIPS_NAME="Linux Kernel Cryptographic API" +# CONFIG_CRYPTO_FIPS_CUSTOM_VERSION is not set +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_AEAD=y +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_SIG=y +CONFIG_CRYPTO_SIG2=y +CONFIG_CRYPTO_SKCIPHER=y +CONFIG_CRYPTO_SKCIPHER2=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_RNG=y +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_RNG_DEFAULT=y +CONFIG_CRYPTO_AKCIPHER2=y +CONFIG_CRYPTO_AKCIPHER=y +CONFIG_CRYPTO_KPP2=y +CONFIG_CRYPTO_KPP=m +CONFIG_CRYPTO_ACOMP2=y +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +CONFIG_CRYPTO_USER=m +# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set +# CONFIG_CRYPTO_MANAGER_EXTRA_TESTS is not set +CONFIG_CRYPTO_NULL=y +CONFIG_CRYPTO_NULL2=y +CONFIG_CRYPTO_PCRYPT=m +CONFIG_CRYPTO_CRYPTD=m +CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_TEST=m +CONFIG_CRYPTO_ENGINE=m +# end of Crypto core or helper + +# +# Public-key cryptography +# +CONFIG_CRYPTO_RSA=y +CONFIG_CRYPTO_DH=m +# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set +CONFIG_CRYPTO_ECC=m +CONFIG_CRYPTO_ECDH=m +# CONFIG_CRYPTO_ECDSA is not set +# CONFIG_CRYPTO_ECRDSA is not set +CONFIG_CRYPTO_SM2=y +CONFIG_CRYPTO_CURVE25519=m +# end of Public-key cryptography + +# +# Block ciphers +# +CONFIG_CRYPTO_AES=y +# CONFIG_CRYPTO_AES_TI is not set +CONFIG_CRYPTO_ANUBIS=m +# CONFIG_CRYPTO_ARIA is not set +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_BLOWFISH_COMMON=m +CONFIG_CRYPTO_CAMELLIA=m +CONFIG_CRYPTO_CAST_COMMON=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_DES=m +CONFIG_CRYPTO_FCRYPT=m +CONFIG_CRYPTO_KHAZAD=m +CONFIG_CRYPTO_SEED=m +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_SM4=m +CONFIG_CRYPTO_SM4_GENERIC=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_COMMON=m +# end of Block ciphers + +# +# Length-preserving ciphers and modes +# +# CONFIG_CRYPTO_ADIANTUM is not set +CONFIG_CRYPTO_ARC4=m +CONFIG_CRYPTO_CHACHA20=m +CONFIG_CRYPTO_CBC=y +# CONFIG_CRYPTO_CFB is not set +CONFIG_CRYPTO_CTR=y +CONFIG_CRYPTO_CTS=m +CONFIG_CRYPTO_ECB=y +# CONFIG_CRYPTO_HCTR2 is not set +# CONFIG_CRYPTO_KEYWRAP is not set +CONFIG_CRYPTO_LRW=m +# CONFIG_CRYPTO_OFB is not set +CONFIG_CRYPTO_PCBC=m +CONFIG_CRYPTO_XTS=m +CONFIG_CRYPTO_NHPOLY1305=m +# end of Length-preserving ciphers and modes + +# +# AEAD (authenticated encryption with associated data) ciphers +# +# CONFIG_CRYPTO_AEGIS128 is not set +CONFIG_CRYPTO_CHACHA20POLY1305=m +CONFIG_CRYPTO_CCM=m +CONFIG_CRYPTO_GCM=y +CONFIG_CRYPTO_GENIV=y +CONFIG_CRYPTO_SEQIV=y +CONFIG_CRYPTO_ECHAINIV=m +CONFIG_CRYPTO_ESSIV=m +# end of AEAD (authenticated encryption with associated data) ciphers + +# +# Hashes, digests, and MACs +# +CONFIG_CRYPTO_BLAKE2B=m +CONFIG_CRYPTO_CMAC=m +CONFIG_CRYPTO_GHASH=y +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_MD4=m +CONFIG_CRYPTO_MD5=y +CONFIG_CRYPTO_MICHAEL_MIC=m +CONFIG_CRYPTO_POLY1305=m +CONFIG_CRYPTO_RMD160=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA512=y +CONFIG_CRYPTO_SHA3=y +CONFIG_CRYPTO_SM3=y +CONFIG_CRYPTO_SM3_GENERIC=y +# CONFIG_CRYPTO_STREEBOG is not set +CONFIG_CRYPTO_VMAC=m +CONFIG_CRYPTO_WP512=m +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_XXHASH=m +# end of Hashes, digests, and MACs + +# +# CRCs (cyclic redundancy checks) +# +CONFIG_CRYPTO_CRC32C=y +CONFIG_CRYPTO_CRC32=m +CONFIG_CRYPTO_CRCT10DIF=y +CONFIG_CRYPTO_CRC64_ROCKSOFT=m +# end of CRCs (cyclic redundancy checks) + +# +# Compression +# +CONFIG_CRYPTO_DEFLATE=y +CONFIG_CRYPTO_LZO=y +# CONFIG_CRYPTO_842 is not set +CONFIG_CRYPTO_LZ4=m +CONFIG_CRYPTO_LZ4HC=m +CONFIG_CRYPTO_ZSTD=y +# end of Compression + +# +# Random number generation +# +CONFIG_CRYPTO_ANSI_CPRNG=m +CONFIG_CRYPTO_DRBG_MENU=y +CONFIG_CRYPTO_DRBG_HMAC=y +CONFIG_CRYPTO_DRBG_HASH=y +CONFIG_CRYPTO_DRBG_CTR=y +CONFIG_CRYPTO_DRBG=y +CONFIG_CRYPTO_JITTERENTROPY=y +# CONFIG_CRYPTO_JITTERENTROPY_TESTINTERFACE is not set +# end of Random number generation + +# +# Userspace interface +# +CONFIG_CRYPTO_USER_API=y +CONFIG_CRYPTO_USER_API_HASH=y +CONFIG_CRYPTO_USER_API_SKCIPHER=y +CONFIG_CRYPTO_USER_API_RNG=y +# CONFIG_CRYPTO_USER_API_RNG_CAVP is not set +CONFIG_CRYPTO_USER_API_AEAD=y +CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y +# CONFIG_CRYPTO_STATS is not set +# end of Userspace interface + +CONFIG_CRYPTO_HASH_INFO=y +CONFIG_CRYPTO_NHPOLY1305_NEON=m +CONFIG_CRYPTO_CHACHA20_NEON=m + +# +# Accelerated Cryptographic Algorithms for CPU (arm64) +# +CONFIG_CRYPTO_GHASH_ARM64_CE=m +CONFIG_CRYPTO_POLY1305_NEON=m +CONFIG_CRYPTO_SHA1_ARM64_CE=m +CONFIG_CRYPTO_SHA256_ARM64=m +CONFIG_CRYPTO_SHA2_ARM64_CE=m +CONFIG_CRYPTO_SHA512_ARM64=m +CONFIG_CRYPTO_SHA512_ARM64_CE=m +CONFIG_CRYPTO_SHA3_ARM64=m +# CONFIG_CRYPTO_SM3_NEON is not set +CONFIG_CRYPTO_SM3_ARM64_CE=m +# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set +CONFIG_CRYPTO_AES_ARM64=y +CONFIG_CRYPTO_AES_ARM64_CE=m +CONFIG_CRYPTO_AES_ARM64_CE_BLK=m +CONFIG_CRYPTO_AES_ARM64_NEON_BLK=m +CONFIG_CRYPTO_AES_ARM64_BS=m +CONFIG_CRYPTO_SM4_ARM64_CE=m +CONFIG_CRYPTO_SM4_ARM64_CE_BLK=m +CONFIG_CRYPTO_SM4_ARM64_NEON_BLK=m +CONFIG_CRYPTO_AES_ARM64_CE_CCM=m +# CONFIG_CRYPTO_SM4_ARM64_CE_CCM is not set +# CONFIG_CRYPTO_SM4_ARM64_CE_GCM is not set +CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m +# end of Accelerated Cryptographic Algorithms for CPU (arm64) + +CONFIG_CRYPTO_HW=y +# CONFIG_CRYPTO_DEV_ATMEL_ECC is not set +# CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set +CONFIG_CRYPTO_DEV_CCP=y +CONFIG_CRYPTO_DEV_CCP_DD=m +CONFIG_CRYPTO_DEV_SP_CCP=y +CONFIG_CRYPTO_DEV_CCP_CRYPTO=m +# CONFIG_CRYPTO_DEV_CCP_DEBUGFS is not set +CONFIG_CRYPTO_DEV_CPT=m +CONFIG_CAVIUM_CPT=m +# CONFIG_CRYPTO_DEV_NITROX_CNN55XX is not set +# CONFIG_CRYPTO_DEV_OCTEONTX_CPT is not set +# CONFIG_CRYPTO_DEV_QAT_DH895xCC is not set +# CONFIG_CRYPTO_DEV_QAT_C3XXX is not set +# CONFIG_CRYPTO_DEV_QAT_C62X is not set +# CONFIG_CRYPTO_DEV_QAT_4XXX is not set +# CONFIG_CRYPTO_DEV_QAT_420XX is not set +# CONFIG_CRYPTO_DEV_QAT_DH895xCCVF is not set +# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set +# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set +CONFIG_CRYPTO_DEV_CAVIUM_ZIP=m +# CONFIG_CRYPTO_DEV_QCE is not set +# CONFIG_CRYPTO_DEV_QCOM_RNG is not set +CONFIG_CRYPTO_DEV_CHELSIO=m +CONFIG_CRYPTO_DEV_VIRTIO=m +# CONFIG_CRYPTO_DEV_SAFEXCEL is not set +# CONFIG_CRYPTO_DEV_CCREE is not set +CONFIG_CRYPTO_DEV_HISI_SEC=m +CONFIG_CRYPTO_DEV_HISI_SEC2=m +CONFIG_CRYPTO_DEV_HISI_QM=m +CONFIG_CRYPTO_DEV_HISI_ZIP=m +CONFIG_CRYPTO_DEV_HISI_HPRE=m +CONFIG_CRYPTO_DEV_HISI_TRNG=m +# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set +CONFIG_ASYMMETRIC_KEY_TYPE=y +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y +CONFIG_X509_CERTIFICATE_PARSER=y +# CONFIG_PKCS8_PRIVATE_KEY_PARSER is not set +CONFIG_PKCS7_MESSAGE_PARSER=y +# CONFIG_PKCS7_TEST_KEY is not set +CONFIG_SIGNED_PE_FILE_VERIFICATION=y +# CONFIG_FIPS_SIGNATURE_SELFTEST is not set +CONFIG_PGP_LIBRARY=y +CONFIG_PGP_KEY_PARSER=y +CONFIG_PGP_PRELOAD=y + +# +# Certificates for signature checking +# +CONFIG_MODULE_SIG_KEY="certs/signing_key.pem" +CONFIG_MODULE_SIG_KEY_TYPE_RSA=y +# CONFIG_MODULE_SIG_KEY_TYPE_ECDSA is not set +CONFIG_SYSTEM_TRUSTED_KEYRING=y +CONFIG_SYSTEM_TRUSTED_KEYS="" +# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set +CONFIG_SECONDARY_TRUSTED_KEYRING=y +CONFIG_SYSTEM_BLACKLIST_KEYRING=y +CONFIG_SYSTEM_BLACKLIST_HASH_LIST="" +CONFIG_SYSTEM_REVOCATION_LIST=y +CONFIG_SYSTEM_REVOCATION_KEYS="" +# CONFIG_SYSTEM_BLACKLIST_AUTH_UPDATE is not set +CONFIG_PGP_PRELOAD_PUBLIC_KEYS=y +# end of Certificates for signature checking + +CONFIG_BINARY_PRINTF=y + +# +# Library routines +# +CONFIG_RAID6_PQ=m +CONFIG_RAID6_PQ_BENCHMARK=y +CONFIG_LINEAR_RANGES=y +# CONFIG_PACKING is not set +CONFIG_BITREVERSE=y +CONFIG_HAVE_ARCH_BITREVERSE=y +CONFIG_GENERIC_STRNCPY_FROM_USER=y +CONFIG_GENERIC_STRNLEN_USER=y +CONFIG_GENERIC_NET_UTILS=y +CONFIG_CORDIC=m +# CONFIG_PRIME_NUMBERS is not set +CONFIG_RATIONAL=y +CONFIG_GENERIC_PCI_IOMAP=y +CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +CONFIG_ARCH_HAS_FAST_MULTIPLIER=y +CONFIG_ARCH_USE_SYM_ANNOTATIONS=y +CONFIG_INDIRECT_PIO=y +# CONFIG_TRACE_MMIO_ACCESS is not set + +# +# Crypto library routines +# +CONFIG_CRYPTO_LIB_UTILS=y +CONFIG_CRYPTO_LIB_AES=y +CONFIG_CRYPTO_LIB_ARC4=m +CONFIG_CRYPTO_LIB_GF128MUL=y +CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y +CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=m +CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m +# CONFIG_CRYPTO_LIB_CHACHA is not set +CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m +# CONFIG_CRYPTO_LIB_CURVE25519 is not set +CONFIG_CRYPTO_LIB_DES=m +CONFIG_CRYPTO_LIB_POLY1305_RSIZE=9 +CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=m +CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m +# CONFIG_CRYPTO_LIB_POLY1305 is not set +# CONFIG_CRYPTO_LIB_CHACHA20POLY1305 is not set +CONFIG_CRYPTO_LIB_SHA1=y +CONFIG_CRYPTO_LIB_SHA256=y +# end of Crypto library routines + +CONFIG_CRC_CCITT=y +CONFIG_CRC16=y +CONFIG_CRC_T10DIF=y +CONFIG_CRC64_ROCKSOFT=m +CONFIG_CRC_ITU_T=m +CONFIG_CRC32=y +# CONFIG_CRC32_SELFTEST is not set +CONFIG_CRC32_SLICEBY8=y +# CONFIG_CRC32_SLICEBY4 is not set +# CONFIG_CRC32_SARWATE is not set +# CONFIG_CRC32_BIT is not set +CONFIG_CRC64=m +# CONFIG_CRC4 is not set +CONFIG_CRC7=m +CONFIG_LIBCRC32C=m +CONFIG_CRC8=m +CONFIG_XXHASH=y +CONFIG_AUDIT_GENERIC=y +CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y +CONFIG_AUDIT_COMPAT_GENERIC=y +# CONFIG_RANDOM32_SELFTEST is not set +CONFIG_ZLIB_INFLATE=y +CONFIG_ZLIB_DEFLATE=y +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y +CONFIG_LZ4_COMPRESS=m +CONFIG_LZ4HC_COMPRESS=m +CONFIG_LZ4_DECOMPRESS=y +CONFIG_ZSTD_COMMON=y +CONFIG_ZSTD_COMPRESS=y +CONFIG_ZSTD_DECOMPRESS=y +CONFIG_XZ_DEC=y +CONFIG_XZ_DEC_X86=y +CONFIG_XZ_DEC_POWERPC=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_SPARC=y +# CONFIG_XZ_DEC_MICROLZMA is not set +CONFIG_XZ_DEC_BCJ=y +# CONFIG_XZ_DEC_TEST is not set +CONFIG_DECOMPRESS_GZIP=y +CONFIG_DECOMPRESS_BZIP2=y +CONFIG_DECOMPRESS_LZMA=y +CONFIG_DECOMPRESS_XZ=y +CONFIG_DECOMPRESS_LZO=y +CONFIG_DECOMPRESS_LZ4=y +CONFIG_DECOMPRESS_ZSTD=y +CONFIG_GENERIC_ALLOCATOR=y +CONFIG_REED_SOLOMON=m +CONFIG_REED_SOLOMON_ENC8=y +CONFIG_REED_SOLOMON_DEC8=y +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_KMP=m +CONFIG_TEXTSEARCH_BM=m +CONFIG_TEXTSEARCH_FSM=m +CONFIG_BTREE=y +CONFIG_INTERVAL_TREE=y +CONFIG_INTERVAL_TREE_SPAN_ITER=y +CONFIG_XARRAY_MULTI=y +CONFIG_ASSOCIATIVE_ARRAY=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT=y +CONFIG_HAS_IOPORT_MAP=y +CONFIG_HAS_DMA=y +CONFIG_DMA_OPS=y +CONFIG_NEED_SG_DMA_FLAGS=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_DMA_DECLARE_COHERENT=y +CONFIG_ARCH_HAS_SETUP_DMA_OPS=y +CONFIG_ARCH_HAS_TEARDOWN_DMA_OPS=y +CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y +CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y +CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y +CONFIG_SWIOTLB=y +# CONFIG_SWIOTLB_DYNAMIC is not set +CONFIG_DMA_BOUNCE_UNALIGNED_KMALLOC=y +CONFIG_DMA_RESTRICTED_POOL=y +CONFIG_DMA_NONCOHERENT_MMAP=y +CONFIG_DMA_COHERENT_POOL=y +CONFIG_DMA_DIRECT_REMAP=y +CONFIG_DMA_CMA=y +# CONFIG_DMA_NUMA_CMA is not set + +# +# Default contiguous memory area size: +# +CONFIG_CMA_SIZE_MBYTES=0 +CONFIG_CMA_SIZE_SEL_MBYTES=y +# CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set +# CONFIG_CMA_SIZE_SEL_MIN is not set +# CONFIG_CMA_SIZE_SEL_MAX is not set +CONFIG_CMA_ALIGNMENT=8 +# CONFIG_DMA_API_DEBUG is not set +CONFIG_DMA_MAP_BENCHMARK=y +CONFIG_SGL_ALLOC=y +CONFIG_CHECK_SIGNATURE=y +CONFIG_CPU_RMAP=y +CONFIG_DQL=y +CONFIG_GLOB=y +# CONFIG_GLOB_SELFTEST is not set +CONFIG_NLATTR=y +CONFIG_LRU_CACHE=m +CONFIG_CLZ_TAB=y +CONFIG_IRQ_POLL=y +CONFIG_MPILIB=y +CONFIG_SIGNATURE=y +CONFIG_DIMLIB=y +CONFIG_LIBFDT=y +CONFIG_OID_REGISTRY=y +CONFIG_UCS2_STRING=y +CONFIG_HAVE_GENERIC_VDSO=y +CONFIG_GENERIC_GETTIMEOFDAY=y +CONFIG_GENERIC_VDSO_TIME_NS=y +CONFIG_FONT_SUPPORT=y +# CONFIG_FONTS is not set +CONFIG_FONT_8x8=y +CONFIG_FONT_8x16=y +CONFIG_SG_SPLIT=y +CONFIG_SG_POOL=y +CONFIG_ARCH_HAS_PMEM_API=y +CONFIG_MEMREGION=y +CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y +CONFIG_ARCH_HAS_COPY_MC=y +CONFIG_ARCH_STACKWALK=y +CONFIG_STACKDEPOT=y +CONFIG_SBITMAP=y +# end of Library routines + +CONFIG_GENERIC_IOREMAP=y +CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED=y +CONFIG_PLDMFW=y +CONFIG_ASN1_ENCODER=y + +# +# Kernel hacking +# + +# +# printk and dmesg options +# +CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_CALLER=y +# CONFIG_STACKTRACE_BUILD_ID is not set +CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 +CONFIG_CONSOLE_LOGLEVEL_QUIET=4 +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 +CONFIG_BOOT_PRINTK_DELAY=y +CONFIG_DYNAMIC_DEBUG=y +CONFIG_DYNAMIC_DEBUG_CORE=y +CONFIG_SYMBOLIC_ERRNAME=y +CONFIG_DEBUG_BUGVERBOSE=y +# end of printk and dmesg options + +CONFIG_DEBUG_KERNEL=y +CONFIG_DEBUG_MISC=y + +# +# Compile-time checks and compiler options +# +CONFIG_DEBUG_INFO=y +CONFIG_AS_HAS_NON_CONST_LEB128=y +# CONFIG_DEBUG_INFO_NONE is not set +# CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT is not set +CONFIG_DEBUG_INFO_DWARF4=y +# CONFIG_DEBUG_INFO_DWARF5 is not set +# CONFIG_DEBUG_INFO_REDUCED is not set +CONFIG_DEBUG_INFO_COMPRESSED_NONE=y +# CONFIG_DEBUG_INFO_COMPRESSED_ZLIB is not set +# CONFIG_DEBUG_INFO_SPLIT is not set +# CONFIG_DEBUG_INFO_BTF is not set +# CONFIG_GDB_SCRIPTS is not set +CONFIG_FRAME_WARN=2048 +CONFIG_STRIP_ASM_SYMS=y +# CONFIG_READABLE_ASM is not set +# CONFIG_HEADERS_INSTALL is not set +# CONFIG_OPTIMIZE_INLINING is not set +CONFIG_DEBUG_SECTION_MISMATCH=y +CONFIG_SECTION_MISMATCH_WARN_ONLY=y +# CONFIG_DEBUG_FORCE_FUNCTION_ALIGN_64B is not set +CONFIG_ARCH_WANT_FRAME_POINTERS=y +CONFIG_FRAME_POINTER=y +# CONFIG_VMLINUX_MAP is not set +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +# end of Compile-time checks and compiler options + +# +# Generic Kernel Debugging Instruments +# +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1 +CONFIG_MAGIC_SYSRQ_SERIAL=y +CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE="" +CONFIG_DEBUG_FS=y +CONFIG_DEBUG_FS_ALLOW_ALL=y +# CONFIG_DEBUG_FS_DISALLOW_MOUNT is not set +# CONFIG_DEBUG_FS_ALLOW_NONE is not set +CONFIG_HAVE_ARCH_KGDB=y +CONFIG_KGDB=y +CONFIG_KGDB_HONOUR_BLOCKLIST=y +CONFIG_KGDB_SERIAL_CONSOLE=y +CONFIG_KGDB_TESTS=y +# CONFIG_KGDB_TESTS_ON_BOOT is not set +CONFIG_KGDB_KDB=y +CONFIG_KDB_DEFAULT_ENABLE=0x0 +CONFIG_KDB_KEYBOARD=y +CONFIG_KDB_CONTINUE_CATASTROPHIC=0 +CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y +# CONFIG_UBSAN is not set +CONFIG_HAVE_ARCH_KCSAN=y +CONFIG_HAVE_KCSAN_COMPILER=y +# CONFIG_KCSAN is not set +# end of Generic Kernel Debugging Instruments + +# +# Networking Debugging +# +# CONFIG_NET_DEV_REFCNT_TRACKER is not set +# CONFIG_NET_NS_REFCNT_TRACKER is not set +# CONFIG_DEBUG_NET is not set +# end of Networking Debugging + +# +# Memory Debugging +# +# CONFIG_PAGE_EXTENSION is not set +# CONFIG_DEBUG_PAGEALLOC is not set +CONFIG_SLUB_DEBUG=y +# CONFIG_SLUB_DEBUG_ON is not set +# CONFIG_PAGE_OWNER is not set +# CONFIG_PAGE_TABLE_CHECK is not set +# CONFIG_PAGE_POISONING is not set +# CONFIG_DEBUG_PAGE_REF is not set +# CONFIG_DEBUG_RODATA_TEST is not set +CONFIG_ARCH_HAS_DEBUG_WX=y +# CONFIG_DEBUG_WX is not set +CONFIG_GENERIC_PTDUMP=y +# CONFIG_PTDUMP_DEBUGFS is not set +CONFIG_HAVE_DEBUG_KMEMLEAK=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_PER_VMA_LOCK_STATS is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_SHRINKER_DEBUG is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_SCHED_STACK_END_CHECK is not set +CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y +# CONFIG_DEBUG_VM is not set +# CONFIG_DEBUG_VM_PGTABLE is not set +CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y +# CONFIG_DEBUG_VIRTUAL is not set +CONFIG_DEBUG_MEMORY_INIT=y +# CONFIG_DEBUG_PER_CPU_MAPS is not set +CONFIG_HAVE_ARCH_KASAN=y +CONFIG_HAVE_ARCH_KASAN_SW_TAGS=y +CONFIG_HAVE_ARCH_KASAN_VMALLOC=y +CONFIG_CC_HAS_KASAN_GENERIC=y +CONFIG_CC_HAS_KASAN_SW_TAGS=y +CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y +# CONFIG_KASAN is not set +CONFIG_HAVE_ARCH_KFENCE=y +# CONFIG_KFENCE is not set +# end of Memory Debugging + +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Oops, Lockups and Hangs +# +CONFIG_PANIC_ON_OOPS=y +CONFIG_PANIC_ON_OOPS_VALUE=1 +CONFIG_PANIC_TIMEOUT=0 +CONFIG_LOCKUP_DETECTOR=y +CONFIG_SOFTLOCKUP_DETECTOR=y +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_HAVE_HARDLOCKUP_DETECTOR_BUDDY=y +CONFIG_SDEI_WATCHDOG=y +CONFIG_HARDLOCKUP_DETECTOR=y +# CONFIG_HARDLOCKUP_DETECTOR_PREFER_BUDDY is not set +CONFIG_HARDLOCKUP_DETECTOR_PERF=y +# CONFIG_HARDLOCKUP_DETECTOR_BUDDY is not set +# CONFIG_HARDLOCKUP_DETECTOR_ARCH is not set +CONFIG_HARDLOCKUP_DETECTOR_COUNTS_HRTIMER=y +CONFIG_BOOTPARAM_HARDLOCKUP_PANIC=y +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +# CONFIG_WQ_WATCHDOG is not set +# CONFIG_WQ_CPU_INTENSIVE_REPORT is not set +# CONFIG_TEST_LOCKUP is not set +# end of Debug Oops, Lockups and Hangs + +# +# Scheduler Debugging +# +CONFIG_SCHED_DEBUG=y +CONFIG_SCHED_INFO=y +CONFIG_SCHEDSTATS=y +# end of Scheduler Debugging + +# CONFIG_DEBUG_TIMEKEEPING is not set + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +CONFIG_LOCK_DEBUGGING_SUPPORT=y +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_DEBUG_SPINLOCK is not set +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_RWSEMS is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_LOCK_TORTURE_TEST is not set +# CONFIG_WW_MUTEX_SELFTEST is not set +# CONFIG_SCF_TORTURE_TEST is not set +# CONFIG_CSD_LOCK_WAIT_DEBUG is not set +# end of Lock Debugging (spinlocks, mutexes, etc...) + +# CONFIG_DEBUG_IRQFLAGS is not set +CONFIG_STACKTRACE=y +# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set +# CONFIG_DEBUG_KOBJECT is not set + +# +# Debug kernel data structures +# +CONFIG_DEBUG_LIST=y +# CONFIG_DEBUG_PLIST is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_MAPLE_TREE is not set +# end of Debug kernel data structures + +# +# RCU Debugging +# +# CONFIG_RCU_SCALE_TEST is not set +# CONFIG_RCU_TORTURE_TEST is not set +# CONFIG_RCU_REF_SCALE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0 +# CONFIG_RCU_CPU_STALL_CPUTIME is not set +# CONFIG_RCU_TRACE is not set +# CONFIG_RCU_EQS_DEBUG is not set +# end of RCU Debugging + +# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set +# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set +# CONFIG_LATENCYTOP is not set +# CONFIG_DEBUG_CGROUP_REF is not set +CONFIG_NOP_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_RETVAL=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_CALL_OPS=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_ARGS=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_TRACER_MAX_TRACE=y +CONFIG_TRACE_CLOCK=y +CONFIG_RING_BUFFER=y +CONFIG_EVENT_TRACING=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_TRACING=y +CONFIG_GENERIC_TRACER=y +CONFIG_TRACING_SUPPORT=y +CONFIG_FTRACE=y +CONFIG_BOOTTIME_TRACING=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUNCTION_GRAPH_TRACER=y +# CONFIG_FUNCTION_GRAPH_RETVAL is not set +CONFIG_DYNAMIC_FTRACE=y +CONFIG_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y +CONFIG_DYNAMIC_FTRACE_WITH_CALL_OPS=y +CONFIG_DYNAMIC_FTRACE_WITH_ARGS=y +CONFIG_FUNCTION_PROFILER=y +CONFIG_STACK_TRACER=y +# CONFIG_IRQSOFF_TRACER is not set +CONFIG_SCHED_TRACER=y +CONFIG_HWLAT_TRACER=y +CONFIG_OSNOISE_TRACER=y +CONFIG_TIMERLAT_TRACER=y +CONFIG_FTRACE_SYSCALLS=y +CONFIG_TRACER_SNAPSHOT=y +# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set +CONFIG_BRANCH_PROFILE_NONE=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_KPROBE_EVENTS=y +# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set +CONFIG_UPROBE_EVENTS=y +CONFIG_BPF_EVENTS=y +CONFIG_DYNAMIC_EVENTS=y +CONFIG_PROBE_EVENTS=y +# CONFIG_BPF_KPROBE_OVERRIDE is not set +CONFIG_FTRACE_MCOUNT_RECORD=y +CONFIG_FTRACE_MCOUNT_USE_PATCHABLE_FUNCTION_ENTRY=y +CONFIG_TRACING_MAP=y +CONFIG_SYNTH_EVENTS=y +# CONFIG_USER_EVENTS is not set +CONFIG_HIST_TRIGGERS=y +# CONFIG_TRACE_EVENT_INJECT is not set +# CONFIG_TRACEPOINT_BENCHMARK is not set +CONFIG_RING_BUFFER_BENCHMARK=m +# CONFIG_TRACE_EVAL_MAP_FILE is not set +# CONFIG_FTRACE_RECORD_RECURSION is not set +# CONFIG_FTRACE_STARTUP_TEST is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set +# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set +# CONFIG_PREEMPTIRQ_DELAY_TEST is not set +# CONFIG_SYNTH_EVENT_GEN_TEST is not set +# CONFIG_KPROBE_EVENT_GEN_TEST is not set +# CONFIG_HIST_TRIGGERS_DEBUG is not set +# CONFIG_RV is not set +# CONFIG_SAMPLES is not set +CONFIG_HAVE_SAMPLE_FTRACE_DIRECT=y +CONFIG_HAVE_SAMPLE_FTRACE_DIRECT_MULTI=y +CONFIG_STRICT_DEVMEM=y +CONFIG_IO_STRICT_DEVMEM=y + +# +# arm64 Debugging +# +CONFIG_PID_IN_CONTEXTIDR=y +# CONFIG_DEBUG_EFI is not set +# CONFIG_ARM64_RELOC_TEST is not set +CONFIG_CORESIGHT=m +CONFIG_CORESIGHT_LINKS_AND_SINKS=m +CONFIG_CORESIGHT_LINK_AND_SINK_TMC=m +# CONFIG_CORESIGHT_CATU is not set +# CONFIG_CORESIGHT_SINK_TPIU is not set +# CONFIG_CORESIGHT_SINK_ETBV10 is not set +CONFIG_CORESIGHT_SOURCE_ETM4X=m +CONFIG_ETM4X_IMPDEF_FEATURE=y +# CONFIG_CORESIGHT_STM is not set +# CONFIG_CORESIGHT_CPU_DEBUG is not set +# CONFIG_CORESIGHT_CTI is not set +CONFIG_CORESIGHT_TRBE=m +CONFIG_ULTRASOC_SMB=m +# CONFIG_CORESIGHT_TPDM is not set +# CONFIG_CORESIGHT_TPDA is not set +# CONFIG_CORESIGHT_DUMMY is not set +# end of arm64 Debugging + +# +# Kernel Testing and Coverage +# +# CONFIG_KUNIT is not set +# CONFIG_NOTIFIER_ERROR_INJECTION is not set +CONFIG_FUNCTION_ERROR_INJECTION=y +# CONFIG_FAULT_INJECTION is not set +CONFIG_ARCH_HAS_KCOV=y +CONFIG_CC_HAS_SANCOV_TRACE_PC=y +# CONFIG_KCOV is not set +# CONFIG_RUNTIME_TESTING_MENU is not set +CONFIG_ARCH_USE_MEMTEST=y +# CONFIG_MEMTEST is not set +# end of Kernel Testing and Coverage + +# +# Rust hacking +# +# end of Rust hacking +# end of Kernel hacking + +CONFIG_KWORKER_NUMA_AFFINITY=y diff --git a/kuasar-v1.0.0-vendor.tar.gz b/kuasar-v1.0.0-vendor.tar.gz index 569a1be6e8af66588a31a3771e52784f3ca060b9..e17fac2a81921c78740d9085555390dafc4a4d09 100644 --- a/kuasar-v1.0.0-vendor.tar.gz +++ b/kuasar-v1.0.0-vendor.tar.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b8627ed4f100a3a5b9ba0b1153b784f539862e1572721ed5d81e5b91ce65df10 -size 376658524 +oid sha256:aab201e46f293e937ea4c63f9460441b96bbbf1e26d556ee9e3267de2e566fdf +size 305952781 diff --git a/kuasar.spec b/kuasar.spec index f9a40add1a6d707623d2ac27d4c2910fa33ab34b..f7f3d45c19c22e2613244b3428551338377faf5c 100644 --- a/kuasar.spec +++ b/kuasar.spec @@ -2,13 +2,13 @@ Name: kuasar Version: 1.0.0 -Release: 5 +Release: 14 Summary: Kuasar is an efficient container runtime that supports multiple sandbox techniques. License: Apache License 2.0 URL: https://github.com/kuasar-io/kuasar Source0: kuasar-openeuler.tar.gz Source1: kernel.tar.gz -BuildRequires: automake golang bc glibc-devel glibc-static busybox glib2-devel glib2 ipvsadm conntrack-tools nfs-utils bash gcc cmake gcc-c++ +BuildRequires: automake golang bc glibc-devel glibc-static busybox glib2-devel glib2 ipvsadm conntrack-tools nfs-utils bash gcc cmake gcc-c++ musl-gcc BuildRequires: patch elfutils-libelf-devel openssl-devel bison flex rust cargo rust-packaging libgcc dtc-devel runc %define _cargo /usr/bin/env CARGO_HOME=.cargo /usr/bin/cargo @@ -20,6 +20,12 @@ BuildRequires: patch elfutils-libelf-devel openssl-devel bison flex rust cargo r %description Kuasar is an efficient container runtime that provides cloud-native, all-scenario container solutions by supporting multiple sandbox techniques. +%package cc +Summary: Kuasar-cc is an efficient container runtime that supports virtCCA confidential containers. + +%description cc +Kuasar-cc is an efficient container runtime that supports virtCCA confidential containers + %prep %setup -T -c -a 0 -n kuasar-%{version} %setup -T -c -a 1 -n kernel @@ -41,32 +47,65 @@ cp %{kuasarbuilddir}/kernel-config/kuasar-openeuler-kernel-aarch64.config ./.con cd %{kuasarbuilddir} sed -i '$a\[build\]\nrustflags = \["-Clink-arg=-s", "-Clink-arg=-Wl,-z,relro,-z,now"]' ./vmm/sandbox/.cargo/config.toml sed -i '$a\[build\]\nrustflags = \["-Clink-arg=-s", "-Clink-arg=-Wl,-z,relro,-z,now"]' ./vmm/task/.cargo/config.toml -HYPERVISOR=%{hypervisor} make bin/vmm-sandboxer %ifarch %{ix86} x86_64 ARCH=x86_64 HYPERVISOR=%{hypervisor} make bin/vmm-task %else +#build vmm-sandboxer for virtCCA confidential containers +HYPERVISOR=%{hypervisor} VMM_SANDBOX_FEATURES=virtcca make bin/vmm-sandboxer +mkdir -p %{kuasarbuilddir}/cc-bin && mv %{kuasarbuilddir}/bin/vmm-sandboxer %{kuasarbuilddir}/cc-bin/cc-vmm-sandboxer +#build vmm-task for virtCCA confidential containers +ulimit -n 4096 && ARCH=aarch64 HYPERVISOR=%{hypervisor} VMM_TASK_FEATURES=image-service make bin/vmm-task +cp %{kuasarbuilddir}/bin/vmm-task %{kuasarbuilddir}/cc-bin/cc-vmm-task + ARCH=aarch64 HYPERVISOR=%{hypervisor} make bin/vmm-task %endif +#build sandboxer for vmm containers +HYPERVISOR=%{hypervisor} make bin/vmm-sandboxer # build initrd -cp %{kuasarbuilddir}/bin/vmm-task ./initrd -cd initrd && sh -x make_kuasar_initrd.sh +cp %{kuasarbuilddir}/bin/vmm-task ./rootfs/ +cd rootfs && sh -x make_kuasar_initrd.sh + +# build cc rootfs.img +%ifarch %{ix86} aarch64 +cp -f %{kuasarbuilddir}/cc-bin/cc-vmm-task ./vmm-task +sh -x make_kuasar_virtcca_image.sh +%endif # build kernel cd %{_builddir}/kernel/linux/ make olddefconfig make %{?_smp_mflags} +%ifarch %{ix86} x86_64 +cp %{_builddir}/kernel/linux/arch/x86/boot/bzImage %{_builddir}/kernel/Image +%else +cp %{_builddir}/kernel/linux/arch/arm64/boot/Image %{_builddir}/kernel/ +%endif + +#build cc kernel +%ifarch %{ix86} aarch64 +cp %{kuasarbuilddir}/kernel-config/kuasar-openeuler-cc-kernel-aarch64.config ./.config +make -j32 +mkdir -p %{_builddir}/cc-kernel && cp %{_builddir}/kernel/linux/arch/arm64/boot/Image %{_builddir}/cc-kernel +%endif %install mkdir -p -m 750 %{buildroot}/%{kuasarconfdir} +install -p -m 750 -D %{_builddir}/kernel/Image %{buildroot}/%{kuasarconfdir}/vmlinux.bin %ifarch %{ix86} x86_64 -install -p -m 750 -D %{_builddir}/kernel/linux/arch/x86/boot/bzImage %{buildroot}/%{kuasarconfdir}/vmlinux.bin install -p -m 640 -D %{kuasarbuilddir}/vmm/sandbox/config_%{hypervisor}_x86_64.toml %{buildroot}/%{kuasarconfdir}/config.toml %else -install -p -m 750 -D %{_builddir}/kernel/linux/arch/arm64/boot/Image %{buildroot}/%{kuasarconfdir}/vmlinux.bin install -p -m 640 -D %{kuasarbuilddir}/vmm/sandbox/config_%{hypervisor}_aarch64.toml %{buildroot}/%{kuasarconfdir}/config.toml + +# install cc file +install -p -m 640 -D %{kuasarbuilddir}/vmm/sandbox/config_%{hypervisor}_virtcca_aarch64.toml %{buildroot}/%{kuasarconfdir}/cc-config.toml +install -p -m 750 -D %{_builddir}/cc-kernel/Image %{buildroot}%{kuasarconfdir}/cc-vmlinux.bin +install -p -m 750 -D %{kuasarbuilddir}/rootfs/rootfs.img %{buildroot}/%{kuasarconfdir}/cc-rootfs.img +install -p -m 750 -D %{kuasarbuilddir}/cc-bin/cc-vmm-sandboxer %{buildroot}/%{localbindir}/cc-vmm-sandboxer +install -p -m 640 -D %{kuasarbuilddir}/vmm/service/cc-kuasar-vmm.service %{buildroot}/%{_unitdir}/cc-kuasar-vmm.service +install -p -m 640 -D %{kuasarbuilddir}/vmm/service/cc-kuasar-vmm %{buildroot}/etc/sysconfig/cc-kuasar-vmm %endif -install -p -m 750 -D %{kuasarbuilddir}/initrd/kuasar.initrd %{buildroot}/%{kuasarconfdir}/kuasar.initrd +install -p -m 750 -D %{kuasarbuilddir}/rootfs/kuasar.initrd %{buildroot}/%{kuasarconfdir}/kuasar.initrd install -p -m 750 -D %{kuasarbuilddir}/bin/vmm-sandboxer %{buildroot}/%{localbindir}/vmm-sandboxer install -p -m 640 -D %{kuasarbuilddir}/vmm/service/kuasar-vmm.service %{buildroot}/%{_unitdir}/kuasar-vmm.service @@ -84,7 +123,45 @@ rm -rf %{buildroot} %{kuasarconfdir}/kuasar.initrd %config(noreplace) %{kuasarconfdir}/config.toml +%ifarch %{ix86} aarch64 +%files cc +%defattr(-,root,root,-) +%config(noreplace) %{_unitdir}/cc-kuasar-vmm.service +%config(noreplace) /etc/sysconfig/cc-kuasar-vmm +%{localbindir}/cc-vmm-sandboxer +%{kuasarconfdir}/cc-vmlinux.bin +%{kuasarconfdir}/cc-rootfs.img +%config(noreplace) %{kuasarconfdir}/cc-config.toml +%endif + %changelog +* Thu Feb 20 liuxu -1.0.0-14 +- fix Makefile reject + +* Wed Feb 19 liuxu -1.0.0-13 +- image-rs use http + +* Wed Feb 19 liuxu -1.0.0-12 +- coco:support confidential containers pull image + +* Wed Feb 19 zhongjiawei -1.0.0-11 +- fix kuasar do not make in x86 + +* Tue Feb 18 zhongjiawei -1.0.0-10 +- do not start virtiofsd process when share_type is 9p + +* Mon Feb 17 zhongjiawei -1.0.0-9 +- make cc kuasar rpm package + +* Tue Feb 11 zhongjiawei -1.0.0-8 +- qemu:support virtiofs + +* Mon Feb 10 zhongjiawei -1.0.0-7 +- task:add debug_shell param + +* Fri Jan 17 zhongjiawei -1.0.0-6 +- support virtcca + * Mon Jan 6 liuxu -1.0.0-5 - logfix:print warn instead of error when dir not found. diff --git a/patch/0009-support-virtCCA.patch b/patch/0009-support-virtCCA.patch new file mode 100644 index 0000000000000000000000000000000000000000..696d2e971584b9d24e0f4f2566a7aed08327c9d6 --- /dev/null +++ b/patch/0009-support-virtCCA.patch @@ -0,0 +1,351 @@ +From 0a32e367c8972f850a648ae066a145a6bbba36bf Mon Sep 17 00:00:00 2001 +From: zhongjiawei +Date: Mon, 10 Feb 2025 10:59:57 +0800 +Subject: [PATCH] support virtCCA + +Signed-off-by: zhongjiawei +--- + Makefile | 7 ++-- + vmm/sandbox/Cargo.toml | 3 ++ + vmm/sandbox/config_qemu_virtcca_aarch64.toml | 39 ++++++++++++++++++++ + vmm/sandbox/src/qemu/config.rs | 17 +++++++++ + vmm/sandbox/src/qemu/devices/block.rs | 13 +++++++ + vmm/sandbox/src/qemu/devices/scsi.rs | 10 +++++ + vmm/sandbox/src/qemu/devices/serial.rs | 10 +++++ + vmm/sandbox/src/qemu/devices/virtio_9p.rs | 10 +++++ + vmm/sandbox/src/qemu/devices/virtio_net.rs | 10 +++++ + vmm/sandbox/src/qemu/devices/vsock.rs | 10 +++++ + 10 files changed, 126 insertions(+), 3 deletions(-) + create mode 100644 vmm/sandbox/config_qemu_virtcca_aarch64.toml + +diff --git a/Makefile b/Makefile +index a6fff580..ff832844 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,7 +1,7 @@ +-HYPERVISOR ?= cloud_hypervisor ++HYPERVISOR ?= qemu + GUESTOS_IMAGE ?= centos + WASM_RUNTIME ?= wasmedge +-KERNEL_VERSION ?= 6.2 ++KERNEL_VERSION ?= 6.6 + ARCH ?= x86_64 + # DEST_DIR is used when built with RPM format + DEST_DIR ?= / +@@ -9,6 +9,7 @@ INSTALL_DIR := /var/lib/kuasar + BIN_DIR := /usr/local/bin + SYSTEMD_SERVICE_DIR := /usr/lib/systemd/system + SYSTEMD_CONF_DIR := /etc/sysconfig ++VMM_SANDBOX_FEATURES ?= + + .PHONY: vmm wasm quark clean all install-vmm install-wasm install-quark install \ + bin/vmm-sandboxer bin/vmm-task bin/vmlinux.bin bin/kuasar.img bin/kuasar.initrd \ +@@ -17,7 +18,7 @@ SYSTEMD_CONF_DIR := /etc/sysconfig + all: vmm quark wasm + + bin/vmm-sandboxer: +- @cd vmm/sandbox && cargo build --release --bin ${HYPERVISOR} ++ @cd vmm/sandbox && cargo build --release --bin ${HYPERVISOR} --features=${VMM_SANDBOX_FEATURES} + @mkdir -p bin && cp vmm/sandbox/target/release/${HYPERVISOR} bin/vmm-sandboxer + + bin/vmm-task: +diff --git a/vmm/sandbox/Cargo.toml b/vmm/sandbox/Cargo.toml +index 8ff7d788..9aa022cd 100644 +--- a/vmm/sandbox/Cargo.toml ++++ b/vmm/sandbox/Cargo.toml +@@ -4,6 +4,9 @@ version = "0.1.0" + license = "Apache-2.0" + edition = "2021" + ++[features] ++virtcca = [] ++ + [profile.release] + panic = 'abort' + +diff --git a/vmm/sandbox/config_qemu_virtcca_aarch64.toml b/vmm/sandbox/config_qemu_virtcca_aarch64.toml +new file mode 100644 +index 00000000..1c9fb26c +--- /dev/null ++++ b/vmm/sandbox/config_qemu_virtcca_aarch64.toml +@@ -0,0 +1,39 @@ ++[sandbox] ++log_level = "info" ++ ++[hypervisor] ++memory_in_mb = 2048 ++vcpus = 1 ++kernel_params = "iommu.passthrough=0 swiotlb=262144,force console=tty0 console=ttyAMA0 root=/dev/vda cma=64M virtcca_cvm_guest=1 task.sharefs_type=9p tsc=reliable rcupdate.rcu_expedited=1 i8042.direct=1 i8042.dumbkbd=1 i8042.nopnp=1 i8042.noaux=1 noreplace-smp= reboot=k iommu=off cryptomgr.notests= net.ifnames=0 pci=lastbus=0" ++kernel_path = "/var/lib/kuasar/cc-vmlinux.bin" ++image_path = "/var/lib/kuasar/cc-rootfs.img" ++machine_accelerators = "" ++firmware_path = "" ++cpu_features = "pmu=off" ++cpu_model = "host" ++qemu_path = "/usr/bin/qemu-system-aarch64" ++machine_type = "virt" ++default_bridges = 1 ++default_max_vcpus = 0 ++entropy_source = "/dev/urandom" ++mem_slots = 1 ++mem_offset = 0 ++memory_path = "" ++file_backend_mem_path = "" ++mem_prealloc = false ++hugepages = false ++enable_vhost_user_store = false ++enable_swap = false ++virtiofs_daemon_path = "/usr/libexec/virtiofsd" ++virtiofs_cache = "auto" ++virtiofs_extra_args = ["--thread-pool-size=1", "--announce-submounts"] ++virtiofs_cache_size = 0 ++msize_9p = 8192 ++virtio_9p_direct_io = false ++virtio_9p_multidevs = "" ++enable_iothreads = false ++block_device_driver = "VirtioScsi" ++disable_nvdimm = true ++share_fs = "Virtio9P" ++use_vsock = true ++ +diff --git a/vmm/sandbox/src/qemu/config.rs b/vmm/sandbox/src/qemu/config.rs +index 408a39bb..9eccc1d4 100644 +--- a/vmm/sandbox/src/qemu/config.rs ++++ b/vmm/sandbox/src/qemu/config.rs +@@ -47,7 +47,10 @@ lazy_static! { + "pc".to_string(), + Machine { + r#type: "pc".to_string(), ++ #[cfg(not(feature = "virtcca"))] + options: Some("accel=kvm,kernel_irqchip=on".to_string()), ++ #[cfg(feature = "virtcca")] ++ options: Some("accel=kvm,kernel_irqchip=on,kvm-type=cvm".to_string()), + }, + ); + #[cfg(target_arch = "aarch64")] +@@ -55,7 +58,10 @@ lazy_static! { + "virt".to_string(), + Machine { + r#type: "virt".to_string(), ++ #[cfg(not(feature = "virtcca"))] + options: Some("usb=off,accel=kvm,gic-version=3".to_string()), ++ #[cfg(feature = "virtcca")] ++ options: Some("usb=off,accel=kvm,gic-version=3,kvm-type=cvm".to_string()), + }, + ); + sms +@@ -207,6 +213,7 @@ impl QemuVMConfig { + result.rtc = RTC { + base: "utc".to_string(), + clock: "host".to_string(), ++ #[cfg(not(feature = "virtcca"))] + drift_fix: "slew".to_string(), + }; + result.knobs = Knobs { +@@ -224,6 +231,12 @@ impl QemuVMConfig { + param: "kvm-pit.lost_tick_policy=discard".to_string(), + }]; + result.vga = "none".to_string(); ++ #[cfg(feature = "virtcca")] ++ let mut set_virtcca_object = || { ++ result.object = Some(String::from("tmm-guest,id=tmm0,sve-vector-length=128,num-pmu-counters=1")); ++ }; ++ #[cfg(feature = "virtcca")] ++ set_virtcca_object(); + Ok(result) + } + } +@@ -265,6 +278,7 @@ impl ToCmdLineParams for QmpSocket { + pub struct RTC { + pub base: String, + pub clock: String, ++ #[cfg(not(feature = "virtcca"))] + #[property(key = "driftfix")] + pub drift_fix: String, + } +@@ -463,6 +477,9 @@ pub struct QemuConfig { + pub pid_file: String, + #[param(key = "D")] + pub log_file: Option, ++ #[cfg(feature = "virtcca")] ++ #[param(key = "object")] ++ pub object: Option, + } + + #[derive(CmdLineParamSet, Debug, Default, Clone, Serialize, Deserialize)] +diff --git a/vmm/sandbox/src/qemu/devices/block.rs b/vmm/sandbox/src/qemu/devices/block.rs +index 829b8116..cb00ae1b 100644 +--- a/vmm/sandbox/src/qemu/devices/block.rs ++++ b/vmm/sandbox/src/qemu/devices/block.rs +@@ -52,6 +52,12 @@ pub struct VirtioBlockDevice { + pub format: Option, + #[property(param = "device", generator = "crate::utils::bool_to_on_off")] + pub scsi: Option, ++ #[cfg(feature = "virtcca")] ++ #[property(param = "device", key = "disable-legacy", generator = "crate::utils::bool_to_on_off")] ++ pub disable_legacy: bool, ++ #[cfg(feature = "virtcca")] ++ #[property(param = "device", key= "iommu_platform", generator = "crate::utils::bool_to_on_off")] ++ pub iommu_platform: bool, + #[property( + param = "device", + key = "config-wce", +@@ -87,8 +93,15 @@ impl VirtioBlockDevice { + wce: Some(false), + disable_modern: None, + romfile: None, ++ #[cfg(not(feature = "virtcca"))] + share_rw: false, ++ #[cfg(feature = "virtcca")] ++ share_rw: true, + readonly: read_only, ++ #[cfg(feature = "virtcca")] ++ disable_legacy: true, ++ #[cfg(feature = "virtcca")] ++ iommu_platform: true, + } + } + } +diff --git a/vmm/sandbox/src/qemu/devices/scsi.rs b/vmm/sandbox/src/qemu/devices/scsi.rs +index ac0791be..57360b7b 100644 +--- a/vmm/sandbox/src/qemu/devices/scsi.rs ++++ b/vmm/sandbox/src/qemu/devices/scsi.rs +@@ -36,6 +36,12 @@ pub struct ScsiController { + pub(crate) romfile: Option, + #[property(ignore)] + pub(crate) bus: Bus, ++ #[cfg(feature = "virtcca")] ++ #[property(param = "device", key = "disable-legacy", generator = "crate::utils::bool_to_on_off")] ++ pub disable_legacy: bool, ++ #[cfg(feature = "virtcca")] ++ #[property(param = "device", key= "iommu_platform", generator = "crate::utils::bool_to_on_off")] ++ pub iommu_platform: bool, + } + + impl_device!(ScsiController); +@@ -56,6 +62,10 @@ impl ScsiController { + bus_addr: "0:0".to_string(), + slots: vec![Slot::default(); SCSI_BUS_CAPACITY], + }, ++ #[cfg(feature = "virtcca")] ++ disable_legacy: true, ++ #[cfg(feature = "virtcca")] ++ iommu_platform: true, + } + } + } +diff --git a/vmm/sandbox/src/qemu/devices/serial.rs b/vmm/sandbox/src/qemu/devices/serial.rs +index 2a47f664..fd91b154 100644 +--- a/vmm/sandbox/src/qemu/devices/serial.rs ++++ b/vmm/sandbox/src/qemu/devices/serial.rs +@@ -33,6 +33,12 @@ pub struct SerialBridge { + pub max_ports: Option, + #[property(ignore)] + pub(crate) bus: Bus, ++ #[cfg(feature = "virtcca")] ++ #[property(param = "device", key = "disable-legacy", generator = "crate::utils::bool_to_on_off")] ++ pub disable_legacy: bool, ++ #[cfg(feature = "virtcca")] ++ #[property(param = "device", key= "iommu_platform", generator = "crate::utils::bool_to_on_off")] ++ pub iommu_platform: bool, + } + + impl SerialBridge { +@@ -49,6 +55,10 @@ impl SerialBridge { + bus_addr: format!("{}.0", id), + slots: vec![Slot::default(); SERIAL_BUS_CAPACITY], + }, ++ #[cfg(feature = "virtcca")] ++ disable_legacy: true, ++ #[cfg(feature = "virtcca")] ++ iommu_platform: true, + } + } + } +diff --git a/vmm/sandbox/src/qemu/devices/virtio_9p.rs b/vmm/sandbox/src/qemu/devices/virtio_9p.rs +index 1f54d3c0..6890b46a 100644 +--- a/vmm/sandbox/src/qemu/devices/virtio_9p.rs ++++ b/vmm/sandbox/src/qemu/devices/virtio_9p.rs +@@ -47,6 +47,12 @@ pub struct Virtio9PDevice { + generator = "writeout" + )] + pub direct_io: bool, ++ #[cfg(feature = "virtcca")] ++ #[property(param = "device", key= "disable-legacy", generator = "crate::utils::bool_to_on_off")] ++ pub disable_legacy: bool, ++ #[cfg(feature = "virtcca")] ++ #[property(param = "device", key= "iommu_platform", generator = "crate::utils::bool_to_on_off")] ++ pub iommu_platform: bool, + } + + impl_device_no_bus!(Virtio9PDevice); +@@ -71,6 +77,10 @@ impl Virtio9PDevice { + romfile: None, + multidevs, + direct_io, ++ #[cfg(feature = "virtcca")] ++ disable_legacy: true, ++ #[cfg(feature = "virtcca")] ++ iommu_platform: true, + } + } + } +diff --git a/vmm/sandbox/src/qemu/devices/virtio_net.rs b/vmm/sandbox/src/qemu/devices/virtio_net.rs +index 72051f1f..39f551a4 100644 +--- a/vmm/sandbox/src/qemu/devices/virtio_net.rs ++++ b/vmm/sandbox/src/qemu/devices/virtio_net.rs +@@ -82,6 +82,12 @@ pub struct VirtioNetDevice { + pub(crate) romfile: Option, + #[property(param = "netdev")] + pub(crate) queues: Option, ++ #[cfg(feature = "virtcca")] ++ #[property(param = "device", key= "disable-legacy", generator = "crate::utils::bool_to_on_off")] ++ pub disable_legacy: bool, ++ #[cfg(feature = "virtcca")] ++ #[property(param = "device", key= "iommu_platform", generator = "crate::utils::bool_to_on_off")] ++ pub iommu_platform: bool, + } + + impl VirtioNetDevice { +@@ -121,6 +127,10 @@ impl VirtioNetDevice { + disable_modern: None, + romfile: None, + queues: None, ++ #[cfg(feature = "virtcca")] ++ disable_legacy: true, ++ #[cfg(feature = "virtcca")] ++ iommu_platform: true, + } + } + } +diff --git a/vmm/sandbox/src/qemu/devices/vsock.rs b/vmm/sandbox/src/qemu/devices/vsock.rs +index 6bc13f11..13304688 100644 +--- a/vmm/sandbox/src/qemu/devices/vsock.rs ++++ b/vmm/sandbox/src/qemu/devices/vsock.rs +@@ -43,6 +43,12 @@ pub struct VSockDevice { + pub vhost_fd_index: Option, + pub romfile: Option, + pub disable_modern: Option, ++ #[cfg(feature = "virtcca")] ++ #[property(param = "device", key = "disable-legacy", generator = "crate::utils::bool_to_on_off")] ++ pub disable_legacy: bool, ++ #[cfg(feature = "virtcca")] ++ #[property(param = "device", key= "iommu_platform", generator = "crate::utils::bool_to_on_off")] ++ pub iommu_platform: bool, + } + + impl_device_no_bus!(VSockDevice); +@@ -56,6 +62,10 @@ impl VSockDevice { + vhost_fd_index: fd_index, + romfile: None, + disable_modern: None, ++ #[cfg(feature = "virtcca")] ++ disable_legacy: true, ++ #[cfg(feature = "virtcca")] ++ iommu_platform: true, + } + } + } +-- +2.33.0 + diff --git a/patch/0010-task-add-debug_shell-param.patch b/patch/0010-task-add-debug_shell-param.patch new file mode 100644 index 0000000000000000000000000000000000000000..0fd10340aab205a991740c6fa1afb40889aae5c6 --- /dev/null +++ b/patch/0010-task-add-debug_shell-param.patch @@ -0,0 +1,98 @@ +From fbe1a51f9da5efbd1b975bafdbdf639a86493fb0 Mon Sep 17 00:00:00 2001 +From: zhongjiawei +Date: Mon, 10 Feb 2025 15:25:25 +0800 +Subject: [PATCH] task: add debug_shell param + +Signed-off-by: zhongjiawei +--- + vmm/task/src/config.rs | 4 ++++ + vmm/task/src/debug.rs | 9 +++++---- + vmm/task/src/main.rs | 2 +- + 3 files changed, 10 insertions(+), 5 deletions(-) + +diff --git a/vmm/task/src/config.rs b/vmm/task/src/config.rs +index c614c7f3..2be2a7a7 100644 +--- a/vmm/task/src/config.rs ++++ b/vmm/task/src/config.rs +@@ -20,6 +20,7 @@ use tokio::fs::read_to_string; + const SHAREFS_TYPE: &str = "task.sharefs_type"; + const LOG_LEVEL: &str = "task.log_level"; + const TASK_DEBUG: &str = "task.debug"; ++const DEBUG_SHELL: &str = "task.debug_shell"; + + macro_rules! parse_cmdline { + ($param:ident, $key:ident, $field:expr) => { +@@ -42,6 +43,7 @@ pub struct TaskConfig { + pub(crate) sharefs_type: String, + pub(crate) log_level: String, + pub(crate) debug: bool, ++ pub(crate) debug_shell: String, + } + + impl Default for TaskConfig { +@@ -50,6 +52,7 @@ impl Default for TaskConfig { + sharefs_type: "9p".to_string(), + log_level: "info".to_string(), + debug: false, ++ debug_shell: "/bin/bash".to_string(), + } + } + } +@@ -66,6 +69,7 @@ impl TaskConfig { + parse_cmdline!(param, SHAREFS_TYPE, config.sharefs_type, String::from); + parse_cmdline!(param, LOG_LEVEL, config.log_level, String::from); + parse_cmdline!(param, TASK_DEBUG, config.debug); ++ parse_cmdline!(param, DEBUG_SHELL, config.debug_shell, String::from); + } + Ok(config) + } +diff --git a/vmm/task/src/debug.rs b/vmm/task/src/debug.rs +index 094db50c..5eec9232 100644 +--- a/vmm/task/src/debug.rs ++++ b/vmm/task/src/debug.rs +@@ -32,13 +32,14 @@ use tokio_vsock::VsockStream; + + use crate::{stream::RawStream, util::wait_pid, vsock::bind_vsock}; + +-pub async fn listen_debug_console(addr: &str) -> Result<()> { ++pub async fn listen_debug_console(addr: &str, debug_shell: &str) -> Result<()> { + let l = bind_vsock(addr).await?; ++ let shell = String::from(debug_shell); + tokio::spawn(async move { + let mut incoming = l.incoming(); + while let Some(Ok(s)) = incoming.next().await { + debug!("get a debug console request"); +- if let Err(e) = debug_console(s).await { ++ if let Err(e) = debug_console(s, &shell).await { + error!("failed to open debug console {:?}", e); + } + } +@@ -47,10 +48,10 @@ pub async fn listen_debug_console(addr: &str) -> Result<()> { + Ok(()) + } + +-pub async fn debug_console(stream: VsockStream) -> Result<()> { ++pub async fn debug_console(stream: VsockStream, debug_shell: &str) -> Result<()> { + let pty = openpty(None, None)?; + let pty_master = pty.master; +- let mut cmd = Command::new("/bin/bash"); ++ let mut cmd = Command::new(debug_shell); + let pty_fd = pty.slave.into_raw_fd(); + cmd.stdin(unsafe { Stdio::from_raw_fd(pty_fd) }); + cmd.stdout(unsafe { Stdio::from_raw_fd(pty_fd) }); +diff --git a/vmm/task/src/main.rs b/vmm/task/src/main.rs +index feb0f10f..8c9a2d24 100644 +--- a/vmm/task/src/main.rs ++++ b/vmm/task/src/main.rs +@@ -167,7 +167,7 @@ async fn initialize() -> anyhow::Result<()> { + } + if config.debug { + debug!("listen vsock port 1025 for debug console"); +- if let Err(e) = listen_debug_console("vsock://-1:1025").await { ++ if let Err(e) = listen_debug_console("vsock://-1:1025", &config.debug_shell).await { + error!("failed to listen debug console port, {:?}", e); + } + } +-- +2.33.0 + diff --git a/patch/0011-qemu-support-virtiofs.patch b/patch/0011-qemu-support-virtiofs.patch new file mode 100644 index 0000000000000000000000000000000000000000..2b4e3e73eb1bd4772e470ee370ff26d2254f54c5 --- /dev/null +++ b/patch/0011-qemu-support-virtiofs.patch @@ -0,0 +1,464 @@ +From 70776f2e0aa09b6c31a3fb18cfa6baa6e42e90c4 Mon Sep 17 00:00:00 2001 +From: zhongjiawei +Date: Tue, 11 Feb 2025 09:57:48 +0800 +Subject: [PATCH] qemu:support virtiofs + +--- + vmm/sandbox/src/kata_config.rs | 5 -- + vmm/sandbox/src/qemu/config.rs | 40 +++++++-- + vmm/sandbox/src/qemu/devices/vhost_user.rs | 79 ++++++++++++---- + vmm/sandbox/src/qemu/factory.rs | 9 +- + vmm/sandbox/src/qemu/mod.rs | 100 +++++++++++++++++++-- + 5 files changed, 191 insertions(+), 42 deletions(-) + +diff --git a/vmm/sandbox/src/kata_config.rs b/vmm/sandbox/src/kata_config.rs +index d90ef3ab..bee095b9 100644 +--- a/vmm/sandbox/src/kata_config.rs ++++ b/vmm/sandbox/src/kata_config.rs +@@ -247,11 +247,6 @@ impl Hypervisor { + if !self.entropy_source.is_empty() { + res.entropy_source = self.entropy_source.to_string(); + } +- res.virtiofs_cache = self.virtio_fs_cache.to_string(); +- res.virtiofs_cache_size = self.virtio_fs_cache_size; +- res.virtiofs_daemon_path = self.virtio_fs_daemon.to_string(); +- res.virtiofs_extra_args +- .clone_from(&self.virtio_fs_extra_args); + res.virtio_9p_direct_io = self.virtio_9p_direct_io; + if !self.virtio_9p_multidevs.is_empty() { + res.virtio_9p_multidevs = self.virtio_9p_multidevs.to_string(); +diff --git a/vmm/sandbox/src/qemu/config.rs b/vmm/sandbox/src/qemu/config.rs +index 9eccc1d4..13dde154 100644 +--- a/vmm/sandbox/src/qemu/config.rs ++++ b/vmm/sandbox/src/qemu/config.rs +@@ -90,11 +90,6 @@ pub struct QemuVMConfig { + pub hugepages: bool, + pub enable_vhost_user_store: bool, + pub enable_swap: bool, +- // virtio-fs related configrations +- pub virtiofs_daemon_path: String, +- pub virtiofs_cache: String, +- pub virtiofs_extra_args: Vec, +- pub virtiofs_cache_size: u32, + pub msize_9p: u32, + pub virtio_9p_direct_io: bool, + pub virtio_9p_multidevs: String, +@@ -104,6 +99,7 @@ pub struct QemuVMConfig { + pub disable_nvdimm: bool, + pub share_fs: ShareFsType, + pub use_vsock: bool, ++ pub virtiofsd: VirtiofsdConfig, + } + + impl Default for QemuVMConfig { +@@ -127,10 +123,6 @@ impl Default for QemuVMConfig { + hugepages: false, + enable_vhost_user_store: false, + enable_swap: false, +- virtiofs_daemon_path: "".to_string(), +- virtiofs_cache: "".to_string(), +- virtiofs_extra_args: vec![], +- virtiofs_cache_size: 0, + msize_9p: 8192, + virtio_9p_direct_io: false, + virtio_9p_multidevs: "".to_string(), +@@ -139,6 +131,36 @@ impl Default for QemuVMConfig { + disable_nvdimm: false, + share_fs: ShareFsType::Virtio9P, + use_vsock: false, ++ virtiofsd: VirtiofsdConfig::default(), ++ } ++ } ++} ++ ++#[derive(CmdLineParamSet, Deserialize, Debug, Clone, Serialize)] ++pub struct VirtiofsdConfig { ++ #[param(ignore)] ++ pub path: String, ++ pub log_level: String, ++ pub cache: String, ++ pub thread_pool_size: u32, ++ #[serde(default)] ++ pub socket_path: String, ++ #[serde(default)] ++ pub shared_dir: String, ++ #[serde(default)] ++ pub syslog: bool, ++} ++ ++impl Default for VirtiofsdConfig { ++ fn default() -> Self { ++ Self { ++ path: "/usr/local/bin/virtiofsd".to_string(), ++ log_level: "info".to_string(), ++ cache: "never".to_string(), ++ thread_pool_size: 4, ++ socket_path: "".to_string(), ++ shared_dir: "".to_string(), ++ syslog: true, + } + } + } +diff --git a/vmm/sandbox/src/qemu/devices/vhost_user.rs b/vmm/sandbox/src/qemu/devices/vhost_user.rs +index 0e8ffedd..67d51a43 100644 +--- a/vmm/sandbox/src/qemu/devices/vhost_user.rs ++++ b/vmm/sandbox/src/qemu/devices/vhost_user.rs +@@ -21,33 +21,30 @@ use sandbox_derive::CmdLineParams; + #[derive(Debug, Clone)] + pub enum VhostUserType { + VhostUserNet(String), ++ VhostUserChar(String), + } + + impl Display for VhostUserType { + fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { + let s = match &self { + VhostUserType::VhostUserNet(r#type) => r#type.to_string(), ++ VhostUserType::VhostUserChar(r#type) => r#type.to_string(), + }; + write!(f, "{}", s) + } + } + + #[derive(CmdLineParams, Debug, Clone)] +-#[params("device", "chardev", "netdev")] +-pub struct VhostUserDevice { ++#[params("device", "netdev")] ++pub struct VhostNetDevice { + #[property(param = "device", ignore_key)] + pub(crate) driver: VhostUserType, +- #[property(param = "chardev", ignore_key)] +- pub(crate) chardev_type: String, + #[property(ignore)] + pub id: String, + #[property(param = "netdev", key = "type")] + pub(crate) netdev_type: String, + #[property(param = "netdev", ignore_key)] + pub(crate) netdev_param: String, +- #[property(param = "chardev", key = "path")] +- pub(crate) socket_path: String, +- #[property(param = "chardev", key = "id")] + #[property(param = "netdev", key = "chardev")] + pub(crate) char_dev_id: String, + #[property(param = "device", key = "netdev")] +@@ -65,24 +62,18 @@ pub struct VhostUserDevice { + pub(crate) romfile: Option, + } + +-impl_device_no_bus!(VhostUserDevice); ++impl_device_no_bus!(VhostNetDevice); + +-impl VhostUserDevice { ++impl VhostNetDevice { + pub fn new(id: &str, t: VhostUserType, socket_path: &str, address: &str) -> Self { + // TODO: length must <= 31 + let char_dev_id: String = format!("{}-{}", "char", id); +- let type_dev_id = match t { +- VhostUserType::VhostUserNet(_) => { +- format!("{}-{}", "net", id) +- } +- }; ++ let type_dev_id = format!("{}-{}", "net", id); + Self { + id: id.to_string(), + driver: t, +- chardev_type: "socket".to_string(), + netdev_type: "vhost-user".to_string(), + netdev_param: "vhostforce".to_string(), +- socket_path: socket_path.to_string(), + char_dev_id, + net_dev_id: type_dev_id, + address: Some(address.to_string()), +@@ -94,16 +85,68 @@ impl VhostUserDevice { + } + } + ++#[derive(CmdLineParams, Debug, Clone)] ++#[params("device", "chardev")] ++pub struct VhostCharDevice { ++ #[property(param = "device", ignore_key)] ++ pub(crate) driver: VhostUserType, ++ #[property(param = "chardev", ignore_key)] ++ pub(crate) chardev_type: String, ++ #[property(ignore)] ++ pub id: String, ++ #[property(param = "chardev", key = "path")] ++ pub(crate) socket_path: String, ++ #[property(param = "chardev", key = "id")] ++ pub(crate) char_dev_id: String, ++ #[property(param = "device", key = "chardev")] ++ pub(crate) net_dev_id: String, ++ #[property(param = "device")] ++ pub(crate) tag: Option, ++ #[property(param = "device")] ++ pub(crate) cache_size: Option, ++ #[property(param = "device")] ++ pub(crate) shared_versions: Option, ++ #[property(param = "device")] ++ pub(crate) romfile: Option, ++ #[cfg(feature = "virtcca")] ++ #[property(param = "device", key= "iommu_platform", generator = "crate::utils::bool_to_on_off")] ++ pub iommu_platform: bool, ++} ++ ++impl_device_no_bus!(VhostCharDevice); ++ ++impl VhostCharDevice { ++ pub fn new(id: &str, t: VhostUserType, socket_path: &str, address: &str) -> Self { ++ // TODO: length must <= 31 ++ let char_dev_id: String = format!("{}-{}", "char", id); ++ let type_dev_id = format!("{}-{}", "char", id); ++ Self { ++ id: id.to_string(), ++ driver: t, ++ chardev_type: "socket".to_string(), ++ socket_path: socket_path.to_string(), ++ char_dev_id, ++ net_dev_id: type_dev_id, ++ tag: Some("kuasar".to_string()), ++ cache_size: None, ++ shared_versions: None, ++ romfile: Some("".to_string()), ++ #[cfg(feature = "virtcca")] ++ iommu_platform: true, ++ } ++ } ++} ++ + #[cfg(test)] + mod tests { + use crate::{ + param::ToParams, +- qemu::devices::vhost_user::{VhostUserDevice, VhostUserType}, ++ qemu::devices::vhost_user::{VhostNetDevice, VhostUserType}, + }; + + #[test] + fn test_attr() { +- let device = VhostUserDevice::new( ++ let device = VhostNetDevice::new( + "123", + VhostUserType::VhostUserNet("virtio-net-pci".to_string()), + "/var/run/vhost-user/tap07dc8d7f-fd", +diff --git a/vmm/sandbox/src/qemu/factory.rs b/vmm/sandbox/src/qemu/factory.rs +index 6166a0c3..9e950015 100644 +--- a/vmm/sandbox/src/qemu/factory.rs ++++ b/vmm/sandbox/src/qemu/factory.rs +@@ -33,6 +33,7 @@ use crate::{ + virtio_9p::Virtio9PDevice, + virtio_rng::VirtioRngDevice, + vsock::{find_context_id, VSockDevice}, ++ vhost_user::{VhostCharDevice, VhostUserType}, + }, + QemuVM, + }, +@@ -61,7 +62,7 @@ impl VMFactory for QemuVMFactory { + s: &SandboxOption, + ) -> containerd_sandbox::error::Result { + let netns = get_netns(&s.sandbox); +- let mut vm = QemuVM::new(id, &netns, &s.base_dir); ++ let mut vm = QemuVM::new(id, &netns, &s.base_dir, &self.default_config); + vm.config = self.default_config.to_qemu_config().await?; + vm.config.uuid = Uuid::new_v4().to_string(); + vm.config.name = format!("sandbox-{}", id); +@@ -162,8 +163,10 @@ impl VMFactory for QemuVMFactory { + vm.attach_device(virtio_9p); + } + ShareFsType::VirtioFS => { +- // TODO support virtio fs +- return Err(Error::Unimplemented("virtiofs not implemented".to_string())); ++ if !vm.virtiofsd_config.socket_path.is_empty() { ++ let virtio_fs = VhostCharDevice::new("extra-fs-kuasar", VhostUserType::VhostUserChar("vhost-user-fs-pci".to_string()), &vm.virtiofsd_config.socket_path, ""); ++ vm.attach_device(virtio_fs); ++ } + } + } + if !self.default_config.common.image_path.is_empty() { +diff --git a/vmm/sandbox/src/qemu/mod.rs b/vmm/sandbox/src/qemu/mod.rs +index 36c054d5..f98dca6e 100644 +--- a/vmm/sandbox/src/qemu/mod.rs ++++ b/vmm/sandbox/src/qemu/mod.rs +@@ -21,6 +21,7 @@ use std::{ + unix::io::{AsRawFd, FromRawFd, RawFd}, + }, + time::{Duration, SystemTime}, ++ process::Stdio, + }; + + use anyhow::anyhow; +@@ -34,9 +35,10 @@ use serde::{Deserialize, Serialize}; + use time::OffsetDateTime; + use tokio::{ + net::UnixStream, +- sync::watch::{channel, Receiver}, +- task::spawn_blocking, ++ sync::watch::{channel, Receiver, Sender}, ++ task::{spawn_blocking, JoinHandle}, + time::sleep, ++ process::Child, + }; + use unshare::Fd; + +@@ -45,22 +47,24 @@ use crate::{ + impl_recoverable, + param::ToCmdLineParams, + qemu::{ +- config::QemuConfig, ++ config::{QemuConfig, QemuVMConfig, VirtiofsdConfig}, + devices::{ + block::{VirtioBlockDevice, VIRTIO_BLK_DRIVER}, + char::{CharDevice, VIRT_SERIAL_PORT_DRIVER}, + vfio::VfioDevice, +- vhost_user::{VhostUserDevice, VhostUserType}, ++ vhost_user::{VhostNetDevice, VhostUserType}, + virtio_net::VirtioNetDevice, + QemuDevice, QemuHotAttachable, + }, + qmp_client::QmpClient, + utils::detect_pid, + }, +- utils::{read_std, wait_channel, wait_pid}, ++ utils::{read_std, wait_channel, wait_pid, set_cmd_netns, write_file_atomic}, + vm::{BlockDriver, Pids, VcpuThreads, VM}, + }; + ++use vmm_common::SHARED_DIR_SUFFIX; ++ + pub mod config; + mod devices; + pub mod factory; +@@ -93,12 +97,15 @@ pub struct QemuVM { + wait_chan: Option>, + #[serde(skip)] + client: Option, ++ virtiofsd_config: VirtiofsdConfig, + } + + #[async_trait] + impl VM for QemuVM { + async fn start(&mut self) -> Result { + debug!("start vm {}", self.id); ++ let virtiofsd_pid = self.start_virtiofsd().await?; ++ self.pids.affiliated_pids.push(virtiofsd_pid); + let wait_chan = self.launch().await?; + self.wait_chan = Some(wait_chan); + let start_time = SystemTime::now(); +@@ -191,7 +198,7 @@ impl VM for QemuVM { + self.attach_device(device); + } + DeviceInfo::VhostUser(vhost_user_info) => { +- let device = VhostUserDevice::new( ++ let device = VhostNetDevice::new( + &vhost_user_info.id, + VhostUserType::VhostUserNet(vhost_user_info.r#type), + &vhost_user_info.socket_path, +@@ -319,7 +326,10 @@ impl VM for QemuVM { + } + + impl QemuVM { +- pub fn new(id: &str, netns: &str, base_dir: &str) -> Self { ++ pub fn new(id: &str, netns: &str, base_dir: &str, vm_config: &QemuVMConfig) -> Self { ++ let mut virtiofsd_config = vm_config.virtiofsd.clone(); ++ virtiofsd_config.socket_path = format!("{}/virtiofs.sock", base_dir); ++ virtiofsd_config.shared_dir = format!("{}/{}", base_dir, SHARED_DIR_SUFFIX); + Self { + id: id.to_string(), + config: QemuConfig::default(), +@@ -333,6 +343,7 @@ impl QemuVM { + block_driver: BlockDriver::default(), + wait_chan: None, + client: None, ++ virtiofsd_config, + } + } + +@@ -452,6 +463,26 @@ impl QemuVM { + } + } + ++ async fn start_virtiofsd(&self) -> Result { ++ //create_dir_all(&self.virtiofsd_config.shared_dir).await?; ++ let params = self.virtiofsd_config.to_cmdline_params("--"); ++ let mut cmd = tokio::process::Command::new(&self.virtiofsd_config.path); ++ cmd.args(params.as_slice()); ++ error!("start virtiofsd with cmdline: {:?}", cmd); ++ set_cmd_netns(&mut cmd, self.netns.to_string())?; ++ cmd.stderr(Stdio::piped()); ++ cmd.stdout(Stdio::piped()); ++ let child = cmd ++ .spawn() ++ .map_err(|e| anyhow!("failed to spawn virtiofsd command: {}", e))?; ++ let pid = child ++ .id() ++ .ok_or(anyhow!("the virtiofsd has been polled to completion"))?; ++ error!("virtiofsd for {} is running with pid {}", self.id, pid); ++ spawn_wait(child, format!("virtiofsd {}", self.id), None, None); ++ Ok(pid) ++ } ++ + async fn hot_attach_device( + &mut self, + device: T, +@@ -527,4 +558,59 @@ impl QemuVM { + } + } + ++macro_rules! read_stdio { ++ ($stdio:expr, $cmd_name:ident) => { ++ if let Some(std) = $stdio { ++ let cmd_name_clone = $cmd_name.clone(); ++ tokio::spawn(async move { ++ read_std(std, &cmd_name_clone).await.unwrap_or_default(); ++ }); ++ } ++ }; ++} ++ ++fn spawn_wait( ++ child: Child, ++ cmd_name: String, ++ pid_file_path: Option, ++ exit_chan: Option>, ++) -> JoinHandle<()> { ++ let mut child = child; ++ tokio::spawn(async move { ++ if let Some(pid_file) = pid_file_path { ++ if let Some(pid) = child.id() { ++ write_file_atomic(&pid_file, &pid.to_string()) ++ .await ++ .unwrap_or_default(); ++ } ++ } ++ ++ read_stdio!(child.stdout.take(), cmd_name); ++ read_stdio!(child.stderr.take(), cmd_name); ++ ++ match child.wait().await { ++ Ok(status) => { ++ if !status.success() { ++ error!("{} exit {}", cmd_name, status); ++ } ++ let now = OffsetDateTime::now_utc(); ++ if let Some(tx) = exit_chan { ++ tx.send(( ++ status.code().unwrap_or_default() as u32, ++ now.unix_timestamp_nanos(), ++ )) ++ .unwrap_or_default(); ++ } ++ } ++ Err(e) => { ++ error!("{} wait error {}", cmd_name, e); ++ let now = OffsetDateTime::now_utc(); ++ if let Some(tx) = exit_chan { ++ tx.send((0, now.unix_timestamp_nanos())).unwrap_or_default(); ++ } ++ } ++ } ++ }) ++} ++ + impl_recoverable!(QemuVM); +-- +2.33.0 + diff --git a/patch/0012-make-cc-kuasar-rpm-package.patch b/patch/0012-make-cc-kuasar-rpm-package.patch new file mode 100644 index 0000000000000000000000000000000000000000..bb102f286f531e27a1a7a8020557d849309cef03 --- /dev/null +++ b/patch/0012-make-cc-kuasar-rpm-package.patch @@ -0,0 +1,62 @@ +From eb13a44ee3a235be200e856f24658e64e2d62c9c Mon Sep 17 00:00:00 2001 +From: zhongjiawei +Date: Mon, 17 Feb 2025 14:20:27 +0800 +Subject: [PATCH] make cc kuasar rpm package + +--- + vmm/sandbox/config_qemu_virtcca_aarch64.toml | 7 ++++++- + vmm/service/cc-kuasar-vmm | 2 ++ + vmm/service/cc-kuasar-vmm.service | 17 +++++++++++++++++ + 3 files changed, 25 insertions(+), 1 deletion(-) + create mode 100644 vmm/service/cc-kuasar-vmm + create mode 100644 vmm/service/cc-kuasar-vmm.service + +diff --git a/vmm/sandbox/config_qemu_virtcca_aarch64.toml b/vmm/sandbox/config_qemu_virtcca_aarch64.toml +index 9d0e7c75..4c58b068 100644 +--- a/vmm/sandbox/config_qemu_virtcca_aarch64.toml ++++ b/vmm/sandbox/config_qemu_virtcca_aarch64.toml +@@ -36,4 +36,9 @@ block_device_driver = "VirtioScsi" + disable_nvdimm = true + share_fs = "Virtio9P" + use_vsock = true +- ++[hypervisor.virtiofsd] ++path = "/usr/libexec/virtiofsd" ++log_level = "info" ++cache = "never" ++thread_pool_size = 4 ++syslog = true +diff --git a/vmm/service/cc-kuasar-vmm b/vmm/service/cc-kuasar-vmm +new file mode 100644 +index 00000000..6a4805b2 +--- /dev/null ++++ b/vmm/service/cc-kuasar-vmm +@@ -0,0 +1,2 @@ ++# configure the vmm-sandboxer command options ++OPTIONS='--config /var/lib/kuasar/cc-config.toml --listen /run/cc-vmm-sandboxer.sock --dir /run/cc-kuasar-vmm' +diff --git a/vmm/service/cc-kuasar-vmm.service b/vmm/service/cc-kuasar-vmm.service +new file mode 100644 +index 00000000..de9256a7 +--- /dev/null ++++ b/vmm/service/cc-kuasar-vmm.service +@@ -0,0 +1,17 @@ ++[Unit] ++Description=Kuasar confidential container type sandboxer daemon process ++After=network.target ++ ++[Service] ++Type=simple ++EnvironmentFile=-/etc/sysconfig/cc-kuasar-vmm ++ExecStart=/usr/local/bin/cc-vmm-sandboxer $OPTIONS ++LimitNOFILE=1048576 ++LimitNPROC=infinity ++LimitCORE=infinity ++Delegate=yes ++KillMode=process ++ ++[Install] ++WantedBy=multi-user.target ++ +-- +2.33.0 + diff --git a/patch/0013-do-not-start-virtiofsd-process-when-share_type-is-9p.patch b/patch/0013-do-not-start-virtiofsd-process-when-share_type-is-9p.patch new file mode 100644 index 0000000000000000000000000000000000000000..a10e360b5afa203e2cf262d0ed374d3340ca40fc --- /dev/null +++ b/patch/0013-do-not-start-virtiofsd-process-when-share_type-is-9p.patch @@ -0,0 +1,158 @@ +From ea28be9cb4421ffcb5f2a343eb2c9a5170285a9d Mon Sep 17 00:00:00 2001 +From: zhongjiawei +Date: Wed, 19 Feb 2025 16:38:58 +0800 +Subject: [PATCH] do not start virtiofsd process when share_type is 9p + +--- + vmm/sandbox/config_qemu_virtcca_aarch64.toml | 6 ----- + vmm/sandbox/src/qemu/config.rs | 4 ++-- + vmm/sandbox/src/qemu/factory.rs | 19 +++++++++++++--- + vmm/sandbox/src/qemu/mod.rs | 24 ++++++++++---------- + 4 files changed, 30 insertions(+), 23 deletions(-) + +diff --git a/vmm/sandbox/config_qemu_virtcca_aarch64.toml b/vmm/sandbox/config_qemu_virtcca_aarch64.toml +index 4c58b068..004879b6 100644 +--- a/vmm/sandbox/config_qemu_virtcca_aarch64.toml ++++ b/vmm/sandbox/config_qemu_virtcca_aarch64.toml +@@ -36,9 +36,3 @@ block_device_driver = "VirtioScsi" + disable_nvdimm = true + share_fs = "Virtio9P" + use_vsock = true +-[hypervisor.virtiofsd] +-path = "/usr/libexec/virtiofsd" +-log_level = "info" +-cache = "never" +-thread_pool_size = 4 +-syslog = true +diff --git a/vmm/sandbox/src/qemu/config.rs b/vmm/sandbox/src/qemu/config.rs +index 13dde154..9f6705f0 100644 +--- a/vmm/sandbox/src/qemu/config.rs ++++ b/vmm/sandbox/src/qemu/config.rs +@@ -99,7 +99,7 @@ pub struct QemuVMConfig { + pub disable_nvdimm: bool, + pub share_fs: ShareFsType, + pub use_vsock: bool, +- pub virtiofsd: VirtiofsdConfig, ++ pub virtiofsd: Option, + } + + impl Default for QemuVMConfig { +@@ -131,7 +131,7 @@ impl Default for QemuVMConfig { + disable_nvdimm: false, + share_fs: ShareFsType::Virtio9P, + use_vsock: false, +- virtiofsd: VirtiofsdConfig::default(), ++ virtiofsd: None, + } + } + } +diff --git a/vmm/sandbox/src/qemu/factory.rs b/vmm/sandbox/src/qemu/factory.rs +index 9e950015..7f9830b2 100644 +--- a/vmm/sandbox/src/qemu/factory.rs ++++ b/vmm/sandbox/src/qemu/factory.rs +@@ -62,7 +62,7 @@ impl VMFactory for QemuVMFactory { + s: &SandboxOption, + ) -> containerd_sandbox::error::Result { + let netns = get_netns(&s.sandbox); +- let mut vm = QemuVM::new(id, &netns, &s.base_dir, &self.default_config); ++ let mut vm = QemuVM::new(id, &netns, &s.base_dir); + vm.config = self.default_config.to_qemu_config().await?; + vm.config.uuid = Uuid::new_v4().to_string(); + vm.config.name = format!("sandbox-{}", id); +@@ -163,8 +163,21 @@ impl VMFactory for QemuVMFactory { + vm.attach_device(virtio_9p); + } + ShareFsType::VirtioFS => { +- if !vm.virtiofsd_config.socket_path.is_empty() { +- let virtio_fs = VhostCharDevice::new("extra-fs-kuasar", VhostUserType::VhostUserChar("vhost-user-fs-pci".to_string()), &vm.virtiofsd_config.socket_path, ""); ++ let cfg = self.default_config.virtiofsd.clone(); ++ match cfg { ++ Some(value) => { ++ let mut virtiofs = value; ++ virtiofs.socket_path = format!("{}/virtiofs.sock", &s.base_dir); ++ virtiofs.shared_dir = format!("{}/{}", &s.base_dir, SHARED_DIR_SUFFIX); ++ vm.virtiofsd_config = Some(virtiofs); ++ } ++ None => { ++ return Err(Error::Unimplemented("virtiofs can not start without virtiofsd config".to_string())); ++ } ++ } ++ let virtiofsd = vm.virtiofsd_config.clone().unwrap(); ++ if !virtiofsd.socket_path.is_empty() { ++ let virtio_fs = VhostCharDevice::new("extra-fs-kuasar", VhostUserType::VhostUserChar("vhost-user-fs-pci".to_string()), &virtiofsd.socket_path, ""); + vm.attach_device(virtio_fs); + } + } +diff --git a/vmm/sandbox/src/qemu/mod.rs b/vmm/sandbox/src/qemu/mod.rs +index f98dca6e..9ed8e510 100644 +--- a/vmm/sandbox/src/qemu/mod.rs ++++ b/vmm/sandbox/src/qemu/mod.rs +@@ -97,15 +97,17 @@ pub struct QemuVM { + wait_chan: Option>, + #[serde(skip)] + client: Option, +- virtiofsd_config: VirtiofsdConfig, ++ virtiofsd_config: Option, + } + + #[async_trait] + impl VM for QemuVM { + async fn start(&mut self) -> Result { + debug!("start vm {}", self.id); +- let virtiofsd_pid = self.start_virtiofsd().await?; +- self.pids.affiliated_pids.push(virtiofsd_pid); ++ if !self.virtiofsd_config.is_none() { ++ let virtiofsd_pid = self.start_virtiofsd().await?; ++ self.pids.affiliated_pids.push(virtiofsd_pid); ++ } + let wait_chan = self.launch().await?; + self.wait_chan = Some(wait_chan); + let start_time = SystemTime::now(); +@@ -326,10 +328,7 @@ impl VM for QemuVM { + } + + impl QemuVM { +- pub fn new(id: &str, netns: &str, base_dir: &str, vm_config: &QemuVMConfig) -> Self { +- let mut virtiofsd_config = vm_config.virtiofsd.clone(); +- virtiofsd_config.socket_path = format!("{}/virtiofs.sock", base_dir); +- virtiofsd_config.shared_dir = format!("{}/{}", base_dir, SHARED_DIR_SUFFIX); ++ pub fn new(id: &str, netns: &str, base_dir: &str) -> Self { + Self { + id: id.to_string(), + config: QemuConfig::default(), +@@ -343,7 +342,7 @@ impl QemuVM { + block_driver: BlockDriver::default(), + wait_chan: None, + client: None, +- virtiofsd_config, ++ virtiofsd_config: None, + } + } + +@@ -465,10 +464,11 @@ impl QemuVM { + + async fn start_virtiofsd(&self) -> Result { + //create_dir_all(&self.virtiofsd_config.shared_dir).await?; +- let params = self.virtiofsd_config.to_cmdline_params("--"); +- let mut cmd = tokio::process::Command::new(&self.virtiofsd_config.path); ++ let virtiofsd_config = self.virtiofsd_config.clone().unwrap(); ++ let params = virtiofsd_config.to_cmdline_params("--"); ++ let mut cmd = tokio::process::Command::new(&virtiofsd_config.path); + cmd.args(params.as_slice()); +- error!("start virtiofsd with cmdline: {:?}", cmd); ++ debug!("start virtiofsd with cmdline: {:?}", cmd); + set_cmd_netns(&mut cmd, self.netns.to_string())?; + cmd.stderr(Stdio::piped()); + cmd.stdout(Stdio::piped()); +@@ -478,7 +478,7 @@ impl QemuVM { + let pid = child + .id() + .ok_or(anyhow!("the virtiofsd has been polled to completion"))?; +- error!("virtiofsd for {} is running with pid {}", self.id, pid); ++ warn!("virtiofsd for {} is running with pid {}", self.id, pid); + spawn_wait(child, format!("virtiofsd {}", self.id), None, None); + Ok(pid) + } +-- +2.33.0 + diff --git a/patch/0014-coco-support-confidential-containers-pull-image.patch b/patch/0014-coco-support-confidential-containers-pull-image.patch new file mode 100644 index 0000000000000000000000000000000000000000..17baf805ac491773dd8effd0ac66d04624566d53 --- /dev/null +++ b/patch/0014-coco-support-confidential-containers-pull-image.patch @@ -0,0 +1,7300 @@ +From f49d58e6f42005c35702a34198b5340c90815e00 Mon Sep 17 00:00:00 2001 +From: liuxu +Date: Mon, 17 Feb 2025 19:48:30 +0800 +Subject: [PATCH] coco:support confidential containers pull image + +Signed-off-by: liuxu +--- + Makefile | 3 +- + vmm/task/.cargo/config.toml | 17 +- + vmm/task/Cargo.lock | 5611 +++++++++++++++++++++++++++++------ + vmm/task/Cargo.toml | 15 +- + vmm/task/src/config.rs | 53 + + vmm/task/src/container.rs | 54 +- + vmm/task/src/image_rpc.rs | 274 ++ + vmm/task/src/main.rs | 11 + + 8 files changed, 5097 insertions(+), 941 deletions(-) + create mode 100644 vmm/task/src/image_rpc.rs + +diff --git a/Makefile b/Makefile +index ff83284..dd8b184 100644 +--- a/Makefile ++++ b/Makefile +@@ -10,6 +10,7 @@ BIN_DIR := /usr/local/bin + SYSTEMD_SERVICE_DIR := /usr/lib/systemd/system + SYSTEMD_CONF_DIR := /etc/sysconfig + VMM_SANDBOX_FEATURES ?= ++VMM_TASK_FEATURES ?= + + .PHONY: vmm wasm quark clean all install-vmm install-wasm install-quark install \ + bin/vmm-sandboxer bin/vmm-task bin/vmlinux.bin bin/kuasar.img bin/kuasar.initrd \ +@@ -22,7 +23,7 @@ bin/vmm-sandboxer: + @mkdir -p bin && cp vmm/sandbox/target/release/${HYPERVISOR} bin/vmm-sandboxer + + bin/vmm-task: +- @cd vmm/task && cargo build --release --target=${ARCH}-unknown-linux-musl ++ @cd vmm/task && cargo build --release --target=${ARCH}-unknown-linux-musl --features=${VMM_TASK_FEATURES} + @mkdir -p bin && cp vmm/task/target/${ARCH}-unknown-linux-musl/release/vmm-task bin/vmm-task + + bin/vmlinux.bin: +diff --git a/vmm/task/.cargo/config.toml b/vmm/task/.cargo/config.toml +index cea4742..a5f920c 100644 +--- a/vmm/task/.cargo/config.toml ++++ b/vmm/task/.cargo/config.toml +@@ -1,14 +1,29 @@ + [source.crates-io] + replace-with = "vendored-sources" + ++[source."git+https://github.com/confidential-containers/guest-components?tag=v0.10.0"] ++git = "https://github.com/confidential-containers/guest-components" ++tag = "v0.10.0" ++replace-with = "vendored-sources" ++ + [source."git+https://github.com/kuasar-io/rust-extensions.git"] + git = "https://github.com/kuasar-io/rust-extensions.git" + replace-with = "vendored-sources" + +-[source."git+https://github.com/kuasar-io/ttrpc-rust.git"] ++[source."git+https://github.com/kuasar-io/ttrpc-rust.git?branch=v0.7.1-kuasar"] + git = "https://github.com/kuasar-io/ttrpc-rust.git" + branch = "v0.7.1-kuasar" + replace-with = "vendored-sources" + ++[source."git+https://github.com/mdaffin/loopdev?rev=c9f91e8f0326ce8a3364ac911e81eb32328a5f27"] ++git = "https://github.com/mdaffin/loopdev" ++rev = "c9f91e8f0326ce8a3364ac911e81eb32328a5f27" ++replace-with = "vendored-sources" ++ ++[source."git+https://github.com/sigstore/sigstore-rs.git?rev=1b6ccf0f64d173350ec5515bd69ab48a26a9c0a3"] ++git = "https://github.com/sigstore/sigstore-rs.git" ++rev = "1b6ccf0f64d173350ec5515bd69ab48a26a9c0a3" ++replace-with = "vendored-sources" ++ + [source.vendored-sources] + directory = "vendor" +diff --git a/vmm/task/Cargo.lock b/vmm/task/Cargo.lock +index f64120b..34d6da9 100644 +--- a/vmm/task/Cargo.lock ++++ b/vmm/task/Cargo.lock +@@ -1,6 +1,6 @@ + # This file is automatically @generated by Cargo. + # It is not intended for manual editing. +-version = 3 ++version = 4 + + [[package]] + name = "addr2line" +@@ -17,6 +17,59 @@ version = "1.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + ++[[package]] ++name = "adler2" ++version = "2.0.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" ++ ++[[package]] ++name = "aead" ++version = "0.5.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" ++dependencies = [ ++ "crypto-common", ++ "generic-array 0.14.7", ++] ++ ++[[package]] ++name = "aes" ++version = "0.8.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "cipher", ++ "cpufeatures", ++ "zeroize", ++] ++ ++[[package]] ++name = "aes-gcm" ++version = "0.10.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "831010a0f742e1209b3bcea8fab6a8e149051ba6099432c8cb2cc117dec3ead1" ++dependencies = [ ++ "aead", ++ "aes", ++ "cipher", ++ "ctr", ++ "ghash", ++ "subtle", ++] ++ ++[[package]] ++name = "ahash" ++version = "0.7.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" ++dependencies = [ ++ "getrandom", ++ "once_cell", ++ "version_check", ++] ++ + [[package]] + name = "aho-corasick" + version = "1.0.2" +@@ -26,15 +79,67 @@ dependencies = [ + "memchr", + ] + ++[[package]] ++name = "android-tzdata" ++version = "0.1.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" ++ ++[[package]] ++name = "android_system_properties" ++version = "0.1.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" ++dependencies = [ ++ "libc", ++] ++ + [[package]] + name = "anyhow" +-version = "1.0.71" ++version = "1.0.95" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8" ++checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" + dependencies = [ + "backtrace", + ] + ++[[package]] ++name = "arrayref" ++version = "0.3.9" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" ++ ++[[package]] ++name = "arrayvec" ++version = "0.7.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" ++ ++[[package]] ++name = "ascii-canvas" ++version = "3.0.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8824ecca2e851cec16968d54a01dd372ef8f95b244fb84b84e70128be347c3c6" ++dependencies = [ ++ "term", ++] ++ ++[[package]] ++name = "async-compression" ++version = "0.4.18" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "df895a515f70646414f4b45c0b79082783b80552b373a68283012928df56f522" ++dependencies = [ ++ "flate2", ++ "futures-core", ++ "futures-io", ++ "memchr", ++ "pin-project-lite", ++ "tokio", ++ "zstd", ++ "zstd-safe", ++] ++ + [[package]] + name = "async-stream" + version = "0.3.5" +@@ -54,18 +159,37 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" + dependencies = [ + "proc-macro2", + "quote", +- "syn 2.0.18", ++ "syn 2.0.91", + ] + + [[package]] + name = "async-trait" +-version = "0.1.68" ++version = "0.1.83" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842" ++checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" + dependencies = [ + "proc-macro2", + "quote", +- "syn 2.0.18", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "attester" ++version = "0.1.0" ++source = "git+https://github.com/confidential-containers/guest-components?tag=v0.10.0#075b9a9ee77227d9d92b6f3649ef69de5e72d204" ++dependencies = [ ++ "anyhow", ++ "async-trait", ++ "base64 0.22.1", ++ "hex", ++ "kbs-types", ++ "log", ++ "serde", ++ "serde_json", ++ "serde_with", ++ "sha2", ++ "strum", ++ "thiserror 1.0.65", + ] + + [[package]] +@@ -94,11 +218,11 @@ dependencies = [ + "async-trait", + "axum-core", + "bitflags 1.3.2", +- "bytes 1.4.0", ++ "bytes 1.9.0", + "futures-util", +- "http", +- "http-body", +- "hyper", ++ "http 0.2.9", ++ "http-body 0.4.5", ++ "hyper 0.14.26", + "itoa", + "matchit", + "memchr", +@@ -106,7 +230,7 @@ dependencies = [ + "percent-encoding", + "pin-project-lite", + "serde", +- "sync_wrapper", ++ "sync_wrapper 0.1.2", + "tokio", + "tower", + "tower-http", +@@ -121,10 +245,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "37e5939e02c56fecd5c017c37df4238c0a839fa76b7f97acdd7efb804fd181cc" + dependencies = [ + "async-trait", +- "bytes 1.4.0", ++ "bytes 1.9.0", + "futures-util", +- "http", +- "http-body", ++ "http 0.2.9", ++ "http-body 0.4.5", + "mime", + "tower-layer", + "tower-service", +@@ -140,23 +264,92 @@ dependencies = [ + "cc", + "cfg-if 1.0.0", + "libc", +- "miniz_oxide", ++ "miniz_oxide 0.7.2", + "object", + "rustc-demangle", + ] + ++[[package]] ++name = "base16ct" ++version = "0.2.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" ++ + [[package]] + name = "base64" + version = "0.13.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + ++[[package]] ++name = "base64" ++version = "0.21.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" ++ + [[package]] + name = "base64" + version = "0.22.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" + ++[[package]] ++name = "base64-serde" ++version = "0.7.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ba368df5de76a5bea49aaf0cf1b39ccfbbef176924d1ba5db3e4135216cbe3c7" ++dependencies = [ ++ "base64 0.21.7", ++ "serde", ++] ++ ++[[package]] ++name = "base64ct" ++version = "1.6.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" ++ ++[[package]] ++name = "bindgen" ++version = "0.63.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "36d860121800b2a9a94f9b5604b332d5cffb234ce17609ea479d723dbc9d3885" ++dependencies = [ ++ "bitflags 1.3.2", ++ "cexpr", ++ "clang-sys", ++ "lazy_static", ++ "lazycell", ++ "peeking_take_while", ++ "proc-macro2", ++ "quote", ++ "regex", ++ "rustc-hash", ++ "shlex", ++ "syn 1.0.109", ++] ++ ++[[package]] ++name = "binstring" ++version = "0.1.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ed79c2a8151273c70956b5e3cdfdc1ff6c1a8b9779ba59c6807d281b32ee2f86" ++ ++[[package]] ++name = "bit-set" ++version = "0.5.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" ++dependencies = [ ++ "bit-vec", ++] ++ ++[[package]] ++name = "bit-vec" ++version = "0.6.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" ++ + [[package]] + name = "bitflags" + version = "1.3.2" +@@ -169,6 +362,72 @@ version = "2.6.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" + ++[[package]] ++name = "blake2b_simd" ++version = "1.0.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "23285ad32269793932e830392f2fe2f83e26488fd3ec778883a93c8323735780" ++dependencies = [ ++ "arrayref", ++ "arrayvec", ++ "constant_time_eq", ++] ++ ++[[package]] ++name = "block-buffer" ++version = "0.10.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" ++dependencies = [ ++ "generic-array 0.14.7", ++] ++ ++[[package]] ++name = "block-padding" ++version = "0.3.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93" ++dependencies = [ ++ "generic-array 0.14.7", ++] ++ ++[[package]] ++name = "block2" ++version = "0.5.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2c132eebf10f5cad5289222520a4a058514204aed6d791f1cf4fe8088b82d15f" ++dependencies = [ ++ "objc2", ++] ++ ++[[package]] ++name = "blowfish" ++version = "0.9.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e412e2cd0f2b2d93e02543ceae7917b3c70331573df19ee046bcbc35e45e87d7" ++dependencies = [ ++ "byteorder", ++ "cipher", ++] ++ ++[[package]] ++name = "buffered-reader" ++version = "1.3.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "fabd1c5e55587a8e8526172d63ad2ba665fa18c8acb39ec9a77af1708c982b9b" ++dependencies = [ ++ "bzip2", ++ "flate2", ++ "lazy_static", ++ "libc", ++] ++ ++[[package]] ++name = "bumpalo" ++version = "3.16.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" ++ + [[package]] + name = "byteorder" + version = "1.4.3" +@@ -187,15 +446,93 @@ dependencies = [ + + [[package]] + name = "bytes" +-version = "1.4.0" ++version = "1.9.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" ++ ++[[package]] ++name = "bzip2" ++version = "0.5.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "bafdbf26611df8c14810e268ddceda071c297570a5fb360ceddf617fe417ef58" ++dependencies = [ ++ "bzip2-sys", ++ "libc", ++] ++ ++[[package]] ++name = "bzip2-sys" ++version = "0.1.11+1.0.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc" ++dependencies = [ ++ "cc", ++ "libc", ++ "pkg-config", ++] ++ ++[[package]] ++name = "camellia" ++version = "0.1.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" ++checksum = "3264e2574e9ef2b53ce6f536dea83a69ac0bc600b762d1523ff83fe07230ce30" ++dependencies = [ ++ "byteorder", ++ "cipher", ++] ++ ++[[package]] ++name = "cast5" ++version = "0.11.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "26b07d673db1ccf000e90f54b819db9e75a8348d6eb056e9b8ab53231b7a9911" ++dependencies = [ ++ "cipher", ++] ++ ++[[package]] ++name = "cbc" ++version = "0.1.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "26b52a9543ae338f279b96b0b9fed9c8093744685043739079ce85cd58f289a6" ++dependencies = [ ++ "cipher", ++] + + [[package]] + name = "cc" +-version = "1.0.79" ++version = "1.1.31" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c2e7962b54006dcfcc61cb72735f4d89bb97061dd6a7ed882ec6b8ee53714c6f" ++dependencies = [ ++ "jobserver", ++ "libc", ++ "shlex", ++] ++ ++[[package]] ++name = "cesu8" ++version = "1.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" ++ ++[[package]] ++name = "cexpr" ++version = "0.6.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" ++checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" ++dependencies = [ ++ "nom", ++] ++ ++[[package]] ++name = "cfb-mode" ++version = "0.8.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "738b8d467867f80a71351933f70461f5b56f24d5c93e0cf216e59229c968d330" ++dependencies = [ ++ "cipher", ++] + + [[package]] + name = "cfg-if" +@@ -215,6 +552,12 @@ version = "0.1.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" + ++[[package]] ++name = "cfg_aliases" ++version = "0.2.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" ++ + [[package]] + name = "cgroups-rs" + version = "0.2.11" +@@ -227,6 +570,54 @@ dependencies = [ + "regex", + ] + ++[[package]] ++name = "chrono" ++version = "0.4.38" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" ++dependencies = [ ++ "android-tzdata", ++ "iana-time-zone", ++ "js-sys", ++ "num-traits", ++ "serde", ++ "wasm-bindgen", ++ "windows-targets 0.52.6", ++] ++ ++[[package]] ++name = "cipher" ++version = "0.4.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" ++dependencies = [ ++ "crypto-common", ++ "inout", ++ "zeroize", ++] ++ ++[[package]] ++name = "clang-sys" ++version = "1.8.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" ++dependencies = [ ++ "glob", ++ "libc", ++ "libloading", ++] ++ ++[[package]] ++name = "cmac" ++version = "0.7.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8543454e3c3f5126effff9cd44d562af4e31fb8ce1cc0d3dcd8f084515dbc1aa" ++dependencies = [ ++ "cipher", ++ "dbl", ++ "digest", ++] ++ + [[package]] + name = "cmake" + version = "0.1.50" +@@ -236,6 +627,27 @@ dependencies = [ + "cc", + ] + ++[[package]] ++name = "coarsetime" ++version = "0.1.35" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4252bf230cb600c19826a575b31c8c9c84c6f11acfab6dfcad2e941b10b6f8e2" ++dependencies = [ ++ "libc", ++ "wasix", ++ "wasm-bindgen", ++] ++ ++[[package]] ++name = "combine" ++version = "4.6.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" ++dependencies = [ ++ "bytes 1.9.0", ++ "memchr", ++] ++ + [[package]] + name = "command-fds" + version = "0.2.2" +@@ -243,9 +655,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "35cc819120a403d0eb3d0c404088c5a9f9b06066147ec69a21919fbc0833ef68" + dependencies = [ + "nix 0.22.3", +- "thiserror", ++ "thiserror 1.0.65", + ] + ++[[package]] ++name = "const-oid" ++version = "0.9.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" ++ ++[[package]] ++name = "constant_time_eq" ++version = "0.3.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" ++ + [[package]] + name = "containerd-sandbox" + version = "0.1.0" +@@ -260,14 +684,14 @@ dependencies = [ + "libc", + "log", + "nix 0.23.2", +- "oci-spec", ++ "oci-spec 0.5.8", + "pin-project-lite", + "prost 0.10.4", + "prost-types 0.10.1", + "serde", + "serde_derive", + "serde_json", +- "thiserror", ++ "thiserror 1.0.65", + "time", + "tokio", + "tokio-stream", +@@ -290,7 +714,7 @@ dependencies = [ + "libc", + "log", + "nix 0.28.0", +- "oci-spec", ++ "oci-spec 0.5.8", + "page_size", + "pin-project-lite", + "prctl", +@@ -300,7 +724,7 @@ dependencies = [ + "serde_json", + "signal-hook", + "signal-hook-tokio", +- "thiserror", ++ "thiserror 1.0.65", + "time", + "tokio", + "uuid", +@@ -312,13 +736,86 @@ version = "0.2.0" + source = "git+https://github.com/kuasar-io/rust-extensions.git#53b4ca86b3461efb22b881b891e41fb45e264c7f" + dependencies = [ + "async-trait", +- "protobuf 3.2.0", +- "ttrpc", ++ "protobuf 3.5.1", ++ "ttrpc 0.7.1", + "ttrpc-codegen 0.4.2", + ] + + [[package]] +-name = "crossbeam" ++name = "cookie" ++version = "0.18.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4ddef33a339a91ea89fb53151bd0a4689cfce27055c291dfa69945475d22c747" ++dependencies = [ ++ "percent-encoding", ++ "time", ++ "version_check", ++] ++ ++[[package]] ++name = "cookie_store" ++version = "0.21.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2eac901828f88a5241ee0600950ab981148a18f2f756900ffba1b125ca6a3ef9" ++dependencies = [ ++ "cookie", ++ "document-features", ++ "idna", ++ "log", ++ "publicsuffix", ++ "serde", ++ "serde_derive", ++ "serde_json", ++ "time", ++ "url", ++] ++ ++[[package]] ++name = "core-foundation" ++version = "0.9.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" ++dependencies = [ ++ "core-foundation-sys", ++ "libc", ++] ++ ++[[package]] ++name = "core-foundation" ++version = "0.10.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b55271e5c8c478ad3f38ad24ef34923091e0548492a266d19b3c0b4d82574c63" ++dependencies = [ ++ "core-foundation-sys", ++ "libc", ++] ++ ++[[package]] ++name = "core-foundation-sys" ++version = "0.8.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" ++ ++[[package]] ++name = "cpufeatures" ++version = "0.2.16" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3" ++dependencies = [ ++ "libc", ++] ++ ++[[package]] ++name = "crc32fast" ++version = "1.4.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" ++dependencies = [ ++ "cfg-if 1.0.0", ++] ++ ++[[package]] ++name = "crossbeam" + version = "0.8.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "2801af0d36612ae591caa9568261fddce32ce6e08a7275ea334a06a4ad021a2c" +@@ -384,14 +881,151 @@ dependencies = [ + "cfg-if 1.0.0", + ] + ++[[package]] ++name = "crunchy" ++version = "0.2.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" ++ ++[[package]] ++name = "crypto" ++version = "0.1.0" ++source = "git+https://github.com/confidential-containers/guest-components?tag=v0.10.0#075b9a9ee77227d9d92b6f3649ef69de5e72d204" ++dependencies = [ ++ "anyhow", ++ "base64 0.22.1", ++ "kbs-types", ++ "openssl", ++ "rand", ++ "serde", ++ "serde_json", ++ "sha2", ++ "strum", ++ "zeroize", ++] ++ ++[[package]] ++name = "crypto-bigint" ++version = "0.5.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" ++dependencies = [ ++ "generic-array 0.14.7", ++ "rand_core", ++ "subtle", ++ "zeroize", ++] ++ ++[[package]] ++name = "crypto-common" ++version = "0.1.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" ++dependencies = [ ++ "generic-array 0.14.7", ++ "rand_core", ++ "typenum", ++] ++ ++[[package]] ++name = "crypto_secretbox" ++version = "0.1.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b9d6cf87adf719ddf43a805e92c6870a531aedda35ff640442cbaf8674e141e1" ++dependencies = [ ++ "aead", ++ "cipher", ++ "generic-array 0.14.7", ++ "poly1305", ++ "salsa20", ++ "subtle", ++ "zeroize", ++] ++ ++[[package]] ++name = "ct-codecs" ++version = "1.1.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b916ba8ce9e4182696896f015e8a5ae6081b305f74690baa8465e35f5a142ea4" ++ ++[[package]] ++name = "ctr" ++version = "0.9.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" ++dependencies = [ ++ "cipher", ++] ++ ++[[package]] ++name = "curve25519-dalek" ++version = "4.1.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "cpufeatures", ++ "curve25519-dalek-derive", ++ "digest", ++ "fiat-crypto", ++ "rustc_version", ++ "subtle", ++ "zeroize", ++] ++ ++[[package]] ++name = "curve25519-dalek-derive" ++version = "0.1.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "darling" ++version = "0.13.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" ++dependencies = [ ++ "darling_core 0.13.4", ++ "darling_macro 0.13.4", ++] ++ + [[package]] + name = "darling" + version = "0.14.4" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" + dependencies = [ +- "darling_core", +- "darling_macro", ++ "darling_core 0.14.4", ++ "darling_macro 0.14.4", ++] ++ ++[[package]] ++name = "darling" ++version = "0.20.10" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" ++dependencies = [ ++ "darling_core 0.20.10", ++ "darling_macro 0.20.10", ++] ++ ++[[package]] ++name = "darling_core" ++version = "0.13.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" ++dependencies = [ ++ "fnv", ++ "ident_case", ++ "proc-macro2", ++ "quote", ++ "strsim 0.10.0", ++ "syn 1.0.109", + ] + + [[package]] +@@ -404,7 +1038,32 @@ dependencies = [ + "ident_case", + "proc-macro2", + "quote", +- "strsim", ++ "strsim 0.10.0", ++ "syn 1.0.109", ++] ++ ++[[package]] ++name = "darling_core" ++version = "0.20.10" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" ++dependencies = [ ++ "fnv", ++ "ident_case", ++ "proc-macro2", ++ "quote", ++ "strsim 0.11.1", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "darling_macro" ++version = "0.13.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" ++dependencies = [ ++ "darling_core 0.13.4", ++ "quote", + "syn 1.0.109", + ] + +@@ -414,11 +1073,61 @@ version = "0.14.4" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" + dependencies = [ +- "darling_core", ++ "darling_core 0.14.4", + "quote", + "syn 1.0.109", + ] + ++[[package]] ++name = "darling_macro" ++version = "0.20.10" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" ++dependencies = [ ++ "darling_core 0.20.10", ++ "quote", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "dbl" ++version = "0.3.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "bd2735a791158376708f9347fe8faba9667589d82427ef3aed6794a8981de3d9" ++dependencies = [ ++ "generic-array 0.14.7", ++] ++ ++[[package]] ++name = "decoded-char" ++version = "0.1.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "5440d1dc8ea7cae44cda3c64568db29bfa2434aba51ae66a50c00488841a65a3" ++ ++[[package]] ++name = "der" ++version = "0.7.9" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0" ++dependencies = [ ++ "const-oid", ++ "der_derive", ++ "flagset", ++ "pem-rfc7468", ++ "zeroize", ++] ++ ++[[package]] ++name = "der_derive" ++version = "0.7.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8034092389675178f570469e6c3b0465d3d30b4505c294a6550db47f3c17ad18" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++] ++ + [[package]] + name = "derive-new" + version = "0.5.9" +@@ -436,7 +1145,16 @@ version = "0.11.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "d07adf7be193b71cc36b193d0f5fe60b918a3a9db4dad0449f57bcfd519704a3" + dependencies = [ +- "derive_builder_macro", ++ "derive_builder_macro 0.11.2", ++] ++ ++[[package]] ++name = "derive_builder" ++version = "0.20.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "507dfb09ea8b7fa618fcf76e953f4f5e192547945816d5358edffe39f6f94947" ++dependencies = [ ++ "derive_builder_macro 0.20.2", + ] + + [[package]] +@@ -445,117 +1163,408 @@ version = "0.11.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "1f91d4cfa921f1c05904dc3c57b4a32c38aed3340cce209f3a6fd1478babafc4" + dependencies = [ +- "darling", ++ "darling 0.14.4", + "proc-macro2", + "quote", + "syn 1.0.109", + ] + ++[[package]] ++name = "derive_builder_core" ++version = "0.20.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8" ++dependencies = [ ++ "darling 0.20.10", ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++] ++ + [[package]] + name = "derive_builder_macro" + version = "0.11.2" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "8f0314b72bed045f3a68671b3c86328386762c93f82d98c65c3cb5e5f573dd68" + dependencies = [ +- "derive_builder_core", ++ "derive_builder_core 0.11.2", + "syn 1.0.109", + ] + + [[package]] +-name = "either" +-version = "1.8.1" ++name = "derive_builder_macro" ++version = "0.20.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" ++checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" ++dependencies = [ ++ "derive_builder_core 0.20.2", ++ "syn 2.0.91", ++] + + [[package]] +-name = "env_logger" +-version = "0.9.3" ++name = "des" ++version = "0.8.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "a12e6657c4c97ebab115a42dcee77225f7f482cdd841cf7088c657a42e9e00e7" ++checksum = "ffdd80ce8ce993de27e9f063a444a4d53ce8e8db4c1f00cc03af5ad5a9867a1e" + dependencies = [ +- "atty", +- "humantime", +- "log", +- "regex", +- "termcolor", ++ "cipher", + ] + + [[package]] +-name = "errno" +-version = "0.3.1" ++name = "digest" ++version = "0.10.7" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a" ++checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" + dependencies = [ +- "errno-dragonfly", +- "libc", +- "windows-sys", ++ "block-buffer", ++ "const-oid", ++ "crypto-common", ++ "subtle", + ] + + [[package]] +-name = "errno-dragonfly" ++name = "dirs-next" ++version = "2.0.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "dirs-sys-next", ++] ++ ++[[package]] ++name = "dirs-sys-next" + version = "0.1.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" ++checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" + dependencies = [ +- "cc", + "libc", ++ "redox_users", ++ "winapi", + ] + + [[package]] +-name = "fastrand" +-version = "1.9.0" ++name = "displaydoc" ++version = "0.2.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" ++checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" + dependencies = [ +- "instant", ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", + ] + + [[package]] +-name = "fixedbitset" +-version = "0.2.0" ++name = "document-features" ++version = "0.2.10" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d" ++checksum = "cb6969eaabd2421f8a2775cfd2471a2b634372b4a25d41e3bd647b79912850a0" ++dependencies = [ ++ "litrs", ++] + + [[package]] +-name = "fixedbitset" +-version = "0.4.2" ++name = "dsa" ++version = "0.6.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" ++checksum = "48bc224a9084ad760195584ce5abb3c2c34a225fa312a128ad245a6b412b7689" ++dependencies = [ ++ "digest", ++ "num-bigint-dig", ++ "num-traits", ++ "pkcs8", ++ "rfc6979", ++ "sha2", ++ "signature", ++ "zeroize", ++] + + [[package]] +-name = "fnv" +-version = "1.0.7" ++name = "dyn-clone" ++version = "1.0.17" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" ++checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" + + [[package]] +-name = "futures" +-version = "0.3.28" ++name = "eax" ++version = "0.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" ++checksum = "9954fabd903b82b9d7a68f65f97dc96dd9ad368e40ccc907a7c19d53e6bfac28" + dependencies = [ +- "futures-channel", +- "futures-core", +- "futures-executor", +- "futures-io", +- "futures-sink", +- "futures-task", +- "futures-util", ++ "aead", ++ "cipher", ++ "cmac", ++ "ctr", ++ "subtle", + ] + + [[package]] +-name = "futures-channel" +-version = "0.3.28" ++name = "ecb" ++version = "0.1.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" ++checksum = "1a8bfa975b1aec2145850fcaa1c6fe269a16578c44705a532ae3edc92b8881c7" + dependencies = [ +- "futures-core", +- "futures-sink", ++ "cipher", + ] + + [[package]] +-name = "futures-core" +-version = "0.3.28" ++name = "ecdsa" ++version = "0.16.9" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" ++dependencies = [ ++ "der", ++ "digest", ++ "elliptic-curve", ++ "rfc6979", ++ "signature", ++ "spki", ++] ++ ++[[package]] ++name = "ed25519" ++version = "2.2.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" ++dependencies = [ ++ "pkcs8", ++ "signature", ++] ++ ++[[package]] ++name = "ed25519-compact" ++version = "2.1.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e9b3460f44bea8cd47f45a0c70892f1eff856d97cd55358b2f73f663789f6190" ++dependencies = [ ++ "ct-codecs", ++ "getrandom", ++] ++ ++[[package]] ++name = "ed25519-dalek" ++version = "2.1.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" ++dependencies = [ ++ "curve25519-dalek", ++ "ed25519", ++ "rand_core", ++ "serde", ++ "sha2", ++ "subtle", ++ "zeroize", ++] ++ ++[[package]] ++name = "either" ++version = "1.8.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" ++ ++[[package]] ++name = "elliptic-curve" ++version = "0.13.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" ++dependencies = [ ++ "base16ct", ++ "crypto-bigint", ++ "digest", ++ "ff", ++ "generic-array 0.14.7", ++ "group", ++ "hkdf", ++ "pem-rfc7468", ++ "pkcs8", ++ "rand_core", ++ "sec1", ++ "subtle", ++ "zeroize", ++] ++ ++[[package]] ++name = "ena" ++version = "0.14.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "3d248bdd43ce613d87415282f69b9bb99d947d290b10962dd6c56233312c2ad5" ++dependencies = [ ++ "log", ++] ++ ++[[package]] ++name = "env_logger" ++version = "0.9.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a12e6657c4c97ebab115a42dcee77225f7f482cdd841cf7088c657a42e9e00e7" ++dependencies = [ ++ "atty", ++ "humantime", ++ "log", ++ "regex", ++ "termcolor", ++] ++ ++[[package]] ++name = "equivalent" ++version = "1.0.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" ++ ++[[package]] ++name = "errno" ++version = "0.2.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1" ++dependencies = [ ++ "errno-dragonfly", ++ "libc", ++ "winapi", ++] ++ ++[[package]] ++name = "errno" ++version = "0.3.10" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" ++dependencies = [ ++ "libc", ++ "windows-sys 0.59.0", ++] ++ ++[[package]] ++name = "errno-dragonfly" ++version = "0.1.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" ++dependencies = [ ++ "cc", ++ "libc", ++] ++ ++[[package]] ++name = "fastrand" ++version = "1.9.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" ++dependencies = [ ++ "instant", ++] ++ ++[[package]] ++name = "ff" ++version = "0.13.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" ++dependencies = [ ++ "rand_core", ++ "subtle", ++] ++ ++[[package]] ++name = "fiat-crypto" ++version = "0.2.9" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" ++ ++[[package]] ++name = "filetime" ++version = "0.2.25" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "libc", ++ "libredox", ++ "windows-sys 0.59.0", ++] ++ ++[[package]] ++name = "fixedbitset" ++version = "0.2.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d" ++ ++[[package]] ++name = "fixedbitset" ++version = "0.4.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" ++ ++[[package]] ++name = "flagset" ++version = "0.4.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b3ea1ec5f8307826a5b71094dd91fc04d4ae75d5709b20ad351c7fb4815c86ec" ++ ++[[package]] ++name = "flate2" ++version = "1.0.34" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0" ++dependencies = [ ++ "crc32fast", ++ "miniz_oxide 0.8.0", ++] ++ ++[[package]] ++name = "fnv" ++version = "1.0.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" ++ ++[[package]] ++name = "foreign-types" ++version = "0.3.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" ++dependencies = [ ++ "foreign-types-shared", ++] ++ ++[[package]] ++name = "foreign-types-shared" ++version = "0.1.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" ++ ++[[package]] ++name = "form_urlencoded" ++version = "1.2.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" ++dependencies = [ ++ "percent-encoding", ++] ++ ++[[package]] ++name = "futures" ++version = "0.3.28" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" ++dependencies = [ ++ "futures-channel", ++ "futures-core", ++ "futures-executor", ++ "futures-io", ++ "futures-sink", ++ "futures-task", ++ "futures-util", ++] ++ ++[[package]] ++name = "futures-channel" ++version = "0.3.28" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" ++dependencies = [ ++ "futures-core", ++ "futures-sink", ++] ++ ++[[package]] ++name = "futures-core" ++version = "0.3.28" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" + +@@ -584,7 +1593,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" + dependencies = [ + "proc-macro2", + "quote", +- "syn 2.0.18", ++ "syn 2.0.91", + ] + + [[package]] +@@ -617,6 +1626,26 @@ dependencies = [ + "slab", + ] + ++[[package]] ++name = "generic-array" ++version = "0.14.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" ++dependencies = [ ++ "typenum", ++ "version_check", ++ "zeroize", ++] ++ ++[[package]] ++name = "generic-array" ++version = "1.1.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2cb8bc4c28d15ade99c7e90b219f30da4be5c88e586277e8cbe886beeb868ab2" ++dependencies = [ ++ "typenum", ++] ++ + [[package]] + name = "getrandom" + version = "0.2.10" +@@ -624,8 +1653,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" + dependencies = [ + "cfg-if 1.0.0", ++ "js-sys", + "libc", + "wasi", ++ "wasm-bindgen", + ] + + [[package]] +@@ -640,12 +1671,28 @@ dependencies = [ + "syn 1.0.109", + ] + ++[[package]] ++name = "ghash" ++version = "0.5.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f0d8a4362ccb29cb0b265253fb0a2728f592895ee6854fd9bc13f2ffda266ff1" ++dependencies = [ ++ "opaque-debug", ++ "polyval", ++] ++ + [[package]] + name = "gimli" + version = "0.28.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" + ++[[package]] ++name = "glob" ++version = "0.3.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" ++ + [[package]] + name = "go-flag" + version = "0.1.0" +@@ -655,19 +1702,30 @@ dependencies = [ + "cfg-if 0.1.10", + ] + ++[[package]] ++name = "group" ++version = "0.13.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" ++dependencies = [ ++ "ff", ++ "rand_core", ++ "subtle", ++] ++ + [[package]] + name = "h2" + version = "0.3.19" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "d357c7ae988e7d2182f7d7871d0b963962420b0678b0997ce7de72001aeab782" + dependencies = [ +- "bytes 1.4.0", ++ "bytes 1.9.0", + "fnv", + "futures-core", + "futures-sink", + "futures-util", +- "http", +- "indexmap", ++ "http 0.2.9", ++ "indexmap 1.9.3", + "slab", + "tokio", + "tokio-util", +@@ -679,6 +1737,15 @@ name = "hashbrown" + version = "0.12.3" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" ++dependencies = [ ++ "ahash", ++] ++ ++[[package]] ++name = "hashbrown" ++version = "0.15.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" + + [[package]] + name = "heck" +@@ -696,19 +1763,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + + [[package]] +-name = "hermit-abi" +-version = "0.1.19" ++name = "heck" ++version = "0.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" +-dependencies = [ +- "libc", +-] ++checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + + [[package]] + name = "hermit-abi" +-version = "0.2.6" ++version = "0.1.19" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" ++checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" + dependencies = [ + "libc", + ] +@@ -720,1307 +1784,3377 @@ source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286" + + [[package]] +-name = "http" +-version = "0.2.9" ++name = "hex" ++version = "0.4.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482" +-dependencies = [ +- "bytes 1.4.0", +- "fnv", +- "itoa", +-] ++checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" + + [[package]] +-name = "http-body" +-version = "0.4.5" ++name = "hkdf" ++version = "0.12.4" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" ++checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" + dependencies = [ +- "bytes 1.4.0", +- "http", +- "pin-project-lite", ++ "hmac", + ] + + [[package]] +-name = "http-range-header" +-version = "0.3.0" ++name = "hmac" ++version = "0.12.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "0bfe8eed0a9285ef776bb792479ea3834e8b94e13d615c2f66d03dd50a435a29" ++checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" ++dependencies = [ ++ "digest", ++] + + [[package]] +-name = "httparse" +-version = "1.8.0" ++name = "hmac-sha1-compact" ++version = "1.1.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" ++checksum = "18492c9f6f9a560e0d346369b665ad2bdbc89fa9bceca75796584e79042694c3" + + [[package]] +-name = "httpdate" +-version = "1.0.2" ++name = "hmac-sha256" ++version = "1.1.8" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" ++checksum = "4a8575493d277c9092b988c780c94737fb9fd8651a1001e16bee3eccfc1baedb" ++dependencies = [ ++ "digest", ++] + + [[package]] +-name = "humantime" +-version = "2.1.0" ++name = "hmac-sha512" ++version = "1.1.6" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" ++checksum = "b0b3a0f572aa8389d325f5852b9e0a333a15b0f86ecccbb3fdb6e97cd86dc67c" ++dependencies = [ ++ "digest", ++] + + [[package]] +-name = "hyper" +-version = "0.14.26" ++name = "home" ++version = "0.5.11" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "ab302d72a6f11a3b910431ff93aae7e773078c769f0a3ef15fb9ec692ed147d4" ++checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" + dependencies = [ +- "bytes 1.4.0", +- "futures-channel", +- "futures-core", +- "futures-util", +- "h2", +- "http", +- "http-body", +- "httparse", +- "httpdate", +- "itoa", +- "pin-project-lite", +- "socket2", +- "tokio", +- "tower-service", +- "tracing", +- "want", ++ "windows-sys 0.59.0", + ] + + [[package]] +-name = "hyper-timeout" +-version = "0.4.1" ++name = "http" ++version = "0.2.9" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" ++checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482" + dependencies = [ +- "hyper", +- "pin-project-lite", +- "tokio", +- "tokio-io-timeout", ++ "bytes 1.9.0", ++ "fnv", ++ "itoa", + ] + + [[package]] +-name = "ident_case" +-version = "1.0.1" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" +- +-[[package]] +-name = "indexmap" +-version = "1.9.3" ++name = "http" ++version = "1.2.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" ++checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea" + dependencies = [ +- "autocfg", +- "hashbrown", ++ "bytes 1.9.0", ++ "fnv", ++ "itoa", + ] + + [[package]] +-name = "instant" +-version = "0.1.12" ++name = "http-auth" ++version = "0.1.10" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" ++checksum = "150fa4a9462ef926824cf4519c84ed652ca8f4fbae34cb8af045b5cbcaf98822" + dependencies = [ +- "cfg-if 1.0.0", ++ "memchr", + ] + + [[package]] +-name = "io-lifetimes" +-version = "1.0.11" ++name = "http-body" ++version = "0.4.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" ++checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" + dependencies = [ +- "hermit-abi 0.3.1", +- "libc", +- "windows-sys", ++ "bytes 1.9.0", ++ "http 0.2.9", ++ "pin-project-lite", + ] + + [[package]] +-name = "iovec" +-version = "0.1.4" ++name = "http-body" ++version = "1.0.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e" ++checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" + dependencies = [ +- "libc", ++ "bytes 1.9.0", ++ "http 1.2.0", + ] + + [[package]] +-name = "ipnetwork" +-version = "0.20.0" ++name = "http-body-util" ++version = "0.1.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "bf466541e9d546596ee94f9f69590f89473455f88372423e0008fc1a7daf100e" ++checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" + dependencies = [ +- "serde", ++ "bytes 1.9.0", ++ "futures-util", ++ "http 1.2.0", ++ "http-body 1.0.1", ++ "pin-project-lite", + ] + + [[package]] +-name = "itertools" +-version = "0.10.5" ++name = "http-range-header" ++version = "0.3.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +-dependencies = [ +- "either", +-] ++checksum = "0bfe8eed0a9285ef776bb792479ea3834e8b94e13d615c2f66d03dd50a435a29" + + [[package]] +-name = "itoa" +-version = "1.0.6" ++name = "httparse" ++version = "1.8.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" ++checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" + + [[package]] +-name = "lazy_static" +-version = "1.4.0" ++name = "httpdate" ++version = "1.0.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" ++checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" + + [[package]] +-name = "libc" +-version = "0.2.153" ++name = "humantime" ++version = "2.1.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" ++checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" + + [[package]] +-name = "linux-raw-sys" +-version = "0.3.8" ++name = "hyper" ++version = "0.14.26" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" ++checksum = "ab302d72a6f11a3b910431ff93aae7e773078c769f0a3ef15fb9ec692ed147d4" ++dependencies = [ ++ "bytes 1.9.0", ++ "futures-channel", ++ "futures-core", ++ "futures-util", ++ "h2", ++ "http 0.2.9", ++ "http-body 0.4.5", ++ "httparse", ++ "httpdate", ++ "itoa", ++ "pin-project-lite", ++ "socket2 0.4.9", ++ "tokio", ++ "tower-service", ++ "tracing", ++ "want", ++] + + [[package]] +-name = "lock_api" +-version = "0.4.10" ++name = "hyper" ++version = "1.5.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" ++checksum = "256fb8d4bd6413123cc9d91832d78325c48ff41677595be797d90f42969beae0" + dependencies = [ +- "autocfg", +- "scopeguard", ++ "bytes 1.9.0", ++ "futures-channel", ++ "futures-util", ++ "http 1.2.0", ++ "http-body 1.0.1", ++ "httparse", ++ "itoa", ++ "pin-project-lite", ++ "smallvec", ++ "tokio", ++ "want", + ] + + [[package]] +-name = "log" +-version = "0.4.21" ++name = "hyper-timeout" ++version = "0.4.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" ++checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" ++dependencies = [ ++ "hyper 0.14.26", ++ "pin-project-lite", ++ "tokio", ++ "tokio-io-timeout", ++] + + [[package]] +-name = "matchit" +-version = "0.5.0" ++name = "hyper-tls" ++version = "0.6.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "73cbba799671b762df5a175adf59ce145165747bb891505c43d09aefbbf38beb" ++checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" ++dependencies = [ ++ "bytes 1.9.0", ++ "http-body-util", ++ "hyper 1.5.2", ++ "hyper-util", ++ "native-tls", ++ "tokio", ++ "tokio-native-tls", ++ "tower-service", ++] + + [[package]] +-name = "memchr" +-version = "2.5.0" ++name = "hyper-util" ++version = "0.1.10" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" ++checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4" ++dependencies = [ ++ "bytes 1.9.0", ++ "futures-channel", ++ "futures-util", ++ "http 1.2.0", ++ "http-body 1.0.1", ++ "hyper 1.5.2", ++ "pin-project-lite", ++ "socket2 0.5.8", ++ "tokio", ++ "tower-service", ++ "tracing", ++] + + [[package]] +-name = "memoffset" +-version = "0.6.5" ++name = "iana-time-zone" ++version = "0.1.61" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" ++checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" + dependencies = [ +- "autocfg", ++ "android_system_properties", ++ "core-foundation-sys", ++ "iana-time-zone-haiku", ++ "js-sys", ++ "wasm-bindgen", ++ "windows-core", + ] + + [[package]] +-name = "memoffset" +-version = "0.8.0" ++name = "iana-time-zone-haiku" ++version = "0.1.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" ++checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" + dependencies = [ +- "autocfg", ++ "cc", + ] + + [[package]] +-name = "memoffset" +-version = "0.9.1" ++name = "icu_collections" ++version = "1.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" ++checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" + dependencies = [ +- "autocfg", ++ "displaydoc", ++ "yoke", ++ "zerofrom", ++ "zerovec", + ] + + [[package]] +-name = "mime" +-version = "0.3.17" ++name = "icu_locid" ++version = "1.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" ++checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" ++dependencies = [ ++ "displaydoc", ++ "litemap", ++ "tinystr", ++ "writeable", ++ "zerovec", ++] + + [[package]] +-name = "miniz_oxide" +-version = "0.7.2" ++name = "icu_locid_transform" ++version = "1.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" ++checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" + dependencies = [ +- "adler", ++ "displaydoc", ++ "icu_locid", ++ "icu_locid_transform_data", ++ "icu_provider", ++ "tinystr", ++ "zerovec", + ] + + [[package]] +-name = "mio" +-version = "0.8.11" ++name = "icu_locid_transform_data" ++version = "1.5.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" ++ ++[[package]] ++name = "icu_normalizer" ++version = "1.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" ++checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" + dependencies = [ +- "libc", +- "wasi", +- "windows-sys", ++ "displaydoc", ++ "icu_collections", ++ "icu_normalizer_data", ++ "icu_properties", ++ "icu_provider", ++ "smallvec", ++ "utf16_iter", ++ "utf8_iter", ++ "write16", ++ "zerovec", + ] + + [[package]] +-name = "multimap" +-version = "0.8.3" ++name = "icu_normalizer_data" ++version = "1.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" ++checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" + + [[package]] +-name = "netlink-packet-core" +-version = "0.7.0" ++name = "icu_properties" ++version = "1.5.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "72724faf704479d67b388da142b186f916188505e7e0b26719019c525882eda4" ++checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" + dependencies = [ +- "anyhow", +- "byteorder", +- "netlink-packet-utils", ++ "displaydoc", ++ "icu_collections", ++ "icu_locid_transform", ++ "icu_properties_data", ++ "icu_provider", ++ "tinystr", ++ "zerovec", + ] + + [[package]] +-name = "netlink-packet-route" +-version = "0.19.0" ++name = "icu_properties_data" ++version = "1.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "74c171cd77b4ee8c7708da746ce392440cb7bcf618d122ec9ecc607b12938bf4" +-dependencies = [ +- "anyhow", +- "byteorder", +- "libc", +- "log", +- "netlink-packet-core", +- "netlink-packet-utils", +-] ++checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" + + [[package]] +-name = "netlink-packet-utils" +-version = "0.5.2" ++name = "icu_provider" ++version = "1.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "0ede8a08c71ad5a95cdd0e4e52facd37190977039a4704eb82a283f713747d34" ++checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" + dependencies = [ +- "anyhow", +- "byteorder", +- "paste", +- "thiserror", ++ "displaydoc", ++ "icu_locid", ++ "icu_provider_macros", ++ "stable_deref_trait", ++ "tinystr", ++ "writeable", ++ "yoke", ++ "zerofrom", ++ "zerovec", + ] + + [[package]] +-name = "netlink-proto" +-version = "0.11.3" ++name = "icu_provider_macros" ++version = "1.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "86b33524dc0968bfad349684447bfce6db937a9ac3332a1fe60c0c5a5ce63f21" ++checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" + dependencies = [ +- "bytes 1.4.0", +- "futures", +- "log", +- "netlink-packet-core", +- "netlink-sys 0.8.5", +- "thiserror", +- "tokio", ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", + ] + + [[package]] +-name = "netlink-sys" +-version = "0.7.0" ++name = "idea" ++version = "0.5.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "f48ea34ea0678719815c3753155067212f853ad2d8ef4a49167bae7f7c254188" ++checksum = "075557004419d7f2031b8bb7f44bb43e55a83ca7b63076a8fb8fe75753836477" + dependencies = [ +- "futures", +- "libc", +- "log", +- "tokio", ++ "cipher", + ] + + [[package]] +-name = "netlink-sys" +-version = "0.8.5" ++name = "ident_case" ++version = "1.0.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "6471bf08e7ac0135876a9581bf3217ef0333c191c128d34878079f42ee150411" +-dependencies = [ +- "bytes 1.4.0", +- "futures", +- "libc", +- "log", +- "tokio", +-] ++checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + + [[package]] +-name = "nix" +-version = "0.22.3" ++name = "idna" ++version = "1.0.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "e4916f159ed8e5de0082076562152a76b7a1f64a01fd9d1e0fea002c37624faf" ++checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" + dependencies = [ +- "bitflags 1.3.2", +- "cc", +- "cfg-if 1.0.0", +- "libc", +- "memoffset 0.6.5", ++ "idna_adapter", ++ "smallvec", ++ "utf8_iter", + ] + + [[package]] +-name = "nix" +-version = "0.23.2" ++name = "idna_adapter" ++version = "1.2.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "8f3790c00a0150112de0f4cd161e3d7fc4b2d8a5542ffc35f099a2562aecb35c" ++checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" + dependencies = [ +- "bitflags 1.3.2", +- "cc", +- "cfg-if 1.0.0", +- "libc", +- "memoffset 0.6.5", ++ "icu_normalizer", ++ "icu_properties", + ] + + [[package]] +-name = "nix" +-version = "0.24.3" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" ++name = "image-rs" ++version = "0.1.0" ++source = "git+https://github.com/confidential-containers/guest-components?tag=v0.10.0#075b9a9ee77227d9d92b6f3649ef69de5e72d204" + dependencies = [ +- "bitflags 1.3.2", ++ "anyhow", ++ "async-compression", ++ "async-trait", ++ "base64 0.22.1", + "cfg-if 1.0.0", +- "libc", +- "memoffset 0.6.5", ++ "filetime", ++ "flate2", ++ "futures", ++ "futures-util", ++ "hex", ++ "kbc", ++ "krata-tokio-tar", ++ "lazy_static", ++ "log", ++ "loopdev", ++ "nix 0.29.0", ++ "oci-client", ++ "oci-spec 0.6.7", ++ "ocicrypt-rs", ++ "protobuf 3.5.1", ++ "reqwest", ++ "sequoia-openpgp", ++ "serde", ++ "serde_json", ++ "serde_yaml", ++ "sha2", ++ "sigstore", ++ "strum", ++ "strum_macros", ++ "tokio", ++ "tokio-util", ++ "ttrpc 0.8.2", ++ "ttrpc-codegen 0.4.2", ++ "url", ++ "walkdir", ++ "xattr", ++ "zstd", + ] + + [[package]] +-name = "nix" +-version = "0.25.1" ++name = "indexmap" ++version = "1.9.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4" ++checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" + dependencies = [ + "autocfg", +- "bitflags 1.3.2", +- "cfg-if 1.0.0", +- "libc", +- "memoffset 0.6.5", +- "pin-utils", ++ "hashbrown 0.12.3", + ] + + [[package]] +-name = "nix" +-version = "0.27.1" ++name = "indexmap" ++version = "2.7.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053" ++checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" + dependencies = [ +- "bitflags 2.6.0", +- "cfg-if 1.0.0", +- "libc", ++ "equivalent", ++ "hashbrown 0.15.2", + ] + + [[package]] +-name = "nix" +-version = "0.28.0" ++name = "inout" ++version = "0.1.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4" ++checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" ++dependencies = [ ++ "block-padding", ++ "generic-array 0.14.7", ++] ++ ++[[package]] ++name = "instant" ++version = "0.1.12" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" + dependencies = [ +- "bitflags 2.6.0", + "cfg-if 1.0.0", +- "cfg_aliases", +- "libc", +- "memoffset 0.9.1", + ] + + [[package]] +-name = "num_cpus" +-version = "1.15.0" ++name = "io-lifetimes" ++version = "1.0.11" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" ++checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" + dependencies = [ +- "hermit-abi 0.2.6", ++ "hermit-abi 0.3.1", + "libc", ++ "windows-sys 0.48.0", + ] + + [[package]] +-name = "num_threads" +-version = "0.1.6" ++name = "iovec" ++version = "0.1.4" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44" ++checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e" + dependencies = [ + "libc", + ] + + [[package]] +-name = "object" +-version = "0.32.2" ++name = "ipnet" ++version = "2.10.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" ++checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708" ++ ++[[package]] ++name = "ipnetwork" ++version = "0.20.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "bf466541e9d546596ee94f9f69590f89473455f88372423e0008fc1a7daf100e" + dependencies = [ +- "memchr", ++ "serde", + ] + + [[package]] +-name = "oci-spec" +-version = "0.5.8" ++name = "itertools" ++version = "0.10.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "98135224dd4faeb24c05a2fac911ed53ea6b09ecb09d7cada1cb79963ab2ee34" ++checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" + dependencies = [ +- "derive_builder", +- "getset", +- "serde", +- "serde_json", +- "thiserror", ++ "either", + ] + + [[package]] +-name = "once_cell" +-version = "1.18.0" ++name = "itertools" ++version = "0.11.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" ++checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" ++dependencies = [ ++ "either", ++] + + [[package]] +-name = "os_pipe" +-version = "1.1.4" ++name = "itoa" ++version = "1.0.6" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "0ae859aa07428ca9a929b936690f8b12dc5f11dd8c6992a18ca93919f28bc177" ++checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" ++ ++[[package]] ++name = "jni" ++version = "0.21.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" + dependencies = [ +- "libc", +- "windows-sys", ++ "cesu8", ++ "cfg-if 1.0.0", ++ "combine", ++ "jni-sys", ++ "log", ++ "thiserror 1.0.65", ++ "walkdir", ++ "windows-sys 0.45.0", + ] + + [[package]] +-name = "page_size" +-version = "0.4.2" ++name = "jni-sys" ++version = "0.3.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "eebde548fbbf1ea81a99b128872779c437752fb99f217c45245e1a61dcd9edcd" ++checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" ++ ++[[package]] ++name = "jobserver" ++version = "0.1.32" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0" + dependencies = [ + "libc", +- "winapi", + ] + + [[package]] +-name = "parking_lot" +-version = "0.12.1" ++name = "js-sys" ++version = "0.3.72" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" ++checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" + dependencies = [ +- "lock_api", +- "parking_lot_core", ++ "wasm-bindgen", + ] + + [[package]] +-name = "parking_lot_core" +-version = "0.9.8" ++name = "json-number" ++version = "0.4.9" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" ++checksum = "66994b2bac615128d07a1e4527ad29e98b004dd1a1769e7b8fbc1173ccf43006" + dependencies = [ +- "cfg-if 1.0.0", +- "libc", +- "redox_syscall", ++ "lexical", ++ "ryu-js", ++ "serde", + "smallvec", +- "windows-targets", + ] + + [[package]] +-name = "paste" +-version = "1.0.12" ++name = "json-syntax" ++version = "0.12.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "9f746c4065a8fa3fe23974dd82f15431cc8d40779821001404d10d2e79ca7d79" ++checksum = "044a68aba3f96d712f492b72be25e10f96201eaaca3207a7d6e68d6d5105fda9" ++dependencies = [ ++ "decoded-char", ++ "hashbrown 0.12.3", ++ "indexmap 1.9.3", ++ "json-number", ++ "locspan", ++ "locspan-derive", ++ "ryu-js", ++ "serde", ++ "smallstr", ++ "smallvec", ++ "utf8-decode", ++] + + [[package]] +-name = "path-absolutize" +-version = "3.1.0" ++name = "jwt" ++version = "0.16.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "43eb3595c63a214e1b37b44f44b0a84900ef7ae0b4c5efce59e123d246d7a0de" ++checksum = "6204285f77fe7d9784db3fdc449ecce1a0114927a51d5a41c4c7a292011c015f" + dependencies = [ +- "path-dedot", ++ "base64 0.13.1", ++ "crypto-common", ++ "digest", ++ "hmac", ++ "serde", ++ "serde_json", ++ "sha2", + ] + + [[package]] +-name = "path-dedot" +-version = "3.1.0" ++name = "jwt-simple" ++version = "0.12.11" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "9d55e486337acb9973cdea3ec5638c1b3bcb22e573b2b7b41969e0c744d5a15e" ++checksum = "b00e03c08ce71da10a3ad9267b963c03fc4234a56713d87648547b3fdda872a6" + dependencies = [ +- "once_cell", ++ "anyhow", ++ "binstring", ++ "blake2b_simd", ++ "coarsetime", ++ "ct-codecs", ++ "ed25519-compact", ++ "hmac-sha1-compact", ++ "hmac-sha256", ++ "hmac-sha512", ++ "k256", ++ "p256", ++ "p384", ++ "rand", ++ "serde", ++ "serde_json", ++ "superboring", ++ "thiserror 2.0.9", ++ "zeroize", + ] + + [[package]] +-name = "percent-encoding" +-version = "2.3.0" ++name = "k256" ++version = "0.13.4" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" ++checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "ecdsa", ++ "elliptic-curve", ++ "once_cell", ++ "sha2", ++ "signature", ++] + + [[package]] +-name = "petgraph" +-version = "0.5.1" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "467d164a6de56270bd7c4d070df81d07beace25012d5103ced4e9ff08d6afdb7" ++name = "kbc" ++version = "0.1.0" ++source = "git+https://github.com/confidential-containers/guest-components?tag=v0.10.0#075b9a9ee77227d9d92b6f3649ef69de5e72d204" + dependencies = [ +- "fixedbitset 0.2.0", +- "indexmap", ++ "anyhow", ++ "async-trait", ++ "base64 0.22.1", ++ "crypto", ++ "kbs_protocol", ++ "log", ++ "resource_uri", ++ "serde", ++ "serde_json", ++ "strum", ++ "url", ++ "zeroize", + ] + + [[package]] +-name = "petgraph" +-version = "0.6.3" ++name = "kbs-types" ++version = "0.7.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "4dd7d28ee937e54fe3080c91faa1c3a46c06de6252988a7f4592ba2310ef22a4" ++checksum = "9b6441ed73b0faa50707d4de41c6b45c76654b661b96aaf7b26a41331eedc0a5" + dependencies = [ +- "fixedbitset 0.4.2", +- "indexmap", ++ "serde", ++ "serde_json", + ] + + [[package]] +-name = "pin-project" +-version = "1.1.0" ++name = "kbs_protocol" ++version = "0.1.0" ++source = "git+https://github.com/confidential-containers/guest-components?tag=v0.10.0#075b9a9ee77227d9d92b6f3649ef69de5e72d204" ++dependencies = [ ++ "anyhow", ++ "async-trait", ++ "attester", ++ "base64 0.22.1", ++ "crypto", ++ "jwt-simple", ++ "kbs-types", ++ "log", ++ "reqwest", ++ "resource_uri", ++ "serde", ++ "serde_json", ++ "sha2", ++ "thiserror 1.0.65", ++ "tokio", ++ "url", ++ "zeroize", ++] ++ ++[[package]] ++name = "krata-tokio-tar" ++version = "0.4.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "c95a7476719eab1e366eaf73d0260af3021184f18177925b07f54b30089ceead" ++checksum = "e8bd5fee9b96acb5fc36b401896d601e6fdcce52b0e651ce24a3b21fb524e79f" + dependencies = [ +- "pin-project-internal", ++ "filetime", ++ "futures-core", ++ "libc", ++ "portable-atomic", ++ "redox_syscall 0.3.5", ++ "tokio", ++ "tokio-stream", ++ "xattr", + ] + + [[package]] +-name = "pin-project-internal" +-version = "1.1.0" ++name = "lalrpop" ++version = "0.20.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "39407670928234ebc5e6e580247dd567ad73a3578460c5990f9503df207e8f07" ++checksum = "55cb077ad656299f160924eb2912aa147d7339ea7d69e1b5517326fdcec3c1ca" + dependencies = [ +- "proc-macro2", +- "quote", +- "syn 2.0.18", ++ "ascii-canvas", ++ "bit-set", ++ "ena", ++ "itertools 0.11.0", ++ "lalrpop-util", ++ "petgraph 0.6.3", ++ "regex", ++ "regex-syntax", ++ "string_cache", ++ "term", ++ "tiny-keccak", ++ "unicode-xid", ++ "walkdir", + ] + + [[package]] +-name = "pin-project-lite" +-version = "0.2.9" ++name = "lalrpop-util" ++version = "0.20.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" ++checksum = "507460a910eb7b32ee961886ff48539633b788a36b65692b95f225b844c82553" ++dependencies = [ ++ "regex-automata", ++] + + [[package]] +-name = "pin-utils" +-version = "0.1.0" ++name = "lazy_static" ++version = "1.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" ++checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" ++dependencies = [ ++ "spin", ++] + + [[package]] +-name = "ppv-lite86" +-version = "0.2.17" ++name = "lazycell" ++version = "1.3.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" ++checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" + + [[package]] +-name = "prctl" +-version = "1.0.0" ++name = "lexical" ++version = "7.0.4" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "059a34f111a9dee2ce1ac2826a68b24601c4298cfeb1a587c3cb493d5ab46f52" ++checksum = "70ed980ff02623721dc334b9105150b66d0e1f246a92ab5a2eca0335d54c48f6" + dependencies = [ +- "libc", +- "nix 0.28.0", ++ "lexical-core", + ] + + [[package]] +-name = "prettyplease" +-version = "0.1.25" ++name = "lexical-core" ++version = "1.0.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "6c8646e95016a7a6c4adea95bafa8a16baab64b583356217f2c85db4a39d9a86" ++checksum = "b765c31809609075565a70b4b71402281283aeda7ecaf4818ac14a7b2ade8958" + dependencies = [ +- "proc-macro2", +- "syn 1.0.109", ++ "lexical-parse-float", ++ "lexical-parse-integer", ++ "lexical-util", ++ "lexical-write-float", ++ "lexical-write-integer", + ] + + [[package]] +-name = "proc-macro-error" +-version = "1.0.4" ++name = "lexical-parse-float" ++version = "1.0.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" ++checksum = "de6f9cb01fb0b08060209a057c048fcbab8717b4c1ecd2eac66ebfe39a65b0f2" + dependencies = [ +- "proc-macro-error-attr", +- "proc-macro2", +- "quote", +- "syn 1.0.109", +- "version_check", ++ "lexical-parse-integer", ++ "lexical-util", ++ "static_assertions", + ] + + [[package]] +-name = "proc-macro-error-attr" +-version = "1.0.4" ++name = "lexical-parse-integer" ++version = "1.0.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" ++checksum = "72207aae22fc0a121ba7b6d479e42cbfea549af1479c3f3a4f12c70dd66df12e" + dependencies = [ +- "proc-macro2", +- "quote", +- "version_check", ++ "lexical-util", ++ "static_assertions", + ] + + [[package]] +-name = "proc-macro2" +-version = "1.0.59" ++name = "lexical-util" ++version = "1.0.6" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "6aeca18b86b413c660b781aa319e4e2648a3e6f9eadc9b47e9038e6fe9f3451b" ++checksum = "5a82e24bf537fd24c177ffbbdc6ebcc8d54732c35b50a3f28cc3f4e4c949a0b3" + dependencies = [ +- "unicode-ident", ++ "static_assertions", + ] + + [[package]] +-name = "prost" +-version = "0.8.0" ++name = "lexical-write-float" ++version = "1.0.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "de5e2533f59d08fcf364fd374ebda0692a70bd6d7e66ef97f306f45c6c5d8020" ++checksum = "c5afc668a27f460fb45a81a757b6bf2f43c2d7e30cb5a2dcd3abf294c78d62bd" + dependencies = [ +- "bytes 1.4.0", +- "prost-derive 0.8.0", ++ "lexical-util", ++ "lexical-write-integer", ++ "static_assertions", + ] + + [[package]] +-name = "prost" +-version = "0.10.4" ++name = "lexical-write-integer" ++version = "1.0.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "71adf41db68aa0daaefc69bb30bcd68ded9b9abaad5d1fbb6304c4fb390e083e" ++checksum = "629ddff1a914a836fb245616a7888b62903aae58fa771e1d83943035efa0f978" + dependencies = [ +- "bytes 1.4.0", +- "prost-derive 0.10.1", ++ "lexical-util", ++ "static_assertions", + ] + + [[package]] +-name = "prost-build" +-version = "0.8.0" ++name = "libc" ++version = "0.2.161" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "355f634b43cdd80724ee7848f95770e7e70eefa6dcf14fea676216573b8fd603" +-dependencies = [ +- "bytes 1.4.0", +- "heck 0.3.3", +- "itertools", +- "log", +- "multimap", +- "petgraph 0.5.1", +- "prost 0.8.0", +- "prost-types 0.8.0", +- "tempfile", +- "which", +-] ++checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1" + + [[package]] +-name = "prost-build" +-version = "0.10.4" ++name = "libloading" ++version = "0.8.6" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "8ae5a4388762d5815a9fc0dea33c56b021cdc8dde0c55e0c9ca57197254b0cab" ++checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" + dependencies = [ +- "bytes 1.4.0", + "cfg-if 1.0.0", +- "cmake", +- "heck 0.4.1", +- "itertools", +- "lazy_static", +- "log", +- "multimap", +- "petgraph 0.6.3", +- "prost 0.10.4", +- "prost-types 0.10.1", +- "regex", +- "tempfile", +- "which", ++ "windows-targets 0.52.6", + ] + + [[package]] +-name = "prost-derive" +-version = "0.8.0" ++name = "libm" ++version = "0.2.11" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "600d2f334aa05acb02a755e217ef1ab6dea4d51b58b7846588b747edec04efba" +-dependencies = [ +- "anyhow", +- "itertools", +- "proc-macro2", +- "quote", +- "syn 1.0.109", +-] ++checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" + + [[package]] +-name = "prost-derive" +-version = "0.10.1" ++name = "libredox" ++version = "0.1.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "7b670f45da57fb8542ebdbb6105a925fe571b67f9e7ed9f47a06a84e72b4e7cc" ++checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" + dependencies = [ +- "anyhow", +- "itertools", +- "proc-macro2", +- "quote", +- "syn 1.0.109", ++ "bitflags 2.6.0", ++ "libc", ++ "redox_syscall 0.5.8", + ] + + [[package]] +-name = "prost-types" +-version = "0.8.0" ++name = "linux-raw-sys" ++version = "0.3.8" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "603bbd6394701d13f3f25aada59c7de9d35a6a5887cfc156181234a44002771b" +-dependencies = [ +- "bytes 1.4.0", +- "prost 0.8.0", +-] ++checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" + + [[package]] +-name = "prost-types" +-version = "0.10.1" ++name = "linux-raw-sys" ++version = "0.4.14" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "2d0a014229361011dc8e69c8a1ec6c2e8d0f2af7c91e3ea3f5b2170298461e68" +-dependencies = [ +- "bytes 1.4.0", +- "prost 0.10.4", +-] ++checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" + + [[package]] +-name = "protobuf" +-version = "2.28.0" ++name = "litemap" ++version = "0.7.4" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94" ++checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104" + + [[package]] +-name = "protobuf" +-version = "3.2.0" ++name = "litrs" ++version = "0.4.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "b55bad9126f378a853655831eb7363b7b01b81d19f8cb1218861086ca4a1a61e" +-dependencies = [ +- "once_cell", +- "protobuf-support", +- "thiserror", +-] ++checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5" + + [[package]] +-name = "protobuf-codegen" +-version = "2.28.0" ++name = "lock_api" ++version = "0.4.10" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "033460afb75cf755fcfc16dfaed20b86468082a2ea24e05ac35ab4a099a017d6" ++checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" + dependencies = [ +- "protobuf 2.28.0", ++ "autocfg", ++ "scopeguard", + ] + + [[package]] +-name = "protobuf-codegen" +-version = "3.2.0" ++name = "locspan" ++version = "0.8.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "0dd418ac3c91caa4032d37cb80ff0d44e2ebe637b2fb243b6234bf89cdac4901" +-dependencies = [ +- "anyhow", +- "once_cell", +- "protobuf 3.2.0", +- "protobuf-parse", +- "regex", +- "tempfile", +- "thiserror", +-] ++checksum = "33890449fcfac88e94352092944bf321f55e5deb4e289a6f51c87c55731200a0" + + [[package]] +-name = "protobuf-parse" +-version = "3.2.0" ++name = "locspan-derive" ++version = "0.6.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "9d39b14605eaa1f6a340aec7f320b34064feb26c93aec35d6a9a2272a8ddfa49" ++checksum = "e88991223b049a3d29ca1f60c05639581336a0f3ee4bf8a659dddecc11c4961a" + dependencies = [ +- "anyhow", +- "indexmap", +- "log", +- "protobuf 3.2.0", +- "protobuf-support", +- "tempfile", +- "thiserror", +- "which", ++ "proc-macro-error", ++ "proc-macro2", ++ "quote", ++ "syn 1.0.109", + ] + + [[package]] +-name = "protobuf-support" +-version = "3.2.0" ++name = "log" ++version = "0.4.22" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "a5d4d7b8601c814cfb36bcebb79f0e61e45e1e93640cf778837833bbed05c372" +-dependencies = [ +- "thiserror", +-] ++checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" + + [[package]] +-name = "quote" +-version = "1.0.28" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488" ++name = "loopdev" ++version = "0.5.0" ++source = "git+https://github.com/mdaffin/loopdev?rev=c9f91e8f0326ce8a3364ac911e81eb32328a5f27#c9f91e8f0326ce8a3364ac911e81eb32328a5f27" + dependencies = [ +- "proc-macro2", ++ "bindgen", ++ "errno 0.2.8", ++ "libc", + ] + + [[package]] +-name = "rand" +-version = "0.8.5" ++name = "matchit" ++version = "0.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +-dependencies = [ +- "libc", +- "rand_chacha", +- "rand_core", +-] ++checksum = "73cbba799671b762df5a175adf59ce145165747bb891505c43d09aefbbf38beb" + + [[package]] +-name = "rand_chacha" +-version = "0.3.1" ++name = "md-5" ++version = "0.10.6" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" ++checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" + dependencies = [ +- "ppv-lite86", +- "rand_core", ++ "cfg-if 1.0.0", ++ "digest", + ] + + [[package]] +-name = "rand_core" +-version = "0.6.4" ++name = "memchr" ++version = "2.7.4" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +-dependencies = [ +- "getrandom", +-] ++checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" + + [[package]] +-name = "redox_syscall" +-version = "0.3.5" ++name = "memoffset" ++version = "0.6.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" ++checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" + dependencies = [ +- "bitflags 1.3.2", ++ "autocfg", + ] + + [[package]] +-name = "regex" +-version = "1.8.4" ++name = "memoffset" ++version = "0.7.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "d0ab3ca65655bb1e41f2a8c8cd662eb4fb035e67c3f78da1d61dffe89d07300f" ++checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4" + dependencies = [ +- "aho-corasick", +- "memchr", +- "regex-syntax", ++ "autocfg", + ] + + [[package]] +-name = "regex-syntax" +-version = "0.7.2" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "436b050e76ed2903236f032a59761c1eb99e1b0aead2c257922771dab1fc8c78" +- +-[[package]] +-name = "rtnetlink" +-version = "0.14.1" ++name = "memoffset" ++version = "0.8.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "b684475344d8df1859ddb2d395dd3dac4f8f3422a1aa0725993cb375fc5caba5" ++checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" + dependencies = [ +- "futures", +- "log", +- "netlink-packet-core", +- "netlink-packet-route", +- "netlink-packet-utils", +- "netlink-proto", +- "netlink-sys 0.8.5", +- "nix 0.27.1", +- "thiserror", +- "tokio", ++ "autocfg", + ] + + [[package]] +-name = "runc" +-version = "0.2.0" +-source = "git+https://github.com/kuasar-io/rust-extensions.git#53b4ca86b3461efb22b881b891e41fb45e264c7f" ++name = "memoffset" ++version = "0.9.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" + dependencies = [ +- "async-trait", +- "futures", +- "libc", +- "log", +- "nix 0.25.1", +- "oci-spec", +- "os_pipe", +- "path-absolutize", +- "rand", +- "serde", +- "serde_json", +- "tempfile", +- "thiserror", +- "time", +- "tokio", +- "tokio-pipe", +- "uuid", ++ "autocfg", + ] + + [[package]] +-name = "rustc-demangle" +-version = "0.1.24" ++name = "memsec" ++version = "0.7.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" ++checksum = "c797b9d6bb23aab2fc369c65f871be49214f5c759af65bde26ffaaa2b646b492" + + [[package]] +-name = "rustix" +-version = "0.37.19" ++name = "mime" ++version = "0.3.17" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "acf8729d8542766f1b2cf77eb034d52f40d375bb8b615d0b147089946e16613d" +-dependencies = [ +- "bitflags 1.3.2", +- "errno", +- "io-lifetimes", +- "libc", +- "linux-raw-sys", +- "windows-sys", +-] ++checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" + + [[package]] +-name = "ryu" +-version = "1.0.13" ++name = "minimal-lexical" ++version = "0.2.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" ++checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + + [[package]] +-name = "scopeguard" +-version = "1.1.0" ++name = "miniz_oxide" ++version = "0.7.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" ++checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" ++dependencies = [ ++ "adler", ++] + + [[package]] +-name = "serde" +-version = "1.0.163" ++name = "miniz_oxide" ++version = "0.8.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "2113ab51b87a539ae008b5c6c02dc020ffa39afd2d83cffcb3f4eb2722cebec2" ++checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" + dependencies = [ +- "serde_derive", ++ "adler2", + ] + + [[package]] +-name = "serde_derive" +-version = "1.0.163" ++name = "mio" ++version = "1.0.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "8c805777e3930c8883389c602315a24224bcc738b63905ef87cd1420353ea93e" ++checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" + dependencies = [ +- "proc-macro2", +- "quote", +- "syn 2.0.18", ++ "libc", ++ "wasi", ++ "windows-sys 0.52.0", + ] + + [[package]] +-name = "serde_json" +-version = "1.0.96" ++name = "multimap" ++version = "0.8.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "057d394a50403bcac12672b2b18fb387ab6d289d957dab67dd201875391e52f1" +-dependencies = [ +- "itoa", +- "ryu", +- "serde", +-] ++checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" + + [[package]] +-name = "signal-hook" +-version = "0.3.15" ++name = "native-tls" ++version = "0.2.12" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "732768f1176d21d09e076c23a93123d40bba92d50c4058da34d45c8de8e682b9" ++checksum = "a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466" + dependencies = [ + "libc", +- "signal-hook-registry", ++ "log", ++ "openssl", ++ "openssl-probe", ++ "openssl-sys", ++ "schannel", ++ "security-framework", ++ "security-framework-sys", ++ "tempfile", + ] + + [[package]] +-name = "signal-hook-registry" +-version = "1.4.1" ++name = "ndk-context" ++version = "0.1.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" ++checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" ++ ++[[package]] ++name = "netlink-packet-core" ++version = "0.7.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "72724faf704479d67b388da142b186f916188505e7e0b26719019c525882eda4" + dependencies = [ +- "libc", ++ "anyhow", ++ "byteorder", ++ "netlink-packet-utils", + ] + + [[package]] +-name = "signal-hook-tokio" +-version = "0.3.1" ++name = "netlink-packet-route" ++version = "0.19.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "213241f76fb1e37e27de3b6aa1b068a2c333233b59cca6634f634b80a27ecf1e" ++checksum = "74c171cd77b4ee8c7708da746ce392440cb7bcf618d122ec9ecc607b12938bf4" + dependencies = [ +- "futures-core", ++ "anyhow", ++ "byteorder", + "libc", +- "signal-hook", +- "tokio", ++ "log", ++ "netlink-packet-core", ++ "netlink-packet-utils", + ] + + [[package]] +-name = "slab" +-version = "0.4.8" ++name = "netlink-packet-utils" ++version = "0.5.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d" ++checksum = "0ede8a08c71ad5a95cdd0e4e52facd37190977039a4704eb82a283f713747d34" + dependencies = [ +- "autocfg", ++ "anyhow", ++ "byteorder", ++ "paste", ++ "thiserror 1.0.65", + ] + + [[package]] +-name = "smallvec" +-version = "1.10.0" ++name = "netlink-proto" ++version = "0.11.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" ++checksum = "86b33524dc0968bfad349684447bfce6db937a9ac3332a1fe60c0c5a5ce63f21" ++dependencies = [ ++ "bytes 1.9.0", ++ "futures", ++ "log", ++ "netlink-packet-core", ++ "netlink-sys 0.8.5", ++ "thiserror 1.0.65", ++ "tokio", ++] + + [[package]] +-name = "socket2" +-version = "0.4.9" ++name = "netlink-sys" ++version = "0.7.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" ++checksum = "f48ea34ea0678719815c3753155067212f853ad2d8ef4a49167bae7f7c254188" + dependencies = [ ++ "futures", + "libc", +- "winapi", ++ "log", ++ "tokio", + ] + + [[package]] +-name = "strsim" +-version = "0.10.0" ++name = "netlink-sys" ++version = "0.8.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" ++checksum = "6471bf08e7ac0135876a9581bf3217ef0333c191c128d34878079f42ee150411" ++dependencies = [ ++ "bytes 1.9.0", ++ "futures", ++ "libc", ++ "log", ++ "tokio", ++] + + [[package]] +-name = "syn" +-version = "1.0.109" ++name = "new_debug_unreachable" ++version = "1.0.6" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +-dependencies = [ +- "proc-macro2", +- "quote", +- "unicode-ident", +-] ++checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" + + [[package]] +-name = "syn" +-version = "2.0.18" ++name = "nix" ++version = "0.22.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "32d41677bcbe24c20c52e7c70b0d8db04134c5d1066bf98662e2871ad200ea3e" ++checksum = "e4916f159ed8e5de0082076562152a76b7a1f64a01fd9d1e0fea002c37624faf" + dependencies = [ +- "proc-macro2", +- "quote", +- "unicode-ident", ++ "bitflags 1.3.2", ++ "cc", ++ "cfg-if 1.0.0", ++ "libc", ++ "memoffset 0.6.5", + ] + + [[package]] +-name = "sync_wrapper" +-version = "0.1.2" ++name = "nix" ++version = "0.23.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" ++checksum = "8f3790c00a0150112de0f4cd161e3d7fc4b2d8a5542ffc35f099a2562aecb35c" ++dependencies = [ ++ "bitflags 1.3.2", ++ "cc", ++ "cfg-if 1.0.0", ++ "libc", ++ "memoffset 0.6.5", ++] + + [[package]] +-name = "tempfile" +-version = "3.6.0" ++name = "nix" ++version = "0.24.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "31c0432476357e58790aaa47a8efb0c5138f137343f3b5f23bd36a27e3b0a6d6" ++checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" + dependencies = [ +- "autocfg", ++ "bitflags 1.3.2", + "cfg-if 1.0.0", +- "fastrand", +- "redox_syscall", +- "rustix", +- "windows-sys", ++ "libc", ++ "memoffset 0.6.5", + ] + + [[package]] +-name = "termcolor" +-version = "1.2.0" ++name = "nix" ++version = "0.25.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6" ++checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4" + dependencies = [ +- "winapi-util", ++ "autocfg", ++ "bitflags 1.3.2", ++ "cfg-if 1.0.0", ++ "libc", ++ "memoffset 0.6.5", ++ "pin-utils", + ] + + [[package]] +-name = "thiserror" +-version = "1.0.40" ++name = "nix" ++version = "0.26.4" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac" ++checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" + dependencies = [ +- "thiserror-impl", ++ "bitflags 1.3.2", ++ "cfg-if 1.0.0", ++ "libc", ++ "memoffset 0.7.1", ++ "pin-utils", + ] + + [[package]] +-name = "thiserror-impl" +-version = "1.0.40" ++name = "nix" ++version = "0.27.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f" ++checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053" + dependencies = [ +- "proc-macro2", +- "quote", +- "syn 2.0.18", ++ "bitflags 2.6.0", ++ "cfg-if 1.0.0", ++ "libc", + ] + + [[package]] +-name = "time" +-version = "0.3.7" ++name = "nix" ++version = "0.28.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "004cbc98f30fa233c61a38bc77e96a9106e65c88f2d3bef182ae952027e5753d" ++checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4" + dependencies = [ ++ "bitflags 2.6.0", ++ "cfg-if 1.0.0", ++ "cfg_aliases 0.1.1", + "libc", +- "num_threads", +- "serde", ++ "memoffset 0.9.1", + ] + + [[package]] +-name = "tokio" +-version = "1.28.2" ++name = "nix" ++version = "0.29.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "94d7b1cfd2aa4011f2de74c2c4c63665e27a71006b0a192dcd2710272e73dfa2" ++checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" + dependencies = [ +- "autocfg", +- "bytes 1.4.0", ++ "bitflags 2.6.0", ++ "cfg-if 1.0.0", ++ "cfg_aliases 0.2.1", + "libc", +- "mio", +- "num_cpus", +- "parking_lot", +- "pin-project-lite", +- "signal-hook-registry", +- "socket2", +- "tokio-macros", +- "windows-sys", + ] + + [[package]] +-name = "tokio-io-timeout" +-version = "1.2.0" ++name = "nom" ++version = "7.1.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf" ++checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" + dependencies = [ +- "pin-project-lite", +- "tokio", ++ "memchr", ++ "minimal-lexical", + ] + + [[package]] +-name = "tokio-macros" +-version = "2.1.0" ++name = "num-bigint-dig" ++version = "0.8.4" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" ++checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151" + dependencies = [ +- "proc-macro2", +- "quote", +- "syn 2.0.18", ++ "byteorder", ++ "lazy_static", ++ "libm", ++ "num-integer", ++ "num-iter", ++ "num-traits", ++ "rand", ++ "smallvec", ++ "zeroize", + ] + + [[package]] +-name = "tokio-pipe" +-version = "0.2.12" ++name = "num-integer" ++version = "0.1.46" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "f213a84bffbd61b8fa0ba8a044b4bbe35d471d0b518867181e82bd5c15542784" ++checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" + dependencies = [ +- "libc", +- "tokio", ++ "num-traits", + ] + + [[package]] +-name = "tokio-stream" +-version = "0.1.14" ++name = "num-iter" ++version = "0.1.45" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842" ++checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" + dependencies = [ +- "futures-core", +- "pin-project-lite", +- "tokio", ++ "autocfg", ++ "num-integer", ++ "num-traits", + ] + + [[package]] +-name = "tokio-util" +-version = "0.7.8" ++name = "num-traits" ++version = "0.2.19" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "806fe8c2c87eccc8b3267cbae29ed3ab2d0bd37fca70ab622e46aaa9375ddb7d" ++checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" + dependencies = [ +- "bytes 1.4.0", +- "futures-core", +- "futures-sink", +- "pin-project-lite", +- "tokio", +- "tracing", ++ "autocfg", ++ "libm", + ] + + [[package]] +-name = "tokio-vsock" +-version = "0.3.4" ++name = "objc-sys" ++version = "0.3.5" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "9b33556828911d16e24d8b5d336446b0bf6b4b9bfda52cbdc2fa35b7a2862ebc" ++checksum = "cdb91bdd390c7ce1a8607f35f3ca7151b65afc0ff5ff3b34fa350f7d7c7e4310" ++ ++[[package]] ++name = "objc2" ++version = "0.5.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "46a785d4eeff09c14c487497c162e92766fbb3e4059a71840cecc03d9a50b804" + dependencies = [ +- "bytes 0.4.12", +- "futures", +- "libc", +- "tokio", +- "vsock", ++ "objc-sys", ++ "objc2-encode", + ] + + [[package]] +-name = "tonic" +-version = "0.7.2" ++name = "objc2-encode" ++version = "4.0.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "5be9d60db39854b30b835107500cf0aca0b0d14d6e1c3de124217c23a29c2ddb" ++checksum = "7891e71393cd1f227313c9379a26a584ff3d7e6e7159e988851f0934c993f0f8" ++ ++[[package]] ++name = "objc2-foundation" ++version = "0.2.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8" + dependencies = [ +- "async-stream", +- "async-trait", +- "axum", +- "base64 0.13.1", +- "bytes 1.4.0", +- "futures-core", +- "futures-util", +- "h2", +- "http", +- "http-body", +- "hyper", +- "hyper-timeout", +- "percent-encoding", +- "pin-project", +- "prost 0.10.4", +- "prost-derive 0.10.1", +- "tokio", +- "tokio-stream", +- "tokio-util", +- "tower", +- "tower-layer", +- "tower-service", +- "tracing", +- "tracing-futures", ++ "bitflags 2.6.0", ++ "block2", ++ "libc", ++ "objc2", + ] + + [[package]] +-name = "tonic-build" +-version = "0.7.2" ++name = "object" ++version = "0.32.2" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "d9263bf4c9bfaae7317c1c2faf7f18491d2fe476f70c414b73bf5d445b00ffa1" ++checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" + dependencies = [ +- "prettyplease", +- "proc-macro2", +- "prost-build 0.10.4", +- "quote", +- "syn 1.0.109", ++ "memchr", + ] + + [[package]] +-name = "tower" +-version = "0.4.13" ++name = "oci-client" ++version = "0.12.1" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" ++checksum = "0f5098b86f972ac3484f7c9011bbbbd64aaa7e21d10d2c1a91fefb4ad0ba2ad9" + dependencies = [ +- "futures-core", ++ "bytes 1.9.0", ++ "chrono", + "futures-util", +- "indexmap", +- "pin-project", +- "pin-project-lite", +- "rand", +- "slab", ++ "http 1.2.0", ++ "http-auth", ++ "jwt", ++ "lazy_static", ++ "olpc-cjson", ++ "regex", ++ "reqwest", ++ "serde", ++ "serde_json", ++ "sha2", ++ "thiserror 1.0.65", + "tokio", +- "tokio-util", +- "tower-layer", +- "tower-service", + "tracing", ++ "unicase", + ] + + [[package]] +-name = "tower-http" +-version = "0.3.5" ++name = "oci-distribution" ++version = "0.11.0" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "f873044bf02dd1e8239e9c1293ea39dad76dc594ec16185d0a1bf31d8dc8d858" ++checksum = "b95a2c51531af0cb93761f66094044ca6ea879320bccd35ab747ff3fcab3f422" + dependencies = [ +- "bitflags 1.3.2", +- "bytes 1.4.0", +- "futures-core", ++ "bytes 1.9.0", ++ "chrono", + "futures-util", +- "http", +- "http-body", +- "http-range-header", +- "pin-project-lite", +- "tower", +- "tower-layer", +- "tower-service", ++ "http 1.2.0", ++ "http-auth", ++ "jwt", ++ "lazy_static", ++ "olpc-cjson", ++ "regex", ++ "reqwest", ++ "serde", ++ "serde_json", ++ "sha2", ++ "thiserror 1.0.65", ++ "tokio", ++ "tracing", ++ "unicase", + ] + + [[package]] +-name = "tower-layer" +-version = "0.3.2" +-source = "registry+https://github.com/rust-lang/crates.io-index" ++name = "oci-spec" ++version = "0.5.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "98135224dd4faeb24c05a2fac911ed53ea6b09ecb09d7cada1cb79963ab2ee34" ++dependencies = [ ++ "derive_builder 0.11.2", ++ "getset", ++ "serde", ++ "serde_json", ++ "thiserror 1.0.65", ++] ++ ++[[package]] ++name = "oci-spec" ++version = "0.6.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "bdf88ddc01cc6bccbe1044adb6a29057333f523deadcb4953c011a73158cfa5e" ++dependencies = [ ++ "derive_builder 0.20.2", ++ "getset", ++ "serde", ++ "serde_json", ++ "strum", ++ "strum_macros", ++ "thiserror 1.0.65", ++] ++ ++[[package]] ++name = "ocicrypt-rs" ++version = "0.1.0" ++source = "git+https://github.com/confidential-containers/guest-components?tag=v0.10.0#075b9a9ee77227d9d92b6f3649ef69de5e72d204" ++dependencies = [ ++ "aes", ++ "anyhow", ++ "async-trait", ++ "base64 0.22.1", ++ "base64-serde", ++ "cfg-if 1.0.0", ++ "ctr", ++ "hmac", ++ "kbc", ++ "lazy_static", ++ "openssl", ++ "pin-project-lite", ++ "protobuf 3.5.1", ++ "serde", ++ "serde_json", ++ "sha2", ++ "tokio", ++ "ttrpc 0.8.2", ++] ++ ++[[package]] ++name = "olpc-cjson" ++version = "0.1.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "696183c9b5fe81a7715d074fd632e8bd46f4ccc0231a3ed7fc580a80de5f7083" ++dependencies = [ ++ "serde", ++ "serde_json", ++ "unicode-normalization", ++] ++ ++[[package]] ++name = "once_cell" ++version = "1.20.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" ++ ++[[package]] ++name = "opaque-debug" ++version = "0.3.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" ++ ++[[package]] ++name = "openssl" ++version = "0.10.68" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "6174bc48f102d208783c2c84bf931bb75927a617866870de8a4ea85597f871f5" ++dependencies = [ ++ "bitflags 2.6.0", ++ "cfg-if 1.0.0", ++ "foreign-types", ++ "libc", ++ "once_cell", ++ "openssl-macros", ++ "openssl-sys", ++] ++ ++[[package]] ++name = "openssl-macros" ++version = "0.1.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "openssl-probe" ++version = "0.1.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" ++ ++[[package]] ++name = "openssl-src" ++version = "300.4.1+3.4.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "faa4eac4138c62414b5622d1b31c5c304f34b406b013c079c2bbc652fdd6678c" ++dependencies = [ ++ "cc", ++] ++ ++[[package]] ++name = "openssl-sys" ++version = "0.9.104" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741" ++dependencies = [ ++ "cc", ++ "libc", ++ "openssl-src", ++ "pkg-config", ++ "vcpkg", ++] ++ ++[[package]] ++name = "os_pipe" ++version = "1.1.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0ae859aa07428ca9a929b936690f8b12dc5f11dd8c6992a18ca93919f28bc177" ++dependencies = [ ++ "libc", ++ "windows-sys 0.48.0", ++] ++ ++[[package]] ++name = "p256" ++version = "0.13.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" ++dependencies = [ ++ "ecdsa", ++ "elliptic-curve", ++ "primeorder", ++ "sha2", ++] ++ ++[[package]] ++name = "p384" ++version = "0.13.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "70786f51bcc69f6a4c0360e063a4cac5419ef7c5cd5b3c99ad70f3be5ba79209" ++dependencies = [ ++ "ecdsa", ++ "elliptic-curve", ++ "primeorder", ++ "sha2", ++] ++ ++[[package]] ++name = "p521" ++version = "0.13.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0fc9e2161f1f215afdfce23677034ae137bbd45016a880c2eb3ba8eb95f085b2" ++dependencies = [ ++ "base16ct", ++ "ecdsa", ++ "elliptic-curve", ++ "primeorder", ++ "rand_core", ++ "sha2", ++] ++ ++[[package]] ++name = "page_size" ++version = "0.4.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "eebde548fbbf1ea81a99b128872779c437752fb99f217c45245e1a61dcd9edcd" ++dependencies = [ ++ "libc", ++ "winapi", ++] ++ ++[[package]] ++name = "parking_lot" ++version = "0.12.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" ++dependencies = [ ++ "lock_api", ++ "parking_lot_core", ++] ++ ++[[package]] ++name = "parking_lot_core" ++version = "0.9.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "libc", ++ "redox_syscall 0.3.5", ++ "smallvec", ++ "windows-targets 0.48.0", ++] ++ ++[[package]] ++name = "password-hash" ++version = "0.5.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166" ++dependencies = [ ++ "base64ct", ++ "rand_core", ++ "subtle", ++] ++ ++[[package]] ++name = "paste" ++version = "1.0.12" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9f746c4065a8fa3fe23974dd82f15431cc8d40779821001404d10d2e79ca7d79" ++ ++[[package]] ++name = "path-absolutize" ++version = "3.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "43eb3595c63a214e1b37b44f44b0a84900ef7ae0b4c5efce59e123d246d7a0de" ++dependencies = [ ++ "path-dedot", ++] ++ ++[[package]] ++name = "path-dedot" ++version = "3.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9d55e486337acb9973cdea3ec5638c1b3bcb22e573b2b7b41969e0c744d5a15e" ++dependencies = [ ++ "once_cell", ++] ++ ++[[package]] ++name = "pbkdf2" ++version = "0.12.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" ++dependencies = [ ++ "digest", ++ "hmac", ++] ++ ++[[package]] ++name = "peeking_take_while" ++version = "0.1.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" ++ ++[[package]] ++name = "pem" ++version = "3.0.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae" ++dependencies = [ ++ "base64 0.22.1", ++ "serde", ++] ++ ++[[package]] ++name = "pem-rfc7468" ++version = "0.7.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" ++dependencies = [ ++ "base64ct", ++] ++ ++[[package]] ++name = "percent-encoding" ++version = "2.3.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" ++ ++[[package]] ++name = "petgraph" ++version = "0.5.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "467d164a6de56270bd7c4d070df81d07beace25012d5103ced4e9ff08d6afdb7" ++dependencies = [ ++ "fixedbitset 0.2.0", ++ "indexmap 1.9.3", ++] ++ ++[[package]] ++name = "petgraph" ++version = "0.6.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4dd7d28ee937e54fe3080c91faa1c3a46c06de6252988a7f4592ba2310ef22a4" ++dependencies = [ ++ "fixedbitset 0.4.2", ++ "indexmap 1.9.3", ++] ++ ++[[package]] ++name = "phf_shared" ++version = "0.10.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096" ++dependencies = [ ++ "siphasher", ++] ++ ++[[package]] ++name = "pin-project" ++version = "1.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c95a7476719eab1e366eaf73d0260af3021184f18177925b07f54b30089ceead" ++dependencies = [ ++ "pin-project-internal", ++] ++ ++[[package]] ++name = "pin-project-internal" ++version = "1.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "39407670928234ebc5e6e580247dd567ad73a3578460c5990f9503df207e8f07" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "pin-project-lite" ++version = "0.2.15" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff" ++ ++[[package]] ++name = "pin-utils" ++version = "0.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" ++ ++[[package]] ++name = "pkcs1" ++version = "0.7.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f" ++dependencies = [ ++ "der", ++ "pkcs8", ++ "spki", ++] ++ ++[[package]] ++name = "pkcs5" ++version = "0.7.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e847e2c91a18bfa887dd028ec33f2fe6f25db77db3619024764914affe8b69a6" ++dependencies = [ ++ "aes", ++ "cbc", ++ "der", ++ "pbkdf2", ++ "scrypt", ++ "sha2", ++ "spki", ++] ++ ++[[package]] ++name = "pkcs8" ++version = "0.10.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" ++dependencies = [ ++ "der", ++ "pkcs5", ++ "rand_core", ++ "spki", ++] ++ ++[[package]] ++name = "pkg-config" ++version = "0.3.31" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" ++ ++[[package]] ++name = "poly1305" ++version = "0.8.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8159bd90725d2df49889a078b54f4f79e87f1f8a8444194cdca81d38f5393abf" ++dependencies = [ ++ "cpufeatures", ++ "opaque-debug", ++ "universal-hash", ++] ++ ++[[package]] ++name = "polyval" ++version = "0.6.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9d1fe60d06143b2430aa532c94cfe9e29783047f06c0d7fd359a9a51b729fa25" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "cpufeatures", ++ "opaque-debug", ++ "universal-hash", ++] ++ ++[[package]] ++name = "portable-atomic" ++version = "1.10.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" ++ ++[[package]] ++name = "ppv-lite86" ++version = "0.2.17" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" ++ ++[[package]] ++name = "prctl" ++version = "1.0.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "059a34f111a9dee2ce1ac2826a68b24601c4298cfeb1a587c3cb493d5ab46f52" ++dependencies = [ ++ "libc", ++ "nix 0.29.0", ++] ++ ++[[package]] ++name = "precomputed-hash" ++version = "0.1.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" ++ ++[[package]] ++name = "prettyplease" ++version = "0.1.25" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "6c8646e95016a7a6c4adea95bafa8a16baab64b583356217f2c85db4a39d9a86" ++dependencies = [ ++ "proc-macro2", ++ "syn 1.0.109", ++] ++ ++[[package]] ++name = "primeorder" ++version = "0.13.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" ++dependencies = [ ++ "elliptic-curve", ++] ++ ++[[package]] ++name = "proc-macro-error" ++version = "1.0.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" ++dependencies = [ ++ "proc-macro-error-attr", ++ "proc-macro2", ++ "quote", ++ "syn 1.0.109", ++ "version_check", ++] ++ ++[[package]] ++name = "proc-macro-error-attr" ++version = "1.0.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "version_check", ++] ++ ++[[package]] ++name = "proc-macro2" ++version = "1.0.92" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" ++dependencies = [ ++ "unicode-ident", ++] ++ ++[[package]] ++name = "prost" ++version = "0.8.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "de5e2533f59d08fcf364fd374ebda0692a70bd6d7e66ef97f306f45c6c5d8020" ++dependencies = [ ++ "bytes 1.9.0", ++ "prost-derive 0.8.0", ++] ++ ++[[package]] ++name = "prost" ++version = "0.10.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "71adf41db68aa0daaefc69bb30bcd68ded9b9abaad5d1fbb6304c4fb390e083e" ++dependencies = [ ++ "bytes 1.9.0", ++ "prost-derive 0.10.1", ++] ++ ++[[package]] ++name = "prost-build" ++version = "0.8.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "355f634b43cdd80724ee7848f95770e7e70eefa6dcf14fea676216573b8fd603" ++dependencies = [ ++ "bytes 1.9.0", ++ "heck 0.3.3", ++ "itertools 0.10.5", ++ "log", ++ "multimap", ++ "petgraph 0.5.1", ++ "prost 0.8.0", ++ "prost-types 0.8.0", ++ "tempfile", ++ "which", ++] ++ ++[[package]] ++name = "prost-build" ++version = "0.10.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8ae5a4388762d5815a9fc0dea33c56b021cdc8dde0c55e0c9ca57197254b0cab" ++dependencies = [ ++ "bytes 1.9.0", ++ "cfg-if 1.0.0", ++ "cmake", ++ "heck 0.4.1", ++ "itertools 0.10.5", ++ "lazy_static", ++ "log", ++ "multimap", ++ "petgraph 0.6.3", ++ "prost 0.10.4", ++ "prost-types 0.10.1", ++ "regex", ++ "tempfile", ++ "which", ++] ++ ++[[package]] ++name = "prost-derive" ++version = "0.8.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "600d2f334aa05acb02a755e217ef1ab6dea4d51b58b7846588b747edec04efba" ++dependencies = [ ++ "anyhow", ++ "itertools 0.10.5", ++ "proc-macro2", ++ "quote", ++ "syn 1.0.109", ++] ++ ++[[package]] ++name = "prost-derive" ++version = "0.10.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7b670f45da57fb8542ebdbb6105a925fe571b67f9e7ed9f47a06a84e72b4e7cc" ++dependencies = [ ++ "anyhow", ++ "itertools 0.10.5", ++ "proc-macro2", ++ "quote", ++ "syn 1.0.109", ++] ++ ++[[package]] ++name = "prost-types" ++version = "0.8.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "603bbd6394701d13f3f25aada59c7de9d35a6a5887cfc156181234a44002771b" ++dependencies = [ ++ "bytes 1.9.0", ++ "prost 0.8.0", ++] ++ ++[[package]] ++name = "prost-types" ++version = "0.10.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2d0a014229361011dc8e69c8a1ec6c2e8d0f2af7c91e3ea3f5b2170298461e68" ++dependencies = [ ++ "bytes 1.9.0", ++ "prost 0.10.4", ++] ++ ++[[package]] ++name = "protobuf" ++version = "2.28.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94" ++ ++[[package]] ++name = "protobuf" ++version = "3.5.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0bcc343da15609eaecd65f8aa76df8dc4209d325131d8219358c0aaaebab0bf6" ++dependencies = [ ++ "once_cell", ++ "protobuf-support", ++ "thiserror 1.0.65", ++] ++ ++[[package]] ++name = "protobuf-codegen" ++version = "2.28.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "033460afb75cf755fcfc16dfaed20b86468082a2ea24e05ac35ab4a099a017d6" ++dependencies = [ ++ "protobuf 2.28.0", ++] ++ ++[[package]] ++name = "protobuf-codegen" ++version = "3.5.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c4d0cde5642ea4df842b13eb9f59ea6fafa26dcb43e3e1ee49120e9757556189" ++dependencies = [ ++ "anyhow", ++ "once_cell", ++ "protobuf 3.5.1", ++ "protobuf-parse", ++ "regex", ++ "tempfile", ++ "thiserror 1.0.65", ++] ++ ++[[package]] ++name = "protobuf-parse" ++version = "3.5.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1b0e9b447d099ae2c4993c0cbb03c7a9d6c937b17f2d56cfc0b1550e6fcfdb76" ++dependencies = [ ++ "anyhow", ++ "indexmap 2.7.0", ++ "log", ++ "protobuf 3.5.1", ++ "protobuf-support", ++ "tempfile", ++ "thiserror 1.0.65", ++ "which", ++] ++ ++[[package]] ++name = "protobuf-support" ++version = "3.5.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f0766e3675a627c327e4b3964582594b0e8741305d628a98a5de75a1d15f99b9" ++dependencies = [ ++ "thiserror 1.0.65", ++] ++ ++[[package]] ++name = "psl-types" ++version = "2.0.11" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "33cb294fe86a74cbcf50d4445b37da762029549ebeea341421c7c70370f86cac" ++ ++[[package]] ++name = "publicsuffix" ++version = "2.3.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "6f42ea446cab60335f76979ec15e12619a2165b5ae2c12166bef27d283a9fadf" ++dependencies = [ ++ "idna", ++ "psl-types", ++] ++ ++[[package]] ++name = "quote" ++version = "1.0.37" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" ++dependencies = [ ++ "proc-macro2", ++] ++ ++[[package]] ++name = "rand" ++version = "0.8.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" ++dependencies = [ ++ "libc", ++ "rand_chacha", ++ "rand_core", ++] ++ ++[[package]] ++name = "rand_chacha" ++version = "0.3.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" ++dependencies = [ ++ "ppv-lite86", ++ "rand_core", ++] ++ ++[[package]] ++name = "rand_core" ++version = "0.6.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" ++dependencies = [ ++ "getrandom", ++] ++ ++[[package]] ++name = "redox_syscall" ++version = "0.3.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" ++dependencies = [ ++ "bitflags 1.3.2", ++] ++ ++[[package]] ++name = "redox_syscall" ++version = "0.5.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834" ++dependencies = [ ++ "bitflags 2.6.0", ++] ++ ++[[package]] ++name = "redox_users" ++version = "0.4.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" ++dependencies = [ ++ "getrandom", ++ "libredox", ++ "thiserror 1.0.65", ++] ++ ++[[package]] ++name = "regex" ++version = "1.10.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619" ++dependencies = [ ++ "aho-corasick", ++ "memchr", ++ "regex-automata", ++ "regex-syntax", ++] ++ ++[[package]] ++name = "regex-automata" ++version = "0.4.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3" ++dependencies = [ ++ "aho-corasick", ++ "memchr", ++ "regex-syntax", ++] ++ ++[[package]] ++name = "regex-syntax" ++version = "0.8.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" ++ ++[[package]] ++name = "reqwest" ++version = "0.12.9" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a77c62af46e79de0a562e1a9849205ffcb7fc1238876e9bd743357570e04046f" ++dependencies = [ ++ "base64 0.22.1", ++ "bytes 1.9.0", ++ "cookie", ++ "cookie_store", ++ "futures-core", ++ "futures-util", ++ "http 1.2.0", ++ "http-body 1.0.1", ++ "http-body-util", ++ "hyper 1.5.2", ++ "hyper-tls", ++ "hyper-util", ++ "ipnet", ++ "js-sys", ++ "log", ++ "mime", ++ "native-tls", ++ "once_cell", ++ "percent-encoding", ++ "pin-project-lite", ++ "rustls-pemfile", ++ "serde", ++ "serde_json", ++ "serde_urlencoded", ++ "sync_wrapper 1.0.2", ++ "tokio", ++ "tokio-native-tls", ++ "tokio-util", ++ "tower-service", ++ "url", ++ "wasm-bindgen", ++ "wasm-bindgen-futures", ++ "wasm-streams", ++ "web-sys", ++ "windows-registry", ++] ++ ++[[package]] ++name = "resource_uri" ++version = "0.1.0" ++source = "git+https://github.com/confidential-containers/guest-components?tag=v0.10.0#075b9a9ee77227d9d92b6f3649ef69de5e72d204" ++dependencies = [ ++ "anyhow", ++ "serde", ++ "serde_json", ++ "url", ++] ++ ++[[package]] ++name = "rfc6979" ++version = "0.4.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" ++dependencies = [ ++ "hmac", ++ "subtle", ++] ++ ++[[package]] ++name = "ring" ++version = "0.17.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" ++dependencies = [ ++ "cc", ++ "cfg-if 1.0.0", ++ "getrandom", ++ "libc", ++ "spin", ++ "untrusted", ++ "windows-sys 0.52.0", ++] ++ ++[[package]] ++name = "ripemd" ++version = "0.1.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f" ++dependencies = [ ++ "digest", ++] ++ ++[[package]] ++name = "rsa" ++version = "0.9.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "47c75d7c5c6b673e58bf54d8544a9f432e3a925b0e80f7cd3602ab5c50c55519" ++dependencies = [ ++ "const-oid", ++ "digest", ++ "num-bigint-dig", ++ "num-integer", ++ "num-traits", ++ "pkcs1", ++ "pkcs8", ++ "rand_core", ++ "sha2", ++ "signature", ++ "spki", ++ "subtle", ++ "zeroize", ++] ++ ++[[package]] ++name = "rtnetlink" ++version = "0.14.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b684475344d8df1859ddb2d395dd3dac4f8f3422a1aa0725993cb375fc5caba5" ++dependencies = [ ++ "futures", ++ "log", ++ "netlink-packet-core", ++ "netlink-packet-route", ++ "netlink-packet-utils", ++ "netlink-proto", ++ "netlink-sys 0.8.5", ++ "nix 0.27.1", ++ "thiserror 1.0.65", ++ "tokio", ++] ++ ++[[package]] ++name = "runc" ++version = "0.2.0" ++source = "git+https://github.com/kuasar-io/rust-extensions.git#53b4ca86b3461efb22b881b891e41fb45e264c7f" ++dependencies = [ ++ "async-trait", ++ "futures", ++ "libc", ++ "log", ++ "nix 0.25.1", ++ "oci-spec 0.5.8", ++ "os_pipe", ++ "path-absolutize", ++ "rand", ++ "serde", ++ "serde_json", ++ "tempfile", ++ "thiserror 1.0.65", ++ "time", ++ "tokio", ++ "tokio-pipe", ++ "uuid", ++] ++ ++[[package]] ++name = "rustc-demangle" ++version = "0.1.24" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" ++ ++[[package]] ++name = "rustc-hash" ++version = "1.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" ++ ++[[package]] ++name = "rustc_version" ++version = "0.4.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" ++dependencies = [ ++ "semver", ++] ++ ++[[package]] ++name = "rustix" ++version = "0.37.19" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "acf8729d8542766f1b2cf77eb034d52f40d375bb8b615d0b147089946e16613d" ++dependencies = [ ++ "bitflags 1.3.2", ++ "errno 0.3.10", ++ "io-lifetimes", ++ "libc", ++ "linux-raw-sys 0.3.8", ++ "windows-sys 0.48.0", ++] ++ ++[[package]] ++name = "rustix" ++version = "0.38.42" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f93dc38ecbab2eb790ff964bb77fa94faf256fd3e73285fd7ba0903b76bedb85" ++dependencies = [ ++ "bitflags 2.6.0", ++ "errno 0.3.10", ++ "libc", ++ "linux-raw-sys 0.4.14", ++ "windows-sys 0.59.0", ++] ++ ++[[package]] ++name = "rustls-pemfile" ++version = "2.2.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" ++dependencies = [ ++ "rustls-pki-types", ++] ++ ++[[package]] ++name = "rustls-pki-types" ++version = "1.10.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d2bf47e6ff922db3825eb750c4e2ff784c6ff8fb9e13046ef6a1d1c5401b0b37" ++ ++[[package]] ++name = "rustls-webpki" ++version = "0.102.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9" ++dependencies = [ ++ "ring", ++ "rustls-pki-types", ++ "untrusted", ++] ++ ++[[package]] ++name = "rustversion" ++version = "1.0.18" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248" ++ ++[[package]] ++name = "ryu" ++version = "1.0.13" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" ++ ++[[package]] ++name = "ryu-js" ++version = "0.2.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "6518fc26bced4d53678a22d6e423e9d8716377def84545fe328236e3af070e7f" ++ ++[[package]] ++name = "salsa20" ++version = "0.10.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "97a22f5af31f73a954c10289c93e8a50cc23d971e80ee446f1f6f7137a088213" ++dependencies = [ ++ "cipher", ++] ++ ++[[package]] ++name = "same-file" ++version = "1.0.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" ++dependencies = [ ++ "winapi-util", ++] ++ ++[[package]] ++name = "schannel" ++version = "0.1.27" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d" ++dependencies = [ ++ "windows-sys 0.59.0", ++] ++ ++[[package]] ++name = "scopeguard" ++version = "1.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" ++ ++[[package]] ++name = "scrypt" ++version = "0.11.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0516a385866c09368f0b5bcd1caff3366aace790fcd46e2bb032697bb172fd1f" ++dependencies = [ ++ "password-hash", ++ "pbkdf2", ++ "salsa20", ++ "sha2", ++] ++ ++[[package]] ++name = "sec1" ++version = "0.7.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" ++dependencies = [ ++ "base16ct", ++ "der", ++ "generic-array 0.14.7", ++ "pkcs8", ++ "subtle", ++ "zeroize", ++] ++ ++[[package]] ++name = "security-framework" ++version = "2.11.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" ++dependencies = [ ++ "bitflags 2.6.0", ++ "core-foundation 0.9.4", ++ "core-foundation-sys", ++ "libc", ++ "security-framework-sys", ++] ++ ++[[package]] ++name = "security-framework-sys" ++version = "2.13.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1863fd3768cd83c56a7f60faa4dc0d403f1b6df0a38c3c25f44b7894e45370d5" ++dependencies = [ ++ "core-foundation-sys", ++ "libc", ++] ++ ++[[package]] ++name = "semver" ++version = "1.0.24" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "3cb6eb87a131f756572d7fb904f6e7b68633f09cca868c5df1c4b8d1a694bbba" ++ ++[[package]] ++name = "sequoia-openpgp" ++version = "1.22.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e858e4e9e48ff079cede92e1b45c942a5466ce9a4e3cc0c2a7e66586a718ef59" ++dependencies = [ ++ "aes", ++ "aes-gcm", ++ "anyhow", ++ "base64 0.22.1", ++ "block-padding", ++ "blowfish", ++ "buffered-reader", ++ "bzip2", ++ "camellia", ++ "cast5", ++ "cfb-mode", ++ "chrono", ++ "cipher", ++ "des", ++ "digest", ++ "dsa", ++ "dyn-clone", ++ "eax", ++ "ecb", ++ "ecdsa", ++ "ed25519", ++ "ed25519-dalek", ++ "flate2", ++ "getrandom", ++ "idea", ++ "idna", ++ "lalrpop", ++ "lalrpop-util", ++ "lazy_static", ++ "libc", ++ "md-5", ++ "memsec", ++ "num-bigint-dig", ++ "once_cell", ++ "p256", ++ "p384", ++ "p521", ++ "rand", ++ "rand_core", ++ "regex", ++ "regex-syntax", ++ "ripemd", ++ "rsa", ++ "sha1collisiondetection", ++ "sha2", ++ "thiserror 1.0.65", ++ "twofish", ++ "typenum", ++ "x25519-dalek", ++ "xxhash-rust", ++] ++ ++[[package]] ++name = "serde" ++version = "1.0.216" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0b9781016e935a97e8beecf0c933758c97a5520d32930e460142b4cd80c6338e" ++dependencies = [ ++ "serde_derive", ++] ++ ++[[package]] ++name = "serde_derive" ++version = "1.0.216" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "46f859dbbf73865c6627ed570e78961cd3ac92407a2d117204c49232485da55e" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "serde_json" ++version = "1.0.134" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d00f4175c42ee48b15416f6193a959ba3a0d67fc699a0db9ad12df9f83991c7d" ++dependencies = [ ++ "itoa", ++ "memchr", ++ "ryu", ++ "serde", ++] ++ ++[[package]] ++name = "serde_repr" ++version = "0.1.19" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "serde_urlencoded" ++version = "0.7.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" ++dependencies = [ ++ "form_urlencoded", ++ "itoa", ++ "ryu", ++ "serde", ++] ++ ++[[package]] ++name = "serde_with" ++version = "1.14.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "678b5a069e50bf00ecd22d0cd8ddf7c236f68581b03db652061ed5eb13a312ff" ++dependencies = [ ++ "base64 0.13.1", ++ "serde", ++ "serde_with_macros", ++] ++ ++[[package]] ++name = "serde_with_macros" ++version = "1.5.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082" ++dependencies = [ ++ "darling 0.13.4", ++ "proc-macro2", ++ "quote", ++ "syn 1.0.109", ++] ++ ++[[package]] ++name = "serde_yaml" ++version = "0.9.34+deprecated" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" ++dependencies = [ ++ "indexmap 2.7.0", ++ "itoa", ++ "ryu", ++ "serde", ++ "unsafe-libyaml", ++] ++ ++[[package]] ++name = "sha1" ++version = "0.10.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "cpufeatures", ++ "digest", ++] ++ ++[[package]] ++name = "sha1collisiondetection" ++version = "0.3.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1f606421e4a6012877e893c399822a4ed4b089164c5969424e1b9d1e66e6964b" ++dependencies = [ ++ "const-oid", ++ "digest", ++ "generic-array 1.1.1", ++] ++ ++[[package]] ++name = "sha2" ++version = "0.10.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "cpufeatures", ++ "digest", ++] ++ ++[[package]] ++name = "shlex" ++version = "1.3.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" ++ ++[[package]] ++name = "signal-hook" ++version = "0.3.15" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "732768f1176d21d09e076c23a93123d40bba92d50c4058da34d45c8de8e682b9" ++dependencies = [ ++ "libc", ++ "signal-hook-registry", ++] ++ ++[[package]] ++name = "signal-hook-registry" ++version = "1.4.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" ++dependencies = [ ++ "libc", ++] ++ ++[[package]] ++name = "signal-hook-tokio" ++version = "0.3.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "213241f76fb1e37e27de3b6aa1b068a2c333233b59cca6634f634b80a27ecf1e" ++dependencies = [ ++ "futures-core", ++ "libc", ++ "signal-hook", ++ "tokio", ++] ++ ++[[package]] ++name = "signature" ++version = "2.2.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" ++dependencies = [ ++ "digest", ++ "rand_core", ++] ++ ++[[package]] ++name = "sigstore" ++version = "0.9.0" ++source = "git+https://github.com/sigstore/sigstore-rs.git?rev=1b6ccf0f64d173350ec5515bd69ab48a26a9c0a3#1b6ccf0f64d173350ec5515bd69ab48a26a9c0a3" ++dependencies = [ ++ "async-trait", ++ "base64 0.22.1", ++ "cfg-if 1.0.0", ++ "chrono", ++ "const-oid", ++ "crypto_secretbox", ++ "digest", ++ "ecdsa", ++ "ed25519", ++ "ed25519-dalek", ++ "elliptic-curve", ++ "futures", ++ "getrandom", ++ "hex", ++ "json-syntax", ++ "lazy_static", ++ "oci-distribution", ++ "olpc-cjson", ++ "p256", ++ "p384", ++ "pem", ++ "pkcs1", ++ "pkcs8", ++ "rand", ++ "ring", ++ "rsa", ++ "rustls-webpki", ++ "scrypt", ++ "serde", ++ "serde_json", ++ "serde_repr", ++ "sha2", ++ "signature", ++ "thiserror 1.0.65", ++ "tls_codec", ++ "tokio", ++ "tokio-util", ++ "tracing", ++ "url", ++ "webbrowser", ++ "x509-cert", ++ "zeroize", ++] ++ ++[[package]] ++name = "siphasher" ++version = "0.3.11" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" ++ ++[[package]] ++name = "slab" ++version = "0.4.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d" ++dependencies = [ ++ "autocfg", ++] ++ ++[[package]] ++name = "smallstr" ++version = "0.3.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "63b1aefdf380735ff8ded0b15f31aab05daf1f70216c01c02a12926badd1df9d" ++dependencies = [ ++ "serde", ++ "smallvec", ++] ++ ++[[package]] ++name = "smallvec" ++version = "1.13.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" ++ ++[[package]] ++name = "socket2" ++version = "0.4.9" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" ++dependencies = [ ++ "libc", ++ "winapi", ++] ++ ++[[package]] ++name = "socket2" ++version = "0.5.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8" ++dependencies = [ ++ "libc", ++ "windows-sys 0.52.0", ++] ++ ++[[package]] ++name = "spin" ++version = "0.9.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" ++ ++[[package]] ++name = "spki" ++version = "0.7.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" ++dependencies = [ ++ "base64ct", ++ "der", ++] ++ ++[[package]] ++name = "stable_deref_trait" ++version = "1.2.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" ++ ++[[package]] ++name = "static_assertions" ++version = "1.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" ++ ++[[package]] ++name = "string_cache" ++version = "0.8.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b" ++dependencies = [ ++ "new_debug_unreachable", ++ "once_cell", ++ "parking_lot", ++ "phf_shared", ++ "precomputed-hash", ++] ++ ++[[package]] ++name = "strsim" ++version = "0.10.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" ++ ++[[package]] ++name = "strsim" ++version = "0.11.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" ++ ++[[package]] ++name = "strum" ++version = "0.26.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" ++dependencies = [ ++ "strum_macros", ++] ++ ++[[package]] ++name = "strum_macros" ++version = "0.26.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" ++dependencies = [ ++ "heck 0.5.0", ++ "proc-macro2", ++ "quote", ++ "rustversion", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "subtle" ++version = "2.6.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" ++ ++[[package]] ++name = "superboring" ++version = "0.1.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "515cce34a781d7250b8a65706e0f2a5b99236ea605cb235d4baed6685820478f" ++dependencies = [ ++ "getrandom", ++ "hmac-sha256", ++ "hmac-sha512", ++ "rand", ++ "rsa", ++] ++ ++[[package]] ++name = "syn" ++version = "1.0.109" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "unicode-ident", ++] ++ ++[[package]] ++name = "syn" ++version = "2.0.91" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d53cbcb5a243bd33b7858b1d7f4aca2153490815872d86d955d6ea29f743c035" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "unicode-ident", ++] ++ ++[[package]] ++name = "sync_wrapper" ++version = "0.1.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" ++ ++[[package]] ++name = "sync_wrapper" ++version = "1.0.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263" ++dependencies = [ ++ "futures-core", ++] ++ ++[[package]] ++name = "synstructure" ++version = "0.13.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "tempfile" ++version = "3.6.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "31c0432476357e58790aaa47a8efb0c5138f137343f3b5f23bd36a27e3b0a6d6" ++dependencies = [ ++ "autocfg", ++ "cfg-if 1.0.0", ++ "fastrand", ++ "redox_syscall 0.3.5", ++ "rustix 0.37.19", ++ "windows-sys 0.48.0", ++] ++ ++[[package]] ++name = "term" ++version = "0.7.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c59df8ac95d96ff9bede18eb7300b0fda5e5d8d90960e76f8e14ae765eedbf1f" ++dependencies = [ ++ "dirs-next", ++ "rustversion", ++ "winapi", ++] ++ ++[[package]] ++name = "termcolor" ++version = "1.4.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" ++dependencies = [ ++ "winapi-util", ++] ++ ++[[package]] ++name = "thiserror" ++version = "1.0.65" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "5d11abd9594d9b38965ef50805c5e469ca9cc6f197f883f717e0269a3057b3d5" ++dependencies = [ ++ "thiserror-impl 1.0.65", ++] ++ ++[[package]] ++name = "thiserror" ++version = "2.0.9" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f072643fd0190df67a8bab670c20ef5d8737177d6ac6b2e9a236cb096206b2cc" ++dependencies = [ ++ "thiserror-impl 2.0.9", ++] ++ ++[[package]] ++name = "thiserror-impl" ++version = "1.0.65" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ae71770322cbd277e69d762a16c444af02aa0575ac0d174f0b9562d3b37f8602" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "thiserror-impl" ++version = "2.0.9" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7b50fa271071aae2e6ee85f842e2e28ba8cd2c5fb67f11fcb1fd70b276f9e7d4" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "time" ++version = "0.3.23" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "59e399c068f43a5d116fedaf73b203fa4f9c519f17e2b34f63221d3792f81446" ++dependencies = [ ++ "itoa", ++ "serde", ++ "time-core", ++ "time-macros", ++] ++ ++[[package]] ++name = "time-core" ++version = "0.1.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb" ++ ++[[package]] ++name = "time-macros" ++version = "0.2.10" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "96ba15a897f3c86766b757e5ac7221554c6750054d74d5b28844fce5fb36a6c4" ++dependencies = [ ++ "time-core", ++] ++ ++[[package]] ++name = "tiny-keccak" ++version = "2.0.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" ++dependencies = [ ++ "crunchy", ++] ++ ++[[package]] ++name = "tinystr" ++version = "0.7.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" ++dependencies = [ ++ "displaydoc", ++ "zerovec", ++] ++ ++[[package]] ++name = "tinyvec" ++version = "1.8.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8" ++dependencies = [ ++ "tinyvec_macros", ++] ++ ++[[package]] ++name = "tinyvec_macros" ++version = "0.1.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" ++ ++[[package]] ++name = "tls_codec" ++version = "0.4.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b5e78c9c330f8c85b2bae7c8368f2739157db9991235123aa1b15ef9502bfb6a" ++dependencies = [ ++ "tls_codec_derive", ++ "zeroize", ++] ++ ++[[package]] ++name = "tls_codec_derive" ++version = "0.4.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8d9ef545650e79f30233c0003bcc2504d7efac6dad25fca40744de773fe2049c" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "tokio" ++version = "1.42.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551" ++dependencies = [ ++ "backtrace", ++ "bytes 1.9.0", ++ "libc", ++ "mio", ++ "parking_lot", ++ "pin-project-lite", ++ "signal-hook-registry", ++ "socket2 0.5.8", ++ "tokio-macros", ++ "windows-sys 0.52.0", ++] ++ ++[[package]] ++name = "tokio-io-timeout" ++version = "1.2.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf" ++dependencies = [ ++ "pin-project-lite", ++ "tokio", ++] ++ ++[[package]] ++name = "tokio-macros" ++version = "2.4.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "tokio-native-tls" ++version = "0.3.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" ++dependencies = [ ++ "native-tls", ++ "tokio", ++] ++ ++[[package]] ++name = "tokio-pipe" ++version = "0.2.12" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f213a84bffbd61b8fa0ba8a044b4bbe35d471d0b518867181e82bd5c15542784" ++dependencies = [ ++ "libc", ++ "tokio", ++] ++ ++[[package]] ++name = "tokio-stream" ++version = "0.1.14" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842" ++dependencies = [ ++ "futures-core", ++ "pin-project-lite", ++ "tokio", ++] ++ ++[[package]] ++name = "tokio-util" ++version = "0.7.13" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d7fcaa8d55a2bdd6b83ace262b016eca0d79ee02818c5c1bcdf0305114081078" ++dependencies = [ ++ "bytes 1.9.0", ++ "futures-core", ++ "futures-sink", ++ "pin-project-lite", ++ "tokio", ++] ++ ++[[package]] ++name = "tokio-vsock" ++version = "0.3.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9b33556828911d16e24d8b5d336446b0bf6b4b9bfda52cbdc2fa35b7a2862ebc" ++dependencies = [ ++ "bytes 0.4.12", ++ "futures", ++ "libc", ++ "tokio", ++ "vsock 0.2.6", ++] ++ ++[[package]] ++name = "tokio-vsock" ++version = "0.4.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "52a15c15b1bc91f90902347eff163b5b682643aff0c8e972912cca79bd9208dd" ++dependencies = [ ++ "bytes 1.9.0", ++ "futures", ++ "libc", ++ "tokio", ++ "vsock 0.3.0", ++] ++ ++[[package]] ++name = "tonic" ++version = "0.7.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "5be9d60db39854b30b835107500cf0aca0b0d14d6e1c3de124217c23a29c2ddb" ++dependencies = [ ++ "async-stream", ++ "async-trait", ++ "axum", ++ "base64 0.13.1", ++ "bytes 1.9.0", ++ "futures-core", ++ "futures-util", ++ "h2", ++ "http 0.2.9", ++ "http-body 0.4.5", ++ "hyper 0.14.26", ++ "hyper-timeout", ++ "percent-encoding", ++ "pin-project", ++ "prost 0.10.4", ++ "prost-derive 0.10.1", ++ "tokio", ++ "tokio-stream", ++ "tokio-util", ++ "tower", ++ "tower-layer", ++ "tower-service", ++ "tracing", ++ "tracing-futures", ++] ++ ++[[package]] ++name = "tonic-build" ++version = "0.7.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d9263bf4c9bfaae7317c1c2faf7f18491d2fe476f70c414b73bf5d445b00ffa1" ++dependencies = [ ++ "prettyplease", ++ "proc-macro2", ++ "prost-build 0.10.4", ++ "quote", ++ "syn 1.0.109", ++] ++ ++[[package]] ++name = "tower" ++version = "0.4.13" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" ++dependencies = [ ++ "futures-core", ++ "futures-util", ++ "indexmap 1.9.3", ++ "pin-project", ++ "pin-project-lite", ++ "rand", ++ "slab", ++ "tokio", ++ "tokio-util", ++ "tower-layer", ++ "tower-service", ++ "tracing", ++] ++ ++[[package]] ++name = "tower-http" ++version = "0.3.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f873044bf02dd1e8239e9c1293ea39dad76dc594ec16185d0a1bf31d8dc8d858" ++dependencies = [ ++ "bitflags 1.3.2", ++ "bytes 1.9.0", ++ "futures-core", ++ "futures-util", ++ "http 0.2.9", ++ "http-body 0.4.5", ++ "http-range-header", ++ "pin-project-lite", ++ "tower", ++ "tower-layer", ++ "tower-service", ++] ++ ++[[package]] ++name = "tower-layer" ++version = "0.3.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" + + [[package]] +@@ -2031,11 +5165,10 @@ checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" + + [[package]] + name = "tracing" +-version = "0.1.37" ++version = "0.1.40" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" ++checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" + dependencies = [ +- "cfg-if 1.0.0", + "log", + "pin-project-lite", + "tracing-attributes", +@@ -2044,20 +5177,20 @@ dependencies = [ + + [[package]] + name = "tracing-attributes" +-version = "0.1.24" ++version = "0.1.27" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "0f57e3ca2a01450b1a921183a9c9cbfda207fd822cef4ccb00a65402cbba7a74" ++checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" + dependencies = [ + "proc-macro2", + "quote", +- "syn 2.0.18", ++ "syn 2.0.91", + ] + + [[package]] + name = "tracing-core" +-version = "0.1.31" ++version = "0.1.32" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" ++checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" + dependencies = [ + "once_cell", + ] +@@ -2089,11 +5222,32 @@ dependencies = [ + "libc", + "log", + "nix 0.23.2", +- "protobuf 3.2.0", +- "protobuf-codegen 3.2.0", +- "thiserror", ++ "protobuf 3.5.1", ++ "protobuf-codegen 3.5.1", ++ "thiserror 1.0.65", ++ "tokio", ++ "tokio-vsock 0.3.4", ++] ++ ++[[package]] ++name = "ttrpc" ++version = "0.8.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e376927d4422245ae3e0a0d7df0e805f99652536999b5c671144de9fe4120d8c" ++dependencies = [ ++ "async-trait", ++ "byteorder", ++ "crossbeam", ++ "futures", ++ "libc", ++ "log", ++ "nix 0.26.4", ++ "protobuf 3.5.1", ++ "protobuf-codegen 3.5.1", ++ "thiserror 1.0.65", + "tokio", +- "tokio-vsock", ++ "tokio-vsock 0.4.0", ++ "windows-sys 0.48.0", + ] + + [[package]] +@@ -2102,7 +5256,7 @@ version = "0.4.1" + source = "git+https://github.com/kuasar-io/ttrpc-rust.git?branch=v0.7.1-kuasar#db83ba89c4e315a680860341080deec0aa400609" + dependencies = [ + "protobuf 2.28.0", +- "protobuf-codegen 3.2.0", ++ "protobuf-codegen 3.5.1", + "protobuf-support", + "ttrpc-compiler 0.6.1", + ] +@@ -2114,7 +5268,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "94d7f7631d7a9ebed715a47cd4cb6072cbc7ae1d4ec01598971bbec0024340c2" + dependencies = [ + "protobuf 2.28.0", +- "protobuf-codegen 3.2.0", ++ "protobuf-codegen 3.5.1", + "protobuf-support", + "ttrpc-compiler 0.6.2", + ] +@@ -2148,18 +5302,105 @@ dependencies = [ + "tempfile", + ] + ++[[package]] ++name = "twofish" ++version = "0.7.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a78e83a30223c757c3947cd144a31014ff04298d8719ae10d03c31c0448c8013" ++dependencies = [ ++ "cipher", ++] ++ ++[[package]] ++name = "typenum" ++version = "1.17.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" ++ ++[[package]] ++name = "unicase" ++version = "2.8.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539" ++ + [[package]] + name = "unicode-ident" + version = "1.0.9" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "b15811caf2415fb889178633e7724bad2509101cde276048e013b9def5e51fa0" + ++[[package]] ++name = "unicode-normalization" ++version = "0.1.24" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" ++dependencies = [ ++ "tinyvec", ++] ++ + [[package]] + name = "unicode-segmentation" + version = "1.10.1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" + ++[[package]] ++name = "unicode-xid" ++version = "0.2.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" ++ ++[[package]] ++name = "universal-hash" ++version = "0.5.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" ++dependencies = [ ++ "crypto-common", ++ "subtle", ++] ++ ++[[package]] ++name = "unsafe-libyaml" ++version = "0.2.11" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" ++ ++[[package]] ++name = "untrusted" ++version = "0.9.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" ++ ++[[package]] ++name = "url" ++version = "2.5.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60" ++dependencies = [ ++ "form_urlencoded", ++ "idna", ++ "percent-encoding", ++] ++ ++[[package]] ++name = "utf16_iter" ++version = "1.0.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" ++ ++[[package]] ++name = "utf8-decode" ++version = "1.0.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ca61eb27fa339aa08826a29f03e87b99b4d8f0fc2255306fd266bb1b6a9de498" ++ ++[[package]] ++name = "utf8_iter" ++version = "1.0.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" ++ + [[package]] + name = "uuid" + version = "1.3.3" +@@ -2169,6 +5410,12 @@ dependencies = [ + "getrandom", + ] + ++[[package]] ++name = "vcpkg" ++version = "0.2.15" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" ++ + [[package]] + name = "version_check" + version = "0.9.4" +@@ -2185,74 +5432,212 @@ dependencies = [ + "lazy_static", + "log", + "nix 0.24.3", +- "protobuf 3.2.0", ++ "protobuf 3.5.1", + "regex", + "serde", + "tonic-build", +- "ttrpc", ++ "ttrpc 0.7.1", + "ttrpc-codegen 0.4.1", + ] + + [[package]] +-name = "vmm-task" +-version = "0.1.0" ++name = "vmm-task" ++version = "0.1.0" ++dependencies = [ ++ "anyhow", ++ "async-trait", ++ "containerd-sandbox", ++ "containerd-shim", ++ "crossbeam", ++ "env_logger", ++ "futures", ++ "image-rs", ++ "ipnetwork", ++ "lazy_static", ++ "libc", ++ "log", ++ "netlink-packet-core", ++ "netlink-packet-route", ++ "netlink-sys 0.7.0", ++ "nix 0.28.0", ++ "oci-spec 0.5.8", ++ "pin-project-lite", ++ "protobuf 3.5.1", ++ "rtnetlink", ++ "runc", ++ "serde", ++ "serde_json", ++ "signal-hook-tokio", ++ "time", ++ "tokio", ++ "tokio-vsock 0.3.4", ++ "ttrpc 0.7.1", ++ "vmm-common", ++] ++ ++[[package]] ++name = "vsock" ++version = "0.2.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e32675ee2b3ce5df274c0ab52d19b28789632406277ca26bffee79a8e27dc133" ++dependencies = [ ++ "libc", ++ "nix 0.23.2", ++] ++ ++[[package]] ++name = "vsock" ++version = "0.3.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4c8e1df0bf1e1b28095c24564d1b90acae64ca69b097ed73896e342fa6649c57" ++dependencies = [ ++ "libc", ++ "nix 0.24.3", ++] ++ ++[[package]] ++name = "walkdir" ++version = "2.5.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" ++dependencies = [ ++ "same-file", ++ "winapi-util", ++] ++ ++[[package]] ++name = "want" ++version = "0.3.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" ++dependencies = [ ++ "log", ++ "try-lock", ++] ++ ++[[package]] ++name = "wasi" ++version = "0.11.0+wasi-snapshot-preview1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" ++ ++[[package]] ++name = "wasix" ++version = "0.12.21" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c1fbb4ef9bbca0c1170e0b00dd28abc9e3b68669821600cad1caaed606583c6d" ++dependencies = [ ++ "wasi", ++] ++ ++[[package]] ++name = "wasm-bindgen" ++version = "0.2.95" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "once_cell", ++ "wasm-bindgen-macro", ++] ++ ++[[package]] ++name = "wasm-bindgen-backend" ++version = "0.2.95" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" ++dependencies = [ ++ "bumpalo", ++ "log", ++ "once_cell", ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++ "wasm-bindgen-shared", ++] ++ ++[[package]] ++name = "wasm-bindgen-futures" ++version = "0.4.45" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b" ++dependencies = [ ++ "cfg-if 1.0.0", ++ "js-sys", ++ "wasm-bindgen", ++ "web-sys", ++] ++ ++[[package]] ++name = "wasm-bindgen-macro" ++version = "0.2.95" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" ++dependencies = [ ++ "quote", ++ "wasm-bindgen-macro-support", ++] ++ ++[[package]] ++name = "wasm-bindgen-macro-support" ++version = "0.2.95" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++ "wasm-bindgen-backend", ++ "wasm-bindgen-shared", ++] ++ ++[[package]] ++name = "wasm-bindgen-shared" ++version = "0.2.95" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" ++ ++[[package]] ++name = "wasm-streams" ++version = "0.4.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4e072d4e72f700fb3443d8fe94a39315df013eef1104903cdb0a2abd322bbecd" + dependencies = [ +- "anyhow", +- "async-trait", +- "containerd-sandbox", +- "containerd-shim", +- "crossbeam", +- "env_logger", +- "futures", +- "ipnetwork", +- "lazy_static", +- "libc", +- "log", +- "netlink-packet-core", +- "netlink-packet-route", +- "netlink-sys 0.7.0", +- "nix 0.28.0", +- "oci-spec", +- "pin-project-lite", +- "protobuf 3.2.0", +- "rtnetlink", +- "runc", +- "serde", +- "serde_json", +- "signal-hook-tokio", +- "time", +- "tokio", +- "tokio-vsock", +- "ttrpc", +- "vmm-common", ++ "futures-util", ++ "js-sys", ++ "wasm-bindgen", ++ "wasm-bindgen-futures", ++ "web-sys", + ] + + [[package]] +-name = "vsock" +-version = "0.2.6" ++name = "web-sys" ++version = "0.3.72" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "e32675ee2b3ce5df274c0ab52d19b28789632406277ca26bffee79a8e27dc133" ++checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" + dependencies = [ +- "libc", +- "nix 0.23.2", ++ "js-sys", ++ "wasm-bindgen", + ] + + [[package]] +-name = "want" +-version = "0.3.0" ++name = "webbrowser" ++version = "1.0.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" ++checksum = "ea9fe1ebb156110ff855242c1101df158b822487e4957b0556d9ffce9db0f535" + dependencies = [ ++ "block2", ++ "core-foundation 0.10.0", ++ "home", ++ "jni", + "log", +- "try-lock", ++ "ndk-context", ++ "objc2", ++ "objc2-foundation", ++ "url", ++ "web-sys", + ] + +-[[package]] +-name = "wasi" +-version = "0.11.0+wasi-snapshot-preview1" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +- + [[package]] + name = "which" + version = "4.4.0" +@@ -2282,11 +5667,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + + [[package]] + name = "winapi-util" +-version = "0.1.5" ++version = "0.1.9" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" ++checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" + dependencies = [ +- "winapi", ++ "windows-sys 0.59.0", + ] + + [[package]] +@@ -2295,13 +5680,94 @@ version = "0.4.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + ++[[package]] ++name = "windows-core" ++version = "0.52.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" ++dependencies = [ ++ "windows-targets 0.52.6", ++] ++ ++[[package]] ++name = "windows-registry" ++version = "0.2.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" ++dependencies = [ ++ "windows-result", ++ "windows-strings", ++ "windows-targets 0.52.6", ++] ++ ++[[package]] ++name = "windows-result" ++version = "0.2.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" ++dependencies = [ ++ "windows-targets 0.52.6", ++] ++ ++[[package]] ++name = "windows-strings" ++version = "0.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" ++dependencies = [ ++ "windows-result", ++ "windows-targets 0.52.6", ++] ++ ++[[package]] ++name = "windows-sys" ++version = "0.45.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" ++dependencies = [ ++ "windows-targets 0.42.2", ++] ++ + [[package]] + name = "windows-sys" + version = "0.48.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" + dependencies = [ +- "windows-targets", ++ "windows-targets 0.48.0", ++] ++ ++[[package]] ++name = "windows-sys" ++version = "0.52.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" ++dependencies = [ ++ "windows-targets 0.52.6", ++] ++ ++[[package]] ++name = "windows-sys" ++version = "0.59.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" ++dependencies = [ ++ "windows-targets 0.52.6", ++] ++ ++[[package]] ++name = "windows-targets" ++version = "0.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" ++dependencies = [ ++ "windows_aarch64_gnullvm 0.42.2", ++ "windows_aarch64_msvc 0.42.2", ++ "windows_i686_gnu 0.42.2", ++ "windows_i686_msvc 0.42.2", ++ "windows_x86_64_gnu 0.42.2", ++ "windows_x86_64_gnullvm 0.42.2", ++ "windows_x86_64_msvc 0.42.2", + ] + + [[package]] +@@ -2310,53 +5776,328 @@ version = "0.48.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" + dependencies = [ +- "windows_aarch64_gnullvm", +- "windows_aarch64_msvc", +- "windows_i686_gnu", +- "windows_i686_msvc", +- "windows_x86_64_gnu", +- "windows_x86_64_gnullvm", +- "windows_x86_64_msvc", ++ "windows_aarch64_gnullvm 0.48.0", ++ "windows_aarch64_msvc 0.48.0", ++ "windows_i686_gnu 0.48.0", ++ "windows_i686_msvc 0.48.0", ++ "windows_x86_64_gnu 0.48.0", ++ "windows_x86_64_gnullvm 0.48.0", ++ "windows_x86_64_msvc 0.48.0", ++] ++ ++[[package]] ++name = "windows-targets" ++version = "0.52.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" ++dependencies = [ ++ "windows_aarch64_gnullvm 0.52.6", ++ "windows_aarch64_msvc 0.52.6", ++ "windows_i686_gnu 0.52.6", ++ "windows_i686_gnullvm", ++ "windows_i686_msvc 0.52.6", ++ "windows_x86_64_gnu 0.52.6", ++ "windows_x86_64_gnullvm 0.52.6", ++ "windows_x86_64_msvc 0.52.6", + ] + ++[[package]] ++name = "windows_aarch64_gnullvm" ++version = "0.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" ++ + [[package]] + name = "windows_aarch64_gnullvm" + version = "0.48.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" + ++[[package]] ++name = "windows_aarch64_gnullvm" ++version = "0.52.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" ++ ++[[package]] ++name = "windows_aarch64_msvc" ++version = "0.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" ++ + [[package]] + name = "windows_aarch64_msvc" + version = "0.48.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" + ++[[package]] ++name = "windows_aarch64_msvc" ++version = "0.52.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" ++ ++[[package]] ++name = "windows_i686_gnu" ++version = "0.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" ++ + [[package]] + name = "windows_i686_gnu" + version = "0.48.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" + ++[[package]] ++name = "windows_i686_gnu" ++version = "0.52.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" ++ ++[[package]] ++name = "windows_i686_gnullvm" ++version = "0.52.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" ++ ++[[package]] ++name = "windows_i686_msvc" ++version = "0.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" ++ + [[package]] + name = "windows_i686_msvc" + version = "0.48.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" + ++[[package]] ++name = "windows_i686_msvc" ++version = "0.52.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" ++ ++[[package]] ++name = "windows_x86_64_gnu" ++version = "0.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" ++ + [[package]] + name = "windows_x86_64_gnu" + version = "0.48.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" + ++[[package]] ++name = "windows_x86_64_gnu" ++version = "0.52.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" ++ ++[[package]] ++name = "windows_x86_64_gnullvm" ++version = "0.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" ++ + [[package]] + name = "windows_x86_64_gnullvm" + version = "0.48.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" + ++[[package]] ++name = "windows_x86_64_gnullvm" ++version = "0.52.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" ++ ++[[package]] ++name = "windows_x86_64_msvc" ++version = "0.42.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" ++ + [[package]] + name = "windows_x86_64_msvc" + version = "0.48.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" ++ ++[[package]] ++name = "windows_x86_64_msvc" ++version = "0.52.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" ++ ++[[package]] ++name = "write16" ++version = "1.0.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" ++ ++[[package]] ++name = "writeable" ++version = "0.5.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" ++ ++[[package]] ++name = "x25519-dalek" ++version = "2.0.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c7e468321c81fb07fa7f4c636c3972b9100f0346e5b6a9f2bd0603a52f7ed277" ++dependencies = [ ++ "curve25519-dalek", ++ "rand_core", ++ "zeroize", ++] ++ ++[[package]] ++name = "x509-cert" ++version = "0.2.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1301e935010a701ae5f8655edc0ad17c44bad3ac5ce8c39185f75453b720ae94" ++dependencies = [ ++ "const-oid", ++ "der", ++ "sha1", ++ "signature", ++ "spki", ++ "tls_codec", ++] ++ ++[[package]] ++name = "xattr" ++version = "1.3.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f" ++dependencies = [ ++ "libc", ++ "linux-raw-sys 0.4.14", ++ "rustix 0.38.42", ++] ++ ++[[package]] ++name = "xxhash-rust" ++version = "0.8.14" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d7d48f1b18be023c95e7b75f481cac649d74be7c507ff4a407c55cfb957f7934" ++ ++[[package]] ++name = "yoke" ++version = "0.7.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40" ++dependencies = [ ++ "serde", ++ "stable_deref_trait", ++ "yoke-derive", ++ "zerofrom", ++] ++ ++[[package]] ++name = "yoke-derive" ++version = "0.7.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++ "synstructure", ++] ++ ++[[package]] ++name = "zerofrom" ++version = "0.1.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e" ++dependencies = [ ++ "zerofrom-derive", ++] ++ ++[[package]] ++name = "zerofrom-derive" ++version = "0.1.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++ "synstructure", ++] ++ ++[[package]] ++name = "zeroize" ++version = "1.8.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" ++dependencies = [ ++ "zeroize_derive", ++] ++ ++[[package]] ++name = "zeroize_derive" ++version = "1.4.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "zerovec" ++version = "0.10.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" ++dependencies = [ ++ "yoke", ++ "zerofrom", ++ "zerovec-derive", ++] ++ ++[[package]] ++name = "zerovec-derive" ++version = "0.10.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn 2.0.91", ++] ++ ++[[package]] ++name = "zstd" ++version = "0.13.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" ++dependencies = [ ++ "zstd-safe", ++] ++ ++[[package]] ++name = "zstd-safe" ++version = "7.2.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" ++dependencies = [ ++ "zstd-sys", ++] ++ ++[[package]] ++name = "zstd-sys" ++version = "2.0.13+zstd.1.5.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa" ++dependencies = [ ++ "cc", ++ "pkg-config", ++] +diff --git a/vmm/task/Cargo.toml b/vmm/task/Cargo.toml +index 84c07f9..adbb58b 100644 +--- a/vmm/task/Cargo.toml ++++ b/vmm/task/Cargo.toml +@@ -12,7 +12,7 @@ vmm-common = { path = "../common" } + log = "0.4" + nix = { version = "0.28.0", features = ["sched", "term", "time", "hostname", "signal", "mount", "uio", "socket"] } + libc = "0.2.95" +-time = { version = "=0.3.7", features = ["serde", "std"] } ++time = { version = "=0.3.23", features = ["serde", "std"] } + serde = { version = "1.0.133", features = ["derive"] } + serde_json = "1.0.74" + oci-spec = "0.5.4" +@@ -25,10 +25,10 @@ netlink-packet-route = "0.19.0" + netlink-packet-core = "0.7.0" + ipnetwork = "0.20" + anyhow = { version = "1.0.66", default-features = false, features = ["std", "backtrace"] } +-protobuf = "3.2" ++protobuf = { version = "=3.5.1"} + + # Async dependencies +-async-trait = { version = "0.1.51" } ++async-trait = { version = "0.1.81" } + tokio = { version = "1.17.0", features = ["full"] } + futures = { version = "0.3.21" } + signal-hook-tokio = { version = "0.3.1", features = ["futures-v0_3"] } +@@ -40,5 +40,14 @@ containerd-sandbox = { git = "https://github.com/kuasar-io/rust-extensions.git" + containerd-shim = { git = "https://github.com/kuasar-io/rust-extensions.git", features = ["async"] } + runc = { git = "https://github.com/kuasar-io/rust-extensions.git", features = ["async"] } + ++# Image pull/decrypt ++image-rs = { git = "https://github.com/confidential-containers/guest-components", tag="v0.10.0", default-features = false, optional = true, features = [ ++ "kata-cc-native-tls", ++ "signature-simple-xrss", ++] } ++ + [patch.crates-io] + ttrpc = { git = "https://github.com/kuasar-io/ttrpc-rust.git", branch = "v0.7.1-kuasar" } ++ ++[features] ++image-service = ["image-rs"] +diff --git a/vmm/task/src/config.rs b/vmm/task/src/config.rs +index 2be2a7a..ca4f5d5 100644 +--- a/vmm/task/src/config.rs ++++ b/vmm/task/src/config.rs +@@ -22,6 +22,21 @@ const LOG_LEVEL: &str = "task.log_level"; + const TASK_DEBUG: &str = "task.debug"; + const DEBUG_SHELL: &str = "task.debug_shell"; + ++#[cfg(feature = "image-service")] ++const AA_KBC_PARAMS: &str = "task.aa_kbc_params"; ++#[cfg(feature = "image-service")] ++const HTTPS_PROXY: &str = "task.https_proxy"; ++#[cfg(feature = "image-service")] ++const NO_PROXY: &str = "task.no_proxy"; ++#[cfg(feature = "image-service")] ++const ENABLE_SIGNATURE_VERIFICATION: &str = "task.enable_signature_verification"; ++#[cfg(feature = "image-service")] ++const IMAGE_POLICY_FILE: &str = "task.image_policy"; ++#[cfg(feature = "image-service")] ++const IMAGE_REGISTRY_AUTH_FILE: &str = "task.image_registry_auth"; ++#[cfg(feature = "image-service")] ++const SIMPLE_SIGNING_SIGSTORE_CONFIG: &str = "task.simple_signing_sigstore_config"; ++ + macro_rules! parse_cmdline { + ($param:ident, $key:ident, $field:expr) => { + if $param.len() == 1 && $param[0] == $key { +@@ -38,12 +53,25 @@ macro_rules! parse_cmdline { + }; + } + ++#[derive(Debug)] ++pub struct ImageConfig { ++ pub(crate) aa_kbc_params: String, ++ pub(crate) https_proxy: String, ++ pub(crate) no_proxy: String, ++ pub(crate) enable_signature_verification: bool, ++ pub(crate) image_policy_file: String, ++ pub(crate) image_registry_auth_file: String, ++ pub(crate) simple_signing_sigstore_config: String, ++} ++ + #[derive(Debug)] + pub struct TaskConfig { + pub(crate) sharefs_type: String, + pub(crate) log_level: String, + pub(crate) debug: bool, + pub(crate) debug_shell: String, ++ #[cfg(feature = "image-service")] ++ pub(crate) image_config: ImageConfig, + } + + impl Default for TaskConfig { +@@ -53,6 +81,16 @@ impl Default for TaskConfig { + log_level: "info".to_string(), + debug: false, + debug_shell: "/bin/bash".to_string(), ++ #[cfg(feature = "image-service")] ++ image_config: ImageConfig { ++ aa_kbc_params: "".to_string(), ++ https_proxy: "".to_string(), ++ no_proxy: "".to_string(), ++ enable_signature_verification: false, ++ image_policy_file: "".to_string(), ++ image_registry_auth_file: "".to_string(), ++ simple_signing_sigstore_config: "".to_string(), ++ } + } + } + } +@@ -70,6 +108,21 @@ impl TaskConfig { + parse_cmdline!(param, LOG_LEVEL, config.log_level, String::from); + parse_cmdline!(param, TASK_DEBUG, config.debug); + parse_cmdline!(param, DEBUG_SHELL, config.debug_shell, String::from); ++ ++ #[cfg(feature = "image-service")] ++ { ++ parse_cmdline!(param, AA_KBC_PARAMS, config.image_config.aa_kbc_params, String::from); ++ parse_cmdline!(param, HTTPS_PROXY, config.image_config.https_proxy, String::from); ++ parse_cmdline!(param, NO_PROXY, config.image_config.no_proxy, String::from); ++ parse_cmdline!(param, ENABLE_SIGNATURE_VERIFICATION, config.image_config.enable_signature_verification); ++ // URI of the image security file ++ parse_cmdline!(param, IMAGE_POLICY_FILE, config.image_config.image_policy_file, String::from); ++ // URI of the registry auth file ++ parse_cmdline!(param, IMAGE_REGISTRY_AUTH_FILE, config.image_config.image_registry_auth_file, String::from); ++ // URI of the simple signing sigstore file ++ // used when simple signing verification is used ++ parse_cmdline!(param, SIMPLE_SIGNING_SIGSTORE_CONFIG, config.image_config.simple_signing_sigstore_config, String::from); ++ } + } + Ok(config) + } +diff --git a/vmm/task/src/container.rs b/vmm/task/src/container.rs +index 2ca86b4..b4b13bf 100644 +--- a/vmm/task/src/container.rs ++++ b/vmm/task/src/container.rs +@@ -61,6 +61,13 @@ use crate::{ + sandbox::SandboxResources, + util::{read_io, read_storages, wait_pid}, + }; ++#[cfg(feature = "image-service")] ++use std::collections::HashMap; ++#[cfg(feature = "image-service")] ++use containerd_shim::util::{write_str_to_file, CONFIG_FILE_NAME}; ++#[cfg(feature = "image-service")] ++use crate::image_rpc; ++ + + pub const INIT_PID_FILE: &str = "init.pid"; + +@@ -115,18 +122,26 @@ impl ContainerFactory for KuasarFactory { + ) -> containerd_shim::Result { + rescan_pci_bus().await?; + let bundle = format!("{}/{}", KUASAR_STATE_DIR, req.id); +- let spec: Spec = read_spec(&bundle).await?; ++ let mut spec: Spec = read_spec(&bundle).await?; ++ debug!("req info: {:?} \n spec:{:?}", &req, &spec); + let annotations = spec.annotations().clone().unwrap_or_default(); + let storages = if let Some(storage_str) = annotations.get(STORAGE_ANNOTATION) { + serde_json::from_str::>(storage_str)? + } else { + read_storages(&bundle, req.id()).await? + }; ++ + self.sandbox + .lock() + .await + .add_storages(req.id(), storages) + .await?; ++ ++ #[cfg(feature = "image-service")] ++ { ++ self.pull_image_for_container(&annotations, &mut spec, &bundle, req.id()).await?; ++ } ++ + let mut opts = Options::new(); + if let Some(any) = req.options.as_ref() { + let mut input = CodedInputStream::from_bytes(any.value.as_ref()); +@@ -182,6 +197,11 @@ impl ContainerFactory for KuasarFactory { + + async fn cleanup(&self, _ns: &str, c: &KuasarContainer) -> containerd_shim::Result<()> { + self.sandbox.lock().await.defer_storages(&c.id).await?; ++ #[cfg(feature = "image-service")] ++ { ++ let image_client = image_rpc::KuasarImageClient::singleton().await?; ++ image_client.del_image_config(&c.id).await?; ++ } + Ok(()) + } + } +@@ -191,6 +211,38 @@ impl KuasarFactory { + Self { sandbox } + } + ++ #[cfg(feature = "image-service")] ++ async fn pull_image_for_container( ++ &self, ++ annotations: &HashMap, ++ spec: &mut Spec, ++ bundle: &str, ++ container_id: &str, ++ ) -> Result<()> { ++ let image_name = annotations.get(image_rpc::ANNO_K8S_IMAGE_NAME) ++ .map_or_else(|| Err(other!("can not get image: {:?}", image_rpc::ANNO_K8S_IMAGE_NAME)), ++ |name| Ok(name) ++ )?; ++ debug!("image_name = {:?}", image_name); ++ ++ let image_client = image_rpc::KuasarImageClient::singleton().await?; ++ let root_path = image_client ++ .pull_image_for_container(&image_name, &container_id) ++ .await?; ++ // merge the image bundle OCI spec into container spec after pull and mount image ++ image_client.merge_bundle_oci(spec).await?; ++ ++ let mut root = spec.root().clone().unwrap_or_default(); ++ root.set_path(std::path::PathBuf::from(root_path)); ++ spec.set_root(Some(root)); ++ debug!("new spec:{:?}", &spec); ++ ++ let spec_content_new = serde_json::to_string(&spec) ++ .map_err(other_error!(e, "failed to marshal spec to string"))?; ++ write_str_to_file(format!("{}/{}", &bundle, CONFIG_FILE_NAME), &spec_content_new).await?; ++ Ok(()) ++ } ++ + async fn do_create(&self, init: &mut InitProcess) -> Result<()> { + let id = init.id.to_string(); + let stdio = &init.stdio; +diff --git a/vmm/task/src/image_rpc.rs b/vmm/task/src/image_rpc.rs +new file mode 100644 +index 0000000..ca0ba4b +--- /dev/null ++++ b/vmm/task/src/image_rpc.rs +@@ -0,0 +1,274 @@ ++/* ++Copyright 2024 The Kuasar Authors. ++ ++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. ++*/ ++ ++use std::collections::HashMap; ++use std::env; ++use std::fs; ++use std::path::Path; ++use std::sync::{Arc, RwLock}; ++ ++use lazy_static::lazy_static; ++use log::{debug, error, info, warn}; ++use containerd_shim::{ ++ Error, Result, ++ other, other_error ++}; ++use image_rs::{image::ImageClient, bundle::BUNDLE_ROOTFS}; ++use tokio::sync::Mutex; ++use oci_spec::runtime::{Process, Spec}; ++ ++use crate::config::TaskConfig; ++ ++// A marker to merge container spec for images pulled inside guest. ++pub const ANNO_K8S_IMAGE_NAME: &str = "io.kubernetes.cri.image-name"; ++ ++// Kuasar rootfs is readonly, use tmpfs before CC storage is implemented. ++const KUASAR_CC_IMAGE_WORK_DIR: &str = "/run/kuasar/image/"; ++const CONFIG_JSON: &str = "config.json"; ++ ++pub const CONTAINER_BASE: &str = "/run/kuasar-vmm"; ++ ++lazy_static! { ++ pub static ref KUASAR_IMAGE_CLIENT: Mutex> = Mutex::new(None); ++} ++ ++#[derive(Clone)] ++pub struct KuasarImageClient { ++ image_client: Arc>, ++ images: Arc>>, ++ aa_kbc_params: String, ++ https_proxy: String, ++ no_proxy: String, ++} ++ ++pub struct ProxyDrop { ++ noop: i32, ++} ++ ++impl Drop for ProxyDrop { ++ /// Unset proxy environment ++ fn drop(&mut self) { ++ debug!("unset proxy"); ++ env::set_var("HTTPS_PROXY", "".to_string()); ++ env::set_var("NO_PROXY", "".to_string()); ++ } ++} ++ ++impl KuasarImageClient { ++ pub fn new(task_config: &TaskConfig) -> Self { ++ let mut image_client = ImageClient::default(); ++ ++ if !task_config.image_config.image_policy_file.is_empty() { ++ image_client.config.file_paths.policy_path = task_config.image_config.image_policy_file.clone(); ++ } ++ if !task_config.image_config.simple_signing_sigstore_config.is_empty() { ++ image_client.config.file_paths.sigstore_config = ++ task_config.image_config.simple_signing_sigstore_config.clone(); ++ } ++ if !task_config.image_config.image_registry_auth_file.is_empty() { ++ image_client.config.file_paths.auth_file = ++ task_config.image_config.image_registry_auth_file.clone(); ++ } ++ image_client.config.work_dir = ++ std::path::PathBuf::from(KUASAR_CC_IMAGE_WORK_DIR.to_string()); ++ ++ let aa_kbc_params = &task_config.image_config.aa_kbc_params; ++ // If the attestation-agent is being used, then enable the authenticated credentials support ++ info!("image_client.config.auth set to: {}", !aa_kbc_params.is_empty()); ++ image_client.config.auth = !aa_kbc_params.is_empty(); ++ ++ // Read enable signature verification from the task config and set it in the image_client ++ let enable_signature_verification = &task_config.image_config.enable_signature_verification; ++ info!("enable_signature_verification set to: {}", enable_signature_verification); ++ image_client.config.security_validate = *enable_signature_verification; ++ ++ Self { ++ image_client: Arc::new(Mutex::new(image_client)), ++ images: Arc::new(Mutex::new(HashMap::new())), ++ https_proxy: task_config.image_config.https_proxy.clone(), ++ no_proxy: task_config.image_config.no_proxy.clone(), ++ aa_kbc_params: task_config.image_config.aa_kbc_params.clone(), ++ } ++ } ++ ++ /// Get the singleton instance of image service. ++ pub async fn singleton() -> Result { ++ let client = KUASAR_IMAGE_CLIENT.lock().await.clone(); ++ match client { ++ Some(client) => Ok(client), ++ None => Err(other!("image service is uninitialized")), ++ } ++ } ++ ++ /// Set proxy environment ++ fn set_proxy_env_vars(&self) -> ProxyDrop { ++ let https_proxy = self.https_proxy.clone(); ++ if !https_proxy.is_empty() { ++ env::set_var("HTTPS_PROXY", https_proxy); ++ } ++ let no_proxy = self.no_proxy.clone(); ++ if !no_proxy.is_empty() { ++ env::set_var("NO_PROXY", no_proxy); ++ } ++ ProxyDrop { ++ noop: 0 ++ } ++ } ++ ++ /// init decrypt config ++ async fn get_security_config(&self) -> Result { ++ let aa_kbc_params = self.aa_kbc_params.clone(); ++ let decrypt_config = if !aa_kbc_params.is_empty() { ++ format!("provider:attestation-agent:{}", aa_kbc_params) ++ } else { ++ "".to_string() ++ }; ++ ++ Ok(decrypt_config) ++ } ++ ++ /// Call image-rs to pull and unpack image. ++ async fn common_image_pull( ++ &self, ++ image: &str, ++ bundle_path: &Path, ++ decrypt_config: &str, ++ source_creds: Option<&str>, ++ cid: &str, ++ ) -> Result<()> { ++ let res = self ++ .image_client ++ .lock() ++ .await ++ .pull_image(image, bundle_path, &source_creds, &Some(decrypt_config)) ++ .await; ++ match res { ++ Ok(image) => { ++ info!("pull and unpack image {:?}, cid: {:?}, with image-rs succeed. ", image, cid); ++ } ++ Err(e) => { ++ error!("pull and unpack image {:?}, cid: {:?}, with image-rs failed with {:?}. ", ++ image, cid, e.to_string()); ++ return Err(other!("pull and unpack image {:?}, cid: {:?}, with image-rs failed with {:?}. ", ++ image, cid, e.to_string())); ++ } ++ }; ++ self.add_image(String::from(image), String::from(cid)).await; ++ Ok(()) ++ } ++ ++ /// Pull image when creating container and return the bundle path with rootfs. ++ pub async fn pull_image_for_container( ++ &self, ++ image: &str, ++ cid: &str, ++ ) -> Result { ++ let _proxy_drop = self.set_proxy_env_vars(); ++ ++ let bundle_path = Path::new(CONTAINER_BASE).join(cid); ++ fs::create_dir_all(&bundle_path).or_else(|e| { Err(other!("failed to create dir {:?} {:?}", &bundle_path, e)) })?; ++ info!("pull image {:?}, bundle path {:?}", cid, bundle_path); ++ ++ let decrypt_config = self.get_security_config().await?; ++ ++ let source_creds = None; // You need to determine how to obtain this. ++ ++ self.common_image_pull(image, &bundle_path, &decrypt_config, source_creds, cid) ++ .await?; ++ Ok(format!{"{}/{}", bundle_path.display(), BUNDLE_ROOTFS}) ++ } ++ ++ async fn add_image(&self, image: String, cid: String) { ++ self.images.lock().await.insert(image, cid); ++ } ++ ++ // When being passed an image name through a container annotation, merge its ++ // corresponding bundle OCI specification into the passed container creation one. ++ pub async fn merge_bundle_oci(&self, container_oci: &mut Spec) -> Result<()> { ++ let annotations = container_oci.annotations().clone().unwrap_or_default(); ++ if let Some(image_name) = annotations.get(&ANNO_K8S_IMAGE_NAME.to_string()) ++ { ++ let images = self.images.lock().await; ++ if let Some(container_id) = images.get(image_name) { ++ let image_oci_config_path = Path::new(CONTAINER_BASE) ++ .join(container_id) ++ .join(CONFIG_JSON); ++ debug!("image bundle config path: {:?}", image_oci_config_path); ++ ++ let image_oci = ++ Spec::load(image_oci_config_path.to_str().ok_or_else(|| ++ other!("invalid container image OCI config path {:?}", image_oci_config_path) ++ )?).unwrap_or_default(); ++ ++ if let Some(mut container_root) = container_oci.root().clone() { ++ if let Some(image_root) = image_oci.root() { ++ let root_path = Path::new(CONTAINER_BASE) ++ .join(container_id) ++ .join(image_root.path().clone()); ++ container_root.set_path( ++ std::path::PathBuf::from( ++ &String::from(root_path.to_str().ok_or_else(|| ++ other!("invalid container image root path {:?}", root_path) ++ )?) ++ ) ++ ); ++ } ++ } ++ ++ if let Some(mut container_process) = container_oci.process().clone() { ++ if let Some(image_process) = image_oci.process() { ++ self.merge_oci_process(&mut container_process, image_process); ++ } ++ } ++ } ++ } ++ ++ Ok(()) ++ } ++ ++ // Partially merge an OCI process specification into another one. ++ fn merge_oci_process(&self, target: &mut Process, source: &Process) { ++ if target.args().is_none() && !source.args().is_none() { ++ target.set_args(source.args().clone()); ++ } ++ ++ if target.cwd().to_str() == Some("/") && source.cwd().to_str() != Some("/") { ++ target.set_cwd(source.cwd().clone()); ++ } ++ ++ if let Some(mut env) = target.env().clone() { ++ for source_env in source.env().clone().unwrap_or_default() { ++ let variable_name: Vec<&str> = source_env.split('=').collect(); ++ if !target.env().iter().any(|i| i.contains(&variable_name[0].to_string())) { ++ env.push(source_env.to_string()); ++ } ++ } ++ target.set_env(Some(env)); ++ } ++ } ++ ++ // Image-rs:pull_image will generate image config everytime, ++ // so we need del image config after container stopped. ++ pub async fn del_image_config(&self, cid: &str) -> Result<()> { ++ let image_oci_config_path = Path::new(CONTAINER_BASE) ++ .join(cid) ++ .join(CONFIG_JSON); ++ fs::remove_file(&image_oci_config_path).map_err(other_error!(e, "remove image config"))?; ++ debug!("del image config: {:?}", &image_oci_config_path); ++ Ok(()) ++ } ++ ++} +diff --git a/vmm/task/src/main.rs b/vmm/task/src/main.rs +index 8c9a2d2..f565b57 100644 +--- a/vmm/task/src/main.rs ++++ b/vmm/task/src/main.rs +@@ -54,6 +54,9 @@ use crate::{ + task::create_task_service, + }; + ++#[cfg(feature = "image-service")] ++use crate::image_rpc::{KuasarImageClient, KUASAR_IMAGE_CLIENT}; ++ + mod config; + mod container; + mod debug; +@@ -68,6 +71,8 @@ mod streaming; + mod task; + mod util; + mod vsock; ++#[cfg(feature = "image-service")] ++mod image_rpc; + + const NAMESPACE: &str = "k8s.io"; + +@@ -172,6 +177,12 @@ async fn initialize() -> anyhow::Result<()> { + } + } + ++ #[cfg(feature = "image-service")] ++ { ++ let image_client = image_rpc::KuasarImageClient::new(&config); ++ *image_rpc::KUASAR_IMAGE_CLIENT.lock().await = Some(image_client.clone()); ++ } ++ + late_init_call().await?; + + Ok(()) +-- +2.43.0 + diff --git a/patch/0015-image-rs-use-http.patch b/patch/0015-image-rs-use-http.patch new file mode 100644 index 0000000000000000000000000000000000000000..8ea475f6052e5391cfea882d37553f24d6267832 --- /dev/null +++ b/patch/0015-image-rs-use-http.patch @@ -0,0 +1,41 @@ +From 93703eac9afc895ab014b5418c0babb5adabccab Mon Sep 17 00:00:00 2001 +From: liuxu +Date: Wed, 19 Feb 2025 21:55:25 +0800 +Subject: [PATCH] image-rs use http + +Signed-off-by: liuxu +--- + vmm/task/vendor/image-rs/.cargo-checksum.json | 2 +- + vmm/task/vendor/image-rs/src/pull.rs | 7 ++++++- + 2 files changed, 7 insertions(+), 2 deletions(-) + +diff --git a/vmm/task/vendor/image-rs/.cargo-checksum.json b/vmm/task/vendor/image-rs/.cargo-checksum.json +index c38aef3b..77e2a62f 100644 +--- a/vmm/task/vendor/image-rs/.cargo-checksum.json ++++ b/vmm/task/vendor/image-rs/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"Cargo.toml":"3601151f22cd7349dd3c72af25294d91736259d9f9efb384ba300d4047a5b9b0","README.md":"651283f085b68260ac02c71d97e45d26154ddd4989f813eda39a99e24b7b7990","build.rs":"8e62a93999936c85c250897241080cbc34caf61c3dfca9673a275b08e243cb94","docs/ccv1_image_security_design.md":"9bc835c5595907b842ae3c081e2f15525268c5038adef7e50054b0fc801230ad","docs/design.md":"f8eef3ff550945a2d523388804e91a299eca3fde332137ea9c93c9c8c0e321fd","docs/image_auth.md":"4e86e7f3b47b489d0ec4d967854a7f70bbdc836ff3fb40b6b3827254bd702d78","docs/images/architecture.png":"685856992e0394db5e817123233c95a63ca7d41a6f909bcfe67a9dd223f61862","docs/images/architecture.pptx":"eff369137cfe42b755a6c6f6c8ed34875292a8f56a4bb045602e2a927c4787f0","docs/images/security-1.png":"c82b57550d86d1a43788b4a4910668a6ffc352a3553a98b655bd765425098749","docs/pull_image_with_nydus.md":"9fd6886442902edb2cda7c0daf8e43205889ea20b5df92b331b14398f7c05c8e","docs/quickstart/image_signing.md":"a18135999e341afac9a0b56a120d23d93e52614b08e7c9105789526e85e45fd6","protos/getresource.proto":"14ec4294ecf34fc5e2c542d993711d8d05f8eac2719ede8c6eb28f2f421d87e5","scripts/build_confidential_data_hub.sh":"703789109ee076db33e993c4f96c9a5b8da1594007c6e985d1089c32e056e658","scripts/install_offline_fs_kbc_files.sh":"4c8788ab564d0b8295a15556ea3039fc9c932e547590c4e01c59b002ffc95bed","scripts/install_test_signatures.sh":"6fe4147fa0e0826fe003dd159fd4a0a6f2c9d3f5240b91e9119a209e11357279","src/auth/README.md":"4124720af91a3a655cb4adc7ee991527485af6357e2d72eb64436e547ba2ce87","src/auth/auth_config.rs":"afbc9fcf87c551c2d2065e104fd26ac62e8e47ba630c9d62ff412976d5b05569","src/auth/mod.rs":"86d3cf5b54624d20660d5ac7b595fc031c0d570d7731560e89990587828d7617","src/bundle.rs":"f14d6f0adda12f63f738b023e58b44e48b7f72b4bea46480d3ef39569955408b","src/config.rs":"0b05ec5bc270d2058cf72a55db08faa8a2832078d226c8a754c6273a831da4bb","src/decoder/mod.rs":"0e6c890da5c0225f3880c29b7e76231fcda1774cc444400b680d67b45d6c04b3","src/decrypt.rs":"0242a0b22201495810f253e61871266534d94f84e0a667dee04935d0955a94c4","src/digest.rs":"13fc2528280a16452d26fcf82b216dc249979dbfda4936007b711fb18e65ab84","src/image.rs":"398ce8b8b9e65b3f50ee248ae2aec14cde9eb75e03d30aaacc5f97e1a3213ebd","src/lib.rs":"43df74f96b12ee03023b33b699ff0c6cb48fb222151e85e5185faf6f4f66829b","src/meta_store.rs":"62718b8e3bf32a0df10bdee0011b426db9ba2f09aaf2f1d74aee573d5b9e1f4a","src/nydus/mod.rs":"0b2c24593006cc8b447c72810721cda176ffffb911db3cc5804b11a1f8c82fb1","src/nydus/service.rs":"5ee006a6228c56429833166a6b9ce22a3eaaa9ffd9efcc5b0d75771b70a825bb","src/nydus/utils.rs":"0f7f21e400d5acd0ae840c261304cb36098919de59f1a077e752046c09c6d354","src/pull.rs":"8880a546155a1145444c1051690d944bab6e73d33e8a87a46adcff449cf87527","src/resource/kbs/grpc.rs":"e3f165c1c950605aecd394a39931072a862f3947dac9f3a16af8405099159515","src/resource/kbs/mod.rs":"0770d79baa8468f7d02dd15162e4d4b3faf0125b12be5cdd263e0a306a1e7f75","src/resource/kbs/native.rs":"b2c8ac8174fd25450ed20c5d0a639049c2e3c161db4891e96095322e0d833357","src/resource/kbs/ttrpc.rs":"97beed44677f0dac30e2f9d112c93d10f8f73e6c1ed11404ee014374857a2d37","src/resource/kbs/ttrpc_proto/getresource.rs":"2ed2f8a82dfab093d5854be330f5ed4425dd327b1bd0816521a775c257ec2e74","src/resource/kbs/ttrpc_proto/getresource_ttrpc.rs":"31f79fd482a8eb2968e4d8607630e5ca7101c68be995301c1b6266e63ed95251","src/resource/kbs/ttrpc_proto/mod.rs":"928b32059682ac257d177f1d2a04c83beb8c1fea88c1379c3cde0204888352a3","src/resource/mod.rs":"21fb607eef9319a1a67413826529e52839d03953afb5d6c03b20a89e12aef85b","src/signature/README.md":"56aadf460f1b92469ec9162d73152e176cb84367220597af6f9d265bcffa909c","src/signature/image/digest.rs":"f0df2e437199da72dbd71f06f04aac058230892a81dd4d1db882a8b648e9f21f","src/signature/image/mod.rs":"9a9377e097fb60665ee3508c3f7ca5b0c11fc32599d2b45a184194d0d96af602","src/signature/mechanism/cosign/README.md":"c1746aba4953ddcd0c2d5766843dc2db571f86cbdbd879d652e07f58cc8d04e7","src/signature/mechanism/cosign/mod.rs":"8eb24930014fc2fb125a74895b098e583a7932e66004cfb98150a54a1726b3eb","src/signature/mechanism/mod.rs":"1d45bb1f459b9488f66c43f972ce64d8869e0aa9f8787d4b985f36245edb2057","src/signature/mechanism/simple/README.md":"8244d64d93c01d9754efb1de77a6b27ce45341589750d69f9afc3b248f0e097f","src/signature/mechanism/simple/mod.rs":"cfb05d533f618ce8b4d2e12a702876e026f79020dbc5b66fa3eaef87b7ff4b9b","src/signature/mechanism/simple/sigstore.rs":"3a224c426e833e28035fb121ff11388d6c0f52400a0496e80409b80d4fe77c90","src/signature/mechanism/simple/verify.rs":"3eea434d7e0e65687f175e489986b3fcc8b09ee1c5eb91d21490248de7aa0d69","src/signature/mechanism/simple/xrss.rs":"275f966ab920b3b95b3e40cee417078d90850bb12131050d6141c2c2c582d0c3","src/signature/mod.rs":"f6d4dec30b49edd60ca5792f75f4065dc4f6cb3f44b101702bb6916b16832f90","src/signature/payload/mod.rs":"9730a61c7f9a9d8d12b9a3840335ab3abf31245b0c257d0513bab3fd725e6edc","src/signature/payload/simple_signing.rs":"56376256d4b60644338143a2bd5c680a927d46da83fecb5e6017ff249f952481","src/signature/policy/mod.rs":"7607177f1938c5a9b7d932fc26f6cf6ea6350bbd4253aa85ade0ad9139aeb8c8","src/signature/policy/policy_requirement.rs":"9b9a63dd816968894e62bed7824dc42504dd0c6da1603c651fcbd27867ed564b","src/signature/policy/ref_match.rs":"76b5ca57d5282ba9abe3df09727074ee551d596e5fb77758cacf88b557dcdcd0","src/snapshots/mod.rs":"19591a9ff3ac8e370db481026ec1525406d2ef34864e07b3818b31a0594ce7ff","src/snapshots/occlum/mod.rs":"d013510727adda0e8343163462b3218da09f3dee18ddde528f37f20194d0bdd1","src/snapshots/occlum/unionfs.rs":"436be2e615687de9ea1d6333c219250546e9a32c38b32e58d7446d4665a1546b","src/snapshots/overlay.rs":"74ff7c8ae8e4f92db86a259dfd5672884a970bb571c37819eb8b2394c2b57f4a","src/stream.rs":"8deff3b7ac450554a44119bfe752dbf88135c37834477655141e0dceb4ae82e3","src/unpack.rs":"d5ea3499715d46491d03b77dfaefbc15fc797e708e2c882ca345084682cf20aa","src/verity/dmverity.rs":"30ff8f7a11b4102aa44792f7581d0dbb0542b6d173b764b07ae42365a729d464","src/verity/mod.rs":"c5a39a83f932b1fe229b9708705d9eb0fc132b662d617f2e926b5039d33d7c90","test_data/Dockerfile":"e410a98036b5b64c5bbf8d847d3b0f0afa7997c42c4b42ab1e4c1b3a5dc06c78","test_data/generate_test_data.md":"3df24cf031e95405f85fecb7d032ea2c78867e5d0344f53ed81ddb6cad0c71af","test_data/ocicrypt_keyprovider_grpc.conf":"43672d2d3937625e04d3cfc57cab3e58c3563b4c4f80a10493fbd55ea24a704b","test_data/ocicrypt_keyprovider_ttrpc.conf":"e164b1f3341b00e06b0c1040572dcacf40cbff27d9bd5985dc3f7af7eaed402b","test_data/offline-fs-kbc/aa-offline_fs_kbc-keys.json":"8e02abb295179e684d86365c486f3e1f1336c97fb99a7f03c554f28328a313a2","test_data/offline-fs-kbc/aa-offline_fs_kbc-resources-for-icr.json":"939d7ee0ca800f5acff6d33e1ad36cad105d7b9c477428420c6e535c6cbe2ca2","test_data/offline-fs-kbc/aa-offline_fs_kbc-resources.json":"0d912a524e32d1fb1976bfa2c4d871fb6e2913ae716e595a9bea8d715455f0b4","test_data/private_key_for_tests.pem":"eaa87a05450f6119ceec2c2634dafb36059e15cc72f6da2b7befde20cb870d17","test_data/public_key_for_tests.pem":"372fedb8e85ef17d845db869ddfb5f1e7a0f60ff198f98f4215308d5ac9ec88d","test_data/signature/cosign/cosign.key":"e691142dd555f310ad938a8fe3a49912c47bccff8efbb79f1f25cb06fa283a2a","test_data/signature/cosign/cosign1.pub":"c8307ca2cbba9cf09d05a00f63518e7d65db302bf0a6d2aa6b7f2a97305f63a8","test_data/signature/cosign/cosign2.key":"48e02178735c9c13f5e6cd27d8817aaa11599258a2d9306227f5279f3ecdad79","test_data/signature/cosign/cosign2.pub":"7fc554782c09a3c374f6606d71ff087d2f5e11f126833f0686c38e56daba1308","test_data/signature/cosign/cosign3.pub":"318f757bc0797421d0bee0d7ce446c4925bab561a6d1b1664624d67f7df24688","test_data/signature/policy.json":"303291de57b59cee42771e6164ed812948af24418e91a26f62c7efa484b363b6","test_data/signature/pubring.gpg":"a92d218b05f4f15bdb14992d310429aa3acf66abe41b010b1d2c2866f3aeccef","test_data/signature/signatures/signature-1":"aaa5a02f6eb5c22e4fecd9fd736f525e0c52913e2f3b3fddb2845c063fc417be","test_data/signature/signatures/signature-2":"aaa5a02f6eb5c22e4fecd9fd736f525e0c52913e2f3b3fddb2845c063fc417be","test_data/signature/sigstore_config/get_base_url/res.yaml":"cc0039890bbf7de921b8e8bae1092bcfb0b98c56f392c9938e87b09e42ca8701","test_data/signature/sigstore_config/merged_result/res1.yaml":"479a89e00ce408afd90bb4ac254d5db7810748f37800af38cdf477f482795c0d","test_data/signature/sigstore_config/merged_result/res2.yaml":"479a89e00ce408afd90bb4ac254d5db7810748f37800af38cdf477f482795c0d","test_data/signature/sigstore_config/merged_result/res3.yaml":"cc0039890bbf7de921b8e8bae1092bcfb0b98c56f392c9938e87b09e42ca8701","test_data/signature/sigstore_config/test_case_1/1.yaml":"479a89e00ce408afd90bb4ac254d5db7810748f37800af38cdf477f482795c0d","test_data/signature/sigstore_config/test_case_1/2.yaml":"07494ebfda18f7e1bc3205c0a0bd5a8b4b41ad2a131c4ee2748e8e9027dd191b","test_data/signature/sigstore_config/test_case_2/1.yaml":"479a89e00ce408afd90bb4ac254d5db7810748f37800af38cdf477f482795c0d","test_data/signature/sigstore_config/test_case_2/2.yaml":"56bb56b4cb815c0f8a14326b94ea25c748c6ef57bdbb2c54242b77828428642c","test_data/signature/sigstore_config/test_case_3/1.yaml":"32db1080fc6f7626247ef09d17aa7c044cf0da3d0cbb2264c5800cf7ca4163f0","test_data/signature/sigstore_config/test_case_3/2.yaml":"05fab7af044bc923851dcdce3f1b7178478d085379fd58742d6a61025e0a350b","test_data/simple-signing-scheme/pubkey.gpg":"5ed254e873157d2e136831216dffe4dfef79663db6e0a6ff25a7599fe4482aa3","test_data/simple-signing-scheme/security_policy.json":"265cc3c741c4429ce8990bfc8358e83cf05ff5005b441673a02a63594226daaf","test_data/simple-signing-scheme/signatures.tar":"e110b6606cf54759ac214c4f7eb776ebdb347f3cf371cfd2e02024b137b15f48","test_data/simple-signing-scheme/sigstore_config.yaml":"388746364789961ef29274d5d72741593fa21768fe6594b15b5ffe25e6a8e9b3","tests/README.md":"22eb67608800012c90d0810115718728440687fc9d2f3967757c5a2d3b33e0c1","tests/common/mod.rs":"03930a0921b64d99492662d20acc42d46e486882831c06e1169e1bbde3b5881c","tests/credential.rs":"5baafda949509361088d09589548d5eef023952913a9f142bb3d01235f3c2034","tests/image_decryption.rs":"0e7c639ffd657489184cb6a9644c97c3a37afceba22cb07379d37505829330b5","tests/signature_verification.rs":"0b5f593e8d8da86f9baa012eacf7715bc5f1b460562576f50c53840162fdc042"},"package":null} +\ No newline at end of file ++{"files":{"Cargo.toml":"3601151f22cd7349dd3c72af25294d91736259d9f9efb384ba300d4047a5b9b0","README.md":"651283f085b68260ac02c71d97e45d26154ddd4989f813eda39a99e24b7b7990","build.rs":"8e62a93999936c85c250897241080cbc34caf61c3dfca9673a275b08e243cb94","docs/ccv1_image_security_design.md":"9bc835c5595907b842ae3c081e2f15525268c5038adef7e50054b0fc801230ad","docs/design.md":"f8eef3ff550945a2d523388804e91a299eca3fde332137ea9c93c9c8c0e321fd","docs/image_auth.md":"4e86e7f3b47b489d0ec4d967854a7f70bbdc836ff3fb40b6b3827254bd702d78","docs/images/architecture.png":"685856992e0394db5e817123233c95a63ca7d41a6f909bcfe67a9dd223f61862","docs/images/architecture.pptx":"eff369137cfe42b755a6c6f6c8ed34875292a8f56a4bb045602e2a927c4787f0","docs/images/security-1.png":"c82b57550d86d1a43788b4a4910668a6ffc352a3553a98b655bd765425098749","docs/pull_image_with_nydus.md":"9fd6886442902edb2cda7c0daf8e43205889ea20b5df92b331b14398f7c05c8e","docs/quickstart/image_signing.md":"a18135999e341afac9a0b56a120d23d93e52614b08e7c9105789526e85e45fd6","protos/getresource.proto":"14ec4294ecf34fc5e2c542d993711d8d05f8eac2719ede8c6eb28f2f421d87e5","scripts/build_confidential_data_hub.sh":"703789109ee076db33e993c4f96c9a5b8da1594007c6e985d1089c32e056e658","scripts/install_offline_fs_kbc_files.sh":"4c8788ab564d0b8295a15556ea3039fc9c932e547590c4e01c59b002ffc95bed","scripts/install_test_signatures.sh":"6fe4147fa0e0826fe003dd159fd4a0a6f2c9d3f5240b91e9119a209e11357279","src/auth/README.md":"4124720af91a3a655cb4adc7ee991527485af6357e2d72eb64436e547ba2ce87","src/auth/auth_config.rs":"afbc9fcf87c551c2d2065e104fd26ac62e8e47ba630c9d62ff412976d5b05569","src/auth/mod.rs":"86d3cf5b54624d20660d5ac7b595fc031c0d570d7731560e89990587828d7617","src/bundle.rs":"f14d6f0adda12f63f738b023e58b44e48b7f72b4bea46480d3ef39569955408b","src/config.rs":"0b05ec5bc270d2058cf72a55db08faa8a2832078d226c8a754c6273a831da4bb","src/decoder/mod.rs":"0e6c890da5c0225f3880c29b7e76231fcda1774cc444400b680d67b45d6c04b3","src/decrypt.rs":"0242a0b22201495810f253e61871266534d94f84e0a667dee04935d0955a94c4","src/digest.rs":"13fc2528280a16452d26fcf82b216dc249979dbfda4936007b711fb18e65ab84","src/image.rs":"398ce8b8b9e65b3f50ee248ae2aec14cde9eb75e03d30aaacc5f97e1a3213ebd","src/lib.rs":"43df74f96b12ee03023b33b699ff0c6cb48fb222151e85e5185faf6f4f66829b","src/meta_store.rs":"62718b8e3bf32a0df10bdee0011b426db9ba2f09aaf2f1d74aee573d5b9e1f4a","src/nydus/mod.rs":"0b2c24593006cc8b447c72810721cda176ffffb911db3cc5804b11a1f8c82fb1","src/nydus/service.rs":"5ee006a6228c56429833166a6b9ce22a3eaaa9ffd9efcc5b0d75771b70a825bb","src/nydus/utils.rs":"0f7f21e400d5acd0ae840c261304cb36098919de59f1a077e752046c09c6d354","src/pull.rs":"f4279eea9480619edab8b542fa1a9550376d6d01294cd59beeed10d539b073f6","src/resource/kbs/grpc.rs":"e3f165c1c950605aecd394a39931072a862f3947dac9f3a16af8405099159515","src/resource/kbs/mod.rs":"0770d79baa8468f7d02dd15162e4d4b3faf0125b12be5cdd263e0a306a1e7f75","src/resource/kbs/native.rs":"b2c8ac8174fd25450ed20c5d0a639049c2e3c161db4891e96095322e0d833357","src/resource/kbs/ttrpc.rs":"97beed44677f0dac30e2f9d112c93d10f8f73e6c1ed11404ee014374857a2d37","src/resource/kbs/ttrpc_proto/getresource.rs":"2ed2f8a82dfab093d5854be330f5ed4425dd327b1bd0816521a775c257ec2e74","src/resource/kbs/ttrpc_proto/getresource_ttrpc.rs":"31f79fd482a8eb2968e4d8607630e5ca7101c68be995301c1b6266e63ed95251","src/resource/kbs/ttrpc_proto/mod.rs":"928b32059682ac257d177f1d2a04c83beb8c1fea88c1379c3cde0204888352a3","src/resource/mod.rs":"21fb607eef9319a1a67413826529e52839d03953afb5d6c03b20a89e12aef85b","src/signature/README.md":"56aadf460f1b92469ec9162d73152e176cb84367220597af6f9d265bcffa909c","src/signature/image/digest.rs":"f0df2e437199da72dbd71f06f04aac058230892a81dd4d1db882a8b648e9f21f","src/signature/image/mod.rs":"9a9377e097fb60665ee3508c3f7ca5b0c11fc32599d2b45a184194d0d96af602","src/signature/mechanism/cosign/README.md":"c1746aba4953ddcd0c2d5766843dc2db571f86cbdbd879d652e07f58cc8d04e7","src/signature/mechanism/cosign/mod.rs":"8eb24930014fc2fb125a74895b098e583a7932e66004cfb98150a54a1726b3eb","src/signature/mechanism/mod.rs":"1d45bb1f459b9488f66c43f972ce64d8869e0aa9f8787d4b985f36245edb2057","src/signature/mechanism/simple/README.md":"8244d64d93c01d9754efb1de77a6b27ce45341589750d69f9afc3b248f0e097f","src/signature/mechanism/simple/mod.rs":"cfb05d533f618ce8b4d2e12a702876e026f79020dbc5b66fa3eaef87b7ff4b9b","src/signature/mechanism/simple/sigstore.rs":"3a224c426e833e28035fb121ff11388d6c0f52400a0496e80409b80d4fe77c90","src/signature/mechanism/simple/verify.rs":"3eea434d7e0e65687f175e489986b3fcc8b09ee1c5eb91d21490248de7aa0d69","src/signature/mechanism/simple/xrss.rs":"275f966ab920b3b95b3e40cee417078d90850bb12131050d6141c2c2c582d0c3","src/signature/mod.rs":"f6d4dec30b49edd60ca5792f75f4065dc4f6cb3f44b101702bb6916b16832f90","src/signature/payload/mod.rs":"9730a61c7f9a9d8d12b9a3840335ab3abf31245b0c257d0513bab3fd725e6edc","src/signature/payload/simple_signing.rs":"56376256d4b60644338143a2bd5c680a927d46da83fecb5e6017ff249f952481","src/signature/policy/mod.rs":"7607177f1938c5a9b7d932fc26f6cf6ea6350bbd4253aa85ade0ad9139aeb8c8","src/signature/policy/policy_requirement.rs":"9b9a63dd816968894e62bed7824dc42504dd0c6da1603c651fcbd27867ed564b","src/signature/policy/ref_match.rs":"76b5ca57d5282ba9abe3df09727074ee551d596e5fb77758cacf88b557dcdcd0","src/snapshots/mod.rs":"19591a9ff3ac8e370db481026ec1525406d2ef34864e07b3818b31a0594ce7ff","src/snapshots/occlum/mod.rs":"d013510727adda0e8343163462b3218da09f3dee18ddde528f37f20194d0bdd1","src/snapshots/occlum/unionfs.rs":"436be2e615687de9ea1d6333c219250546e9a32c38b32e58d7446d4665a1546b","src/snapshots/overlay.rs":"74ff7c8ae8e4f92db86a259dfd5672884a970bb571c37819eb8b2394c2b57f4a","src/stream.rs":"8deff3b7ac450554a44119bfe752dbf88135c37834477655141e0dceb4ae82e3","src/unpack.rs":"d5ea3499715d46491d03b77dfaefbc15fc797e708e2c882ca345084682cf20aa","src/verity/dmverity.rs":"30ff8f7a11b4102aa44792f7581d0dbb0542b6d173b764b07ae42365a729d464","src/verity/mod.rs":"c5a39a83f932b1fe229b9708705d9eb0fc132b662d617f2e926b5039d33d7c90","test_data/Dockerfile":"e410a98036b5b64c5bbf8d847d3b0f0afa7997c42c4b42ab1e4c1b3a5dc06c78","test_data/generate_test_data.md":"3df24cf031e95405f85fecb7d032ea2c78867e5d0344f53ed81ddb6cad0c71af","test_data/ocicrypt_keyprovider_grpc.conf":"43672d2d3937625e04d3cfc57cab3e58c3563b4c4f80a10493fbd55ea24a704b","test_data/ocicrypt_keyprovider_ttrpc.conf":"e164b1f3341b00e06b0c1040572dcacf40cbff27d9bd5985dc3f7af7eaed402b","test_data/offline-fs-kbc/aa-offline_fs_kbc-keys.json":"8e02abb295179e684d86365c486f3e1f1336c97fb99a7f03c554f28328a313a2","test_data/offline-fs-kbc/aa-offline_fs_kbc-resources-for-icr.json":"939d7ee0ca800f5acff6d33e1ad36cad105d7b9c477428420c6e535c6cbe2ca2","test_data/offline-fs-kbc/aa-offline_fs_kbc-resources.json":"0d912a524e32d1fb1976bfa2c4d871fb6e2913ae716e595a9bea8d715455f0b4","test_data/private_key_for_tests.pem":"eaa87a05450f6119ceec2c2634dafb36059e15cc72f6da2b7befde20cb870d17","test_data/public_key_for_tests.pem":"372fedb8e85ef17d845db869ddfb5f1e7a0f60ff198f98f4215308d5ac9ec88d","test_data/signature/cosign/cosign.key":"e691142dd555f310ad938a8fe3a49912c47bccff8efbb79f1f25cb06fa283a2a","test_data/signature/cosign/cosign1.pub":"c8307ca2cbba9cf09d05a00f63518e7d65db302bf0a6d2aa6b7f2a97305f63a8","test_data/signature/cosign/cosign2.key":"48e02178735c9c13f5e6cd27d8817aaa11599258a2d9306227f5279f3ecdad79","test_data/signature/cosign/cosign2.pub":"7fc554782c09a3c374f6606d71ff087d2f5e11f126833f0686c38e56daba1308","test_data/signature/cosign/cosign3.pub":"318f757bc0797421d0bee0d7ce446c4925bab561a6d1b1664624d67f7df24688","test_data/signature/policy.json":"303291de57b59cee42771e6164ed812948af24418e91a26f62c7efa484b363b6","test_data/signature/pubring.gpg":"a92d218b05f4f15bdb14992d310429aa3acf66abe41b010b1d2c2866f3aeccef","test_data/signature/signatures/signature-1":"aaa5a02f6eb5c22e4fecd9fd736f525e0c52913e2f3b3fddb2845c063fc417be","test_data/signature/signatures/signature-2":"aaa5a02f6eb5c22e4fecd9fd736f525e0c52913e2f3b3fddb2845c063fc417be","test_data/signature/sigstore_config/get_base_url/res.yaml":"cc0039890bbf7de921b8e8bae1092bcfb0b98c56f392c9938e87b09e42ca8701","test_data/signature/sigstore_config/merged_result/res1.yaml":"479a89e00ce408afd90bb4ac254d5db7810748f37800af38cdf477f482795c0d","test_data/signature/sigstore_config/merged_result/res2.yaml":"479a89e00ce408afd90bb4ac254d5db7810748f37800af38cdf477f482795c0d","test_data/signature/sigstore_config/merged_result/res3.yaml":"cc0039890bbf7de921b8e8bae1092bcfb0b98c56f392c9938e87b09e42ca8701","test_data/signature/sigstore_config/test_case_1/1.yaml":"479a89e00ce408afd90bb4ac254d5db7810748f37800af38cdf477f482795c0d","test_data/signature/sigstore_config/test_case_1/2.yaml":"07494ebfda18f7e1bc3205c0a0bd5a8b4b41ad2a131c4ee2748e8e9027dd191b","test_data/signature/sigstore_config/test_case_2/1.yaml":"479a89e00ce408afd90bb4ac254d5db7810748f37800af38cdf477f482795c0d","test_data/signature/sigstore_config/test_case_2/2.yaml":"56bb56b4cb815c0f8a14326b94ea25c748c6ef57bdbb2c54242b77828428642c","test_data/signature/sigstore_config/test_case_3/1.yaml":"32db1080fc6f7626247ef09d17aa7c044cf0da3d0cbb2264c5800cf7ca4163f0","test_data/signature/sigstore_config/test_case_3/2.yaml":"05fab7af044bc923851dcdce3f1b7178478d085379fd58742d6a61025e0a350b","test_data/simple-signing-scheme/pubkey.gpg":"5ed254e873157d2e136831216dffe4dfef79663db6e0a6ff25a7599fe4482aa3","test_data/simple-signing-scheme/security_policy.json":"265cc3c741c4429ce8990bfc8358e83cf05ff5005b441673a02a63594226daaf","test_data/simple-signing-scheme/signatures.tar":"e110b6606cf54759ac214c4f7eb776ebdb347f3cf371cfd2e02024b137b15f48","test_data/simple-signing-scheme/sigstore_config.yaml":"388746364789961ef29274d5d72741593fa21768fe6594b15b5ffe25e6a8e9b3","tests/README.md":"22eb67608800012c90d0810115718728440687fc9d2f3967757c5a2d3b33e0c1","tests/common/mod.rs":"03930a0921b64d99492662d20acc42d46e486882831c06e1169e1bbde3b5881c","tests/credential.rs":"5baafda949509361088d09589548d5eef023952913a9f142bb3d01235f3c2034","tests/image_decryption.rs":"0e7c639ffd657489184cb6a9644c97c3a37afceba22cb07379d37505829330b5","tests/signature_verification.rs":"0b5f593e8d8da86f9baa012eacf7715bc5f1b460562576f50c53840162fdc042"},"package":null} +\ No newline at end of file +diff --git a/vmm/task/vendor/image-rs/src/pull.rs b/vmm/task/vendor/image-rs/src/pull.rs +index f1185fe2..65731948 100644 +--- a/vmm/task/vendor/image-rs/src/pull.rs ++++ b/vmm/task/vendor/image-rs/src/pull.rs +@@ -46,7 +46,12 @@ impl<'a> PullClient<'a> { + auth: &'a RegistryAuth, + max_concurrent_download: usize, + ) -> Result> { +- let client = Client::default(); ++ // let client = Client::default(); ++ use oci_client::{client::ClientConfig, client::ClientProtocol}; ++ let client = Client::new(ClientConfig { ++ protocol: ClientProtocol::Http, ++ ..Default::default() ++ }); + + Ok(PullClient { + client, +-- +2.46.0 + diff --git a/initrd/make-initrd-rpm.list b/rootfs/make-initrd-rpm.list similarity index 100% rename from initrd/make-initrd-rpm.list rename to rootfs/make-initrd-rpm.list diff --git a/initrd/make_kuasar_initrd.sh b/rootfs/make_kuasar_initrd.sh similarity index 100% rename from initrd/make_kuasar_initrd.sh rename to rootfs/make_kuasar_initrd.sh diff --git a/rootfs/make_kuasar_virtcca_image.sh b/rootfs/make_kuasar_virtcca_image.sh new file mode 100755 index 0000000000000000000000000000000000000000..415efe9d3030cd1adfe3c5acc97e6edd787832da --- /dev/null +++ b/rootfs/make_kuasar_virtcca_image.sh @@ -0,0 +1,118 @@ +#!/bin/bash + +# Copyright (c) Huawei Technologies Co., Ltd. 2025. All rights reserved. +# kata_integration is licensed under the Mulan PSL v2. +# You can use this software according to the terms and conditions of the Mulan PSL v2. +# You may obtain a copy of Mulan PSL v2 at: +#     http://license.coscl.org.cn/MulanPSL2 +# THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR +# PURPOSE. +# See the Mulan PSL v2 for more details. +# Description: make kuasar initrd + +script_dir="$(dirname $(readlink -f $0))" +rpmlist=${script_dir}/make-initrd-rpm.list + +IMAGE_NAME=${IMAGE_NAME:-rootfs.img} +ROOTFS_DIR=${ROOTFS_DIR:-/tmp/kuasar-rootfs} + +# create a temp dir to store rootfs +rm -rf ${ROOTFS_DIR} +mkdir -p ${ROOTFS_DIR}/lib \ + ${ROOTFS_DIR}/lib64 \ + ${ROOTFS_DIR}/lib/modules + +mkdir -m 0755 -p ${ROOTFS_DIR}/dev \ + ${ROOTFS_DIR}/sys \ + ${ROOTFS_DIR}/sbin \ + ${ROOTFS_DIR}/bin \ + ${ROOTFS_DIR}/tmp \ + ${ROOTFS_DIR}/proc \ + ${ROOTFS_DIR}/etc + + +touch ${ROOTFS_DIR}/etc/resolv.conf + +if [ ! -f "${script_dir}/vmm-task" ];then + echo "vmm-task doesn't exist!" + exit 1 +fi + + +# busybox +cp /sbin/busybox ${ROOTFS_DIR}/sbin/ +cp ${script_dir}/vmm-task ${ROOTFS_DIR}/sbin/init +# glibc-devel glibc +cp /lib64/libnss_dns* ${ROOTFS_DIR}/lib64 +cp /lib64/libnss_files* ${ROOTFS_DIR}/lib64 + +# cp run request files in initrd +# 读取rpmlist文件,并赋值给rpm变量 +cat $rpmlist | while read rpm +do + # 检查rpm是否以"#"开头,不以"#"开头则走进去 + if [ "${rpm:0:1}" != "#" ]; then + # 检查包是否存在 + rpm -ql $rpm > /dev/null 2>&1 + # 不存在就跳过继续下一个 + if [ $? -ne 0 ]; then + continue + fi + # rpm -ql命令列出已安装软件包中的所有文件 + array=($(rpm -ql $rpm| grep -v "share" | grep -v ".build-id")) + echo ${array} + # 将包安装后所有要用到的文件拷贝到rootfs中 + for file in ${array[@]}; + do + source=$file + dts_file=${ROOTFS_DIR}$file + dts_folder=${dts_file%/*} + if [ ! -d "$dts_folder" ];then + mkdir -p $dts_folder + fi + cp -r -f -d $source $dts_folder + done + fi +done + +#create symlinks to busybox +# 在一个精简的根文件系统(root filesystem)中使用BusyBox提供的多种工具,而不需要为每种工具单独编译和安装一个独立的二进制文件。 +# BusyBox是一个集成了许多常见Linux命令的单个可执行文件,通过不同的启动参数可以模拟出多个命令的行为。 +BUSYBOX_BINARIES=(/bin/sh /bin/mount /bin/umount /bin/ls /bin/ps /bin/tar /bin/hwclock /sbin/modprobe /sbin/depmod /bin/ip /bin/modinfo /bin/insmod /bin/rmmod) +for bin in ${BUSYBOX_BINARIES[@]} +do + mkdir -p ${ROOTFS_DIR}/`dirname ${bin}` + ln -sf /sbin/busybox ${ROOTFS_DIR}/${bin} +done + +LDD_BINARIES=(/init /sbin/busybox /usr/bin/bash /usr/bin/runc) +for bin in ${LDD_BINARIES[@]} + do + # 使用ldd命令获取指定二进制所有的共享库,并将共享库解析复制到rootfs中 + ldd ${ROOTFS_DIR}${bin} | while read line + do + arr=(${line// / }) + + for lib in ${arr[@]} + do + echo $lib + if [ "${lib:0:1}" = "/" ]; then + dir=${ROOTFS_DIR}`dirname $lib` + mkdir -p "${dir}" + cp -f $lib $dir + fi + done + done + done + +dd if=/dev/zero of=/tmp/rootfs.img bs=1M count=5000 +cd /tmp +mkfs.ext4 rootfs.img +mkdir -p rootfs1 +mount rootfs.img rootfs1 +cp -rfp /tmp/kuasar-rootfs/* rootfs1/ +umount rootfs1 +e2fsck -p -f rootfs.img +resize2fs -M rootfs.img +cp rootfs.img ${script_dir} diff --git a/series.conf b/series.conf index d89e146bde3a11fa85a28ca986d940da1fe4cae6..52472a3d7085ffab6fea3ed3f75dbae195574715 100644 --- a/series.conf +++ b/series.conf @@ -6,3 +6,10 @@ 0006-add-ttrpc-rust-to-use-vendor.patch 0007-fix-use-ttrpc-rust-in-vendor.patch 0008-logfix-print-warn-instead-of-error-when-dir-not-foun.patch +0009-support-virtCCA.patch +0010-task-add-debug_shell-param.patch +0011-qemu-support-virtiofs.patch +0012-make-cc-kuasar-rpm-package.patch +0013-do-not-start-virtiofsd-process-when-share_type-is-9p.patch +0014-coco-support-confidential-containers-pull-image.patch +0015-image-rs-use-http.patch \ No newline at end of file diff --git a/vendor.tar.gz b/vendor.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..b26ec65eb5fdc6c9ce213509acd3d09e8881120e --- /dev/null +++ b/vendor.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abd072f68da8dc89848fbd38d4b60410e364b1b85d17534073c08b415f31cc62 +size 229374684