├── .bashrc ├── .gitignore ├── .vimrc ├── acme-tiny-renew.sh ├── backup.sh ├── bash-debugger ├── bdb-test.sh └── bdb.sh ├── build-websocat.sh ├── crypt ├── crypt-pcg.c ├── crypt.c ├── diagram.txt └── readme.md ├── drop-git-history.sh ├── gentoo ├── boot.script ├── oracle-cloud │ ├── .config │ ├── 1-start-migration │ ├── 2-finalize-migration │ ├── 3-cleanup-setup │ ├── etc-portage-make.conf │ ├── etc-portage-package.mask │ ├── etc-portage-package.use │ ├── to-gentoo │ └── world-update.sh └── world-update.sh ├── pm.sh ├── qemu ├── docker-config.sh ├── install-os-for-qemu.sh ├── qemu-cdrom.sh ├── qemu-fs-bench.sh ├── qemu-mapped.sh ├── qemu-passthrough-to-mapped.sh └── qemu-passthrough.sh ├── random-password.sh ├── random-password2.sh ├── random-password3.sh ├── reduce-pdf.sh ├── suse └── netboot │ ├── .gitignore │ ├── build.json │ ├── build.sh │ └── qemu.sh ├── terminal-graphics ├── mandelbrot-ascii.py ├── mandelbrot-sixel.py └── mandelbrot-utf8.py ├── transcode.sh └── ubuntu ├── iso ├── .gitignore ├── create-iso.sh └── docker-build.sh ├── netboot ├── .gitignore ├── build.json ├── build.sh ├── docker-build.sh └── qemu.sh ├── ubuntu-focal-zfs-install.sh ├── ubuntu-mantic-zfs-install.sh └── vm-debootstrap-ubuntu.sh /.bashrc: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | [ -n "$SSH_TTY" ] && [ "${BASH_SOURCE[0]}" == "${0}" ] && exec bash --rcfile "$SHELL" "$@" 4 | 5 | [ -z "$PS1" ] && return 6 | 7 | _SHELL=$SHELL 8 | ((SHLVL == 1)) && [ -r /etc/profile ] && . /etc/profile 9 | [ -r /etc/skel/.bashrc ] && . <(grep -v "^HIST.*SIZE=" /etc/skel/.bashrc) 10 | SHELL=$_SHELL && unset _SHELL 11 | [ -d "$HOME/bin" ] && [[ ":$PATH:" != *":$HOME/bin:"* ]] && PATH="$HOME/bin:$PATH" 12 | 13 | HISTSIZE=$((1024 * 1024)) 14 | HISTFILESIZE=$HISTSIZE 15 | HISTTIMEFORMAT='%t%F %T%t' 16 | HISTCONTROL=ignoreboth 17 | 18 | update_eternal_history() { 19 | local histfile_size=$(stat -c %s $HISTFILE 2>/dev/null || echo 0) bash_history=~/.bash_eternal_history old_umask=$(umask) 20 | history -a 21 | ((histfile_size == $(stat -c %s $HISTFILE 2>/dev/null || echo 0))) && return 22 | [ -p ${SHELL}.history ] && bash_history=${SHELL}.history 23 | umask 077 && echo -e "${USER}\t${HOSTNAME}\t${PWD}\t$(history 1)" >> $bash_history && umask $old_umask 24 | } 25 | 26 | [[ "$PROMPT_COMMAND" == *update_eternal_history* ]] || PROMPT_COMMAND="update_eternal_history;$PROMPT_COMMAND" 27 | 28 | alias c=cat 29 | alias h='history $((LINES - 1))' 30 | alias l="ls -aFC" 31 | alias ll="ls -aFl" 32 | alias m=less 33 | alias cp="cp -i" 34 | alias mv="mv -i" 35 | 36 | bak() { cp $1 $1.$(date +%%F_%T); } 37 | doh() { curl -s -H 'accept: application/dns+json' "https://dns.google.com/resolve?name=$1" | jq; } 38 | sshb() { 39 | local ssh="ssh -S $(mktemp --dry-run ~/.ssh/control-socket.XXXXXXXX)" 40 | local hostname=$(ssh -G "$@" | grep -oP "^hostname\s+\K.*") 41 | local user=$(ssh -G "$@" | grep -oP "^user\s+\K.*") 42 | local ssh_args=() 43 | 44 | $ssh -fNM "$@" || return $? 45 | # we collected ssh related command line options in ssh_args, everything after hostname is executed on the remote host 46 | while :; do ssh_args+=( "$1" ); shift; [ "${ssh_args[-1]}" == "$hostname" ] || [ "${ssh_args[-1]}" == "${user}@${hostname}" ] && break; done 47 | 48 | # check if tail is available 49 | if [ -n "$($ssh placeholder tail /dev/null || echo oops)" ] || [ -n "$*" ]; then 50 | # tail not available or remote command is not empty, let's ssh as is 51 | $ssh "${ssh_args[@]}" "$@" 52 | else 53 | # tail is available, no remote command, let's prepare shell 54 | local bashrc=~/.bashrc 55 | local bash_history=~/.bash_eternal_history 56 | local bash_ssh=.$LOGNAME.bash-ssh 57 | [[ $SHELL =~ .*bash-ssh$ ]] && bash_ssh=$(basename $SHELL) # because we may have nested ssh sessions with different user names 58 | local bash_ssh_history=${bash_ssh}.history 59 | [ -r ~/$bash_ssh ] && bashrc=~/$bash_ssh && bash_history=~/$bash_ssh_history 60 | $ssh placeholder "cat >~/$bash_ssh; [ -p ~/$bash_ssh_history ] || mkfifo -m 0600 ~/$bash_ssh_history" < $bashrc 61 | ( $ssh -n placeholder "tail -f ~/$bash_ssh_history" | while read -r; do echo "$REPLY" >> $bash_history; done & ) &> /dev/null 62 | $ssh -t "${ssh_args[@]}" "SHELL=~/$bash_ssh; chmod +x \$SHELL; exec bash --rcfile \$SHELL -i" 63 | fi 64 | $ssh placeholder -O exit &> /dev/null 65 | } 66 | 67 | type -f rbenv >/dev/null 2>&1 && eval "$(rbenv init -)" 68 | type -f pyenv >/dev/null 2>&1 && eval "$(pyenv init -)" 69 | 70 | [ -f ~/.ssh/id_ed25519 ] && [ -f ~/.ssh/id_ed25519.pub ] && { 71 | export SSH_AUTH_SOCK=~/.ssh/agent 72 | pgrep -f $SSH_AUTH_SOCK >/dev/null || { 73 | rm -f $SSH_AUTH_SOCK 74 | ssh-agent -a $SSH_AUTH_SOCK &>/dev/null 75 | } 76 | ssh-add -L | grep -q "$(cut -f1,2 -d' ' ~/.ssh/id_ed25519.pub)" || ssh-add 77 | } 78 | 79 | [ -r ~/.byobu/prompt ] && . ~/.byobu/prompt 80 | PS1=$(sed -e 's/..byobu_prompt_runtime..//' <<<"$PS1") 81 | 82 | export EDITOR=vim 83 | export DOCKER_HOST=unix:///var/run/docker.sock 84 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.sw? 2 | crypt/crypt 3 | crypt/crypt-pcg 4 | -------------------------------------------------------------------------------- /.vimrc: -------------------------------------------------------------------------------- 1 | " enable filetype detection: 2 | filetype on 3 | filetype plugin on 4 | filetype indent on " file type based indentation 5 | 6 | set number 7 | set expandtab "Use softtabstop spaces instead of tab characters for indentation 8 | set shiftwidth=4 "Indent by 4 spaces when using >>, <<, == etc. 9 | set softtabstop=4 "Indent by 4 spaces when pressing 10 | 11 | set autoindent "Keep indentation from previous line 12 | set smartindent "Automatically inserts indentation in some cases 13 | set cindent "Like smartindent, but stricter and more customisable 14 | 15 | " in makefiles, don't expand tabs to spaces, since actual tab characters are 16 | " needed, and have indentation at 8 chars to be sure that all indents are tabs 17 | " (despite the mappings later): 18 | autocmd FileType make set noexpandtab shiftwidth=8 softtabstop=0 19 | setlocal cm=blowfish2 20 | set nomodeline 21 | -------------------------------------------------------------------------------- /acme-tiny-renew.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # more information here: https://github.com/diafygi/acme-tiny 4 | 5 | set -uex 6 | 7 | ((UID != 0)) && exec sudo $0 "$@" 8 | 9 | exec &> >(tee /tmp/$(basename $0).log) 10 | 11 | acme_dir="/var/www/challenges/" 12 | seconds_per_day=$((60 * 60 * 24)) 13 | base_dir="/etc/acme-tiny" 14 | account_key="${base_dir}/account.key" 15 | check_expiration=true 16 | 17 | now_seconds=$(date +%s) 18 | certificate_updated=false 19 | 20 | renew_domain() { 21 | local domain=$1 22 | local domain_dir="${base_dir}/${domain}" 23 | local new_domain_dir="${domain_dir}.${now_seconds}" 24 | local fullchain_pem="${domain_dir}/fullchain.pem" 25 | local new_fullchain_pem="${new_domain_dir}/fullchain.pem" 26 | local new_privkey_pem="${new_domain_dir}/privkey.pem" 27 | local new_domain_csr="${new_domain_dir}/domain.csr" 28 | local not_after_seconds=0 29 | [ -f "$fullchain_pem" ] && not_after_seconds=$(date -d \ 30 | "$(openssl x509 -in "$fullchain_pem" -noout -dates | grep -oP "^notAfter=\K.*")" \ 31 | +%s) 32 | $check_expiration && ((not_after_seconds - now_seconds > 7 * seconds_per_day)) && return 33 | mkdir -p $new_domain_dir && chmod 0700 $new_domain_dir 34 | # Generate a domain private key 35 | openssl genrsa 4096 > "$new_privkey_pem" 36 | # Create a certificate signing request (CSR) for your domain 37 | openssl req -new -sha256 -key "$new_privkey_pem" -subj "/CN=${domain}" > "$new_domain_csr" 38 | mkdir -p "$acme_dir" 39 | acme-tiny --account-key "$account_key" --csr "$new_domain_csr" --acme-dir "$acme_dir" > "$new_fullchain_pem" 40 | ln -nsf $new_domain_dir $domain_dir 41 | ls -dt ${domain_dir}.* | tail -n +2 | xargs rm -rf 42 | certificate_updated=true 43 | } 44 | 45 | usage() { 46 | echo "Usage: $0 [-f] [-d domain_name]" 47 | exit 1 48 | } 49 | 50 | mkdir -p $base_dir 51 | [ -f "$account_key" ] || openssl genrsa 4096 > "$account_key" 52 | 53 | new_domains=() 54 | while (( $# )); do 55 | case ${1:-} in 56 | -f) check_expiration=false ;; 57 | -d) new_domains+=($2) && shift ;; 58 | *) echo "Error: unknown option \"$1\"" && usage ;; 59 | esac 60 | shift 61 | done 62 | 63 | cd $base_dir 64 | 65 | for domain in *; do 66 | [ -L $domain ] || continue 67 | renew_domain $domain 68 | done 69 | 70 | for domain in ${new_domains[*]}; do 71 | renew_domain $domain 72 | done 73 | 74 | $certificate_updated && /etc/init.d/nginx reload 75 | -------------------------------------------------------------------------------- /backup.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -ue 4 | 5 | HOST=${1:-$(hostname -s)} 6 | 7 | ((UID != 0)) && exec sudo -E $0 $HOST 8 | 9 | exec &> >(tee /tmp/$(basename $0).log) 10 | 11 | # interval_label interval_duration_in_seconds interval_backup_count 12 | CONFIG=( 13 | "hourly 3600 168" 14 | "daily 86400 180" 15 | "weekly 604800 104" 16 | "monthly 2419200 52" 17 | ) 18 | MIN_BACKUP_COUNT=24 19 | MIN_FREE_SPACE=$((1 * 1024 * 1024)) 20 | MIN_FREE_INODES=1000 21 | WORK_DIR=$(dirname $(readlink -f $0)) 22 | 23 | [[ "$WORK_DIR" =~ backup ]] || { 24 | echo "Error: WORK_DIR \"$WORK_DIR\" doesn't match \"backup\"" 25 | exit 26 | } 27 | 28 | get_lock() { 29 | local pid PID_LIST=$1 30 | while true; do 31 | while read pid; do 32 | kill -0 $pid || continue 33 | [ "$pid" != "$BASHPID" ] && return 1 34 | echo $BASHPID >$PID_LIST.new && mv $PID_LIST.new $PID_LIST && return 0 35 | done < $PID_LIST 36 | echo $BASHPID >>$PID_LIST 37 | done 2>/dev/null 38 | } 39 | 40 | rsync_options="" 41 | remote_host="" 42 | [ $HOST != $(hostname -s) ] && { 43 | rsync_options="-e ssh" 44 | remote_host="${SUDO_USER}@${HOST}:" 45 | } 46 | 47 | [ -d ${WORK_DIR}/${HOST} ] || { 48 | echo "Error: directory ${WORK_DIR}/${HOST} doesn't exist" 49 | exit 50 | } 51 | 52 | get_lock /tmp/$(basename $0).$HOST.pid || { 53 | echo "Error: another backup for $HOST is in progress" 54 | exit 55 | } 56 | 57 | [ -f ${WORK_DIR}/${HOST}/.config ] && . ${WORK_DIR}/${HOST}/.config 58 | latest=${WORK_DIR}/${HOST}/latest/ 59 | previous=$(ls -dt ${WORK_DIR}/${HOST}/* | grep -v "/latest$" | head -n1) 60 | [ -n "$previous" ] && rsync_options+=" --link-dest=$previous" 61 | 62 | cleanup_backups() { 63 | local label label_count dir_to_delete 64 | read label_count label < <(ls ${WORK_DIR}/${HOST}/ | cut -f3 -d_ | sort | uniq -c | sort -rn | head -n1) 65 | ((label_count < MIN_BACKUP_COUNT)) && { 66 | echo "Error: found $label_count backups with label \"$label\", need to keep at least $MIN_BACKUP_COUNT" 67 | exit 1 68 | } 69 | dir_to_delete=$(ls -dt ${WORK_DIR}/${HOST}/* | grep -P "/[^/]*_?${label}$" | tail -n1) 70 | echo "Cleanup: $dir_to_delete" 71 | nice rm -rf "$dir_to_delete" 72 | } 73 | 74 | while true; do 75 | nice rsync -av --ignore-errors --rsync-path='sudo rsync' $rsync_options ${remote_host}{/home,/etc} $latest || : 76 | read avail iavail < <(df --output=avail,iavail $WORK_DIR|sed 1d) 77 | ((avail > MIN_FREE_SPACE && iavail > MIN_FREE_INODES)) && break 78 | cleanup_backups 79 | done 80 | 81 | get_interval_label_and_count() { 82 | local label label_count label_duration timestamp now=$(date +%s) dir_name output 83 | while read label label_duration label_count; do 84 | # we need to prepare output here since outside of the loop label and label_count will be empty 85 | output="$label $label_count" 86 | dir_name=$(ls -dt ${WORK_DIR}/${HOST}/*_${label} 2>/dev/null | head -n1) 87 | timestamp=0 88 | [ -n "$dir_name" ] && timestamp=$(date -d "$(basename $dir_name | sed -e 's/_[^_]*$//' -e 's/_/ /')" +%s) 89 | ((now - timestamp > $label_duration)) && break 90 | done < <(printf "%s\n" "${CONFIG[@]}" | grep -P "^\S+\s+\d+\s+\d+$" | sort -rn -k2) 91 | # with grep in the previous line we ensure that we use only entries in proper format: string number number 92 | echo $output 93 | } 94 | 95 | # 0 is label, 1 is label_count 96 | label_params=( $(get_interval_label_and_count) ) 97 | 98 | mv $latest ${WORK_DIR}/${HOST}/$(date +%F_%T)_${label_params[0]}/ 99 | ls -dt ${WORK_DIR}/${HOST}/*_${label_params[0]} | tail -n +${label_params[1]} | xargs rm -rf 100 | -------------------------------------------------------------------------------- /bash-debugger/bdb-test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -eu 4 | 5 | print_arg() { 6 | local j=$((i+1)) 7 | echo "$j: $1" 8 | i=$j 9 | } 10 | 11 | i=0 12 | while (( $# )); do 13 | print_arg "$1" 14 | shift 15 | done 16 | -------------------------------------------------------------------------------- /bash-debugger/bdb.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # shellcheck disable=SC2162,SC1090 3 | 4 | _e() { [[ -n $BDB_COLOR_OUTPUT ]] && echo $'\e['"${1:-}"m; } 5 | 6 | __dbg__usage() { 7 | echo "bdb [...]" 8 | echo 9 | echo "Interactive bash script debugger." 10 | echo "Runs the with and can trace execution steps and/or pause at set breakpoints." 11 | echo 12 | echo "Commands:" 13 | __dbg__commands 14 | echo 15 | echo "Environment:" 16 | echo " BDB_COLOR_OUTPUT set to a non-empty string to enable colored output" 17 | echo 18 | echo "Hint: Use ^D instead of Enter to continue the execution." 19 | } 20 | __dbg__commands() { 21 | echo " bdb> h[elp] display command list" 22 | echo " bdb> t[race] toggle tracing mode [default: off]" 23 | echo " bdb> bl display breakpoint list" 24 | echo " bdb> ba add new breakpoint: pause if is true, checked every line of code" 25 | echo " bdb> bal add new breakpoint: pause at line number " 26 | echo " bdb> bae add new breakpoint: pause at every lines" 27 | echo " bdb> bd remove the breakpoint number (as in 'bl' command)" 28 | echo " bdb> run the arbitrary shell command; useful for checking variable values etc." 29 | } 30 | 31 | __dbg__breakpoints=() 32 | __dbg__trace=2 33 | __dbg__trap_count=0 34 | __dbg__trap() { 35 | local __dbg__cmd __dbg__cmd_args __dbg__set="$(set +o)" \ 36 | __dbg__do_break=false __dbg__breakpoint_num __dbg__breakpoint_idx 37 | set +eu 38 | ((__dbg__trap_count++)) 39 | 40 | for __dbg__breakpoint_num in $(seq ${#__dbg__breakpoints[@]}); do 41 | __dbg__breakpoint_idx=$((__dbg__breakpoint_num - 1)) 42 | eval "${__dbg__breakpoints[__dbg__breakpoint_idx]}" && __dbg__do_break=true && break 43 | done 44 | 45 | ((__dbg__trace == 2)) || $__dbg__do_break && { 46 | ((__dbg__trace != 2)) \ 47 | && echo -n "$(_e 31)[$__dbg__breakpoint_num] $(_e 36)$(basename "${BASH_SOURCE[1]}"):" \ 48 | && echo "$(_e 32)${BASH_LINENO[0]}: $(_e) $BASH_COMMAND" 49 | ((__dbg__trace == 2)) && __dbg__trace=0 50 | 51 | while read -p "$(_e 34)bdb> $(_e)" __dbg__cmd __dbg__cmd_args; do 52 | case $__dbg__cmd in 53 | '') eval "$__dbg__set" && return 0 ;; 54 | h|help) __dbg__commands ;; 55 | t|trace) ((__dbg__trace ^= 1)) ;; 56 | bl) printf "%s\n" "${__dbg__breakpoints[@]}" \ 57 | | grep . | cat -n ;; 58 | ba) __dbg__breakpoints+=("$__dbg__cmd_args") ;; 59 | bal) __dbg__breakpoints+=("(( BASH_LINENO == $__dbg__cmd_args ))") ;; 60 | bae) __dbg__breakpoints+=("(( __dbg__trap_count % $__dbg__cmd_args == 0 ))") ;; 61 | bd) unset __dbg__breakpoints[$((__dbg__cmd_args - 1))] \ 62 | && __dbg__breakpoints=("${__dbg__breakpoints[@]}") ;; 63 | *) eval "$__dbg__cmd $__dbg__cmd_args" ;; 64 | esac 65 | done 66 | return 67 | } 68 | 69 | ((__dbg__trace == 1)) \ 70 | && echo "$(_e 36)${BASH_SOURCE[1]}:$(_e 32)${BASH_LINENO[0]}:$(_e) $BASH_COMMAND" 71 | } 72 | 73 | [[ $1 =~ ^--?h(elp)? || $# -eq 0 ]] && __dbg__usage && exit 74 | set -T 75 | trap "__dbg__trap >/dev/tty" debug 76 | . "$@" 77 | -------------------------------------------------------------------------------- /build-websocat.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | rustup update 4 | cd ~/git/websocat 5 | git pull 6 | cargo build --release --features=ssl 7 | cargo build --target=armv7-unknown-linux-gnueabihf --release 8 | strip target/armv7-unknown-linux-gnueabihf/release/websocat 9 | strip target/release/websocat 10 | -------------------------------------------------------------------------------- /crypt/crypt-pcg.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include 10 | #include 11 | #include 12 | 13 | #define ENCRYPT_ACTION 1 14 | #define DECRYPT_ACTION 2 15 | 16 | #define BUFSIZE (1024 * 32) 17 | #define BITS_IN_BYTE 8 18 | #define BYTES_IN_UINT64_T 8 19 | #define BYTE_MASK 0xff 20 | #define PCG32_STATE_SIZE 4 21 | 22 | struct params_s { 23 | int in_file; 24 | int out_file; 25 | uint8_t *password; 26 | int action; 27 | }; 28 | 29 | 30 | // https://www.pcg-random.org/download.html 31 | // https://en.wikipedia.org/wiki/Permuted_congruential_generator 32 | uint32_t pcg32_random_r(uint64_t state[]) { 33 | uint64_t oldstate = state[0]; 34 | // Advance internal state 35 | state[0] = oldstate * 6364136223846793005ULL + (state[1]|1); 36 | // Calculate output function (XSH RR), uses old state for max ILP 37 | uint32_t xorshifted = ((oldstate >> 18u) ^ oldstate) >> 27u; 38 | uint32_t rot = oldstate >> 59u; 39 | return (xorshifted >> rot) | (xorshifted << ((-rot) & 31)); 40 | } 41 | 42 | void usage(uint8_t *program_name) { 43 | printf("Usage: %s -i INPUT_FILE -o OUTPUT_FILE (-d | -e)\n", program_name); 44 | printf(" -e to encrypt\n"); 45 | printf(" -d to decrypt\n"); 46 | printf(" stdin is used if -i is not specified\n"); 47 | printf(" stdout is used if -o is not specified\n"); 48 | exit(1); 49 | } 50 | 51 | int parse_args(int argc, char *argv[], struct params_s *params ) { 52 | params->action = 0; 53 | params->in_file = -1; 54 | params->out_file = -1; 55 | char *in_file = NULL; 56 | char *out_file = NULL; 57 | int c; 58 | 59 | while ((c = getopt (argc, argv, "edi:o:")) != -1) { 60 | switch (c) { 61 | case 'e': 62 | params->action |= ENCRYPT_ACTION; 63 | break; 64 | case 'd': 65 | params->action |= DECRYPT_ACTION; 66 | break; 67 | case 'i': 68 | if (in_file != NULL) { 69 | fprintf(stderr, "Error: input file already specified\n"); 70 | exit(1); 71 | } 72 | in_file = optarg; 73 | break; 74 | case 'o': 75 | if (out_file != NULL) { 76 | fprintf(stderr, "Error: output file already specified\n"); 77 | exit(1); 78 | } 79 | out_file = optarg; 80 | break; 81 | case '?': 82 | return 1; 83 | default: 84 | fprintf(stderr, "Error: unexpected failure while parsing command line\n"); 85 | return 1; 86 | } 87 | } 88 | 89 | if (optind < argc) { 90 | fprintf(stderr, "Error: unrecognised non-option arguments\n"); 91 | return 1; 92 | } 93 | 94 | if (params->action != ENCRYPT_ACTION && params->action != DECRYPT_ACTION) { 95 | fprintf(stderr, "Error: either -e OR -d should be provided\n"); 96 | return 1; 97 | } 98 | if (in_file != NULL) { 99 | params->in_file = open(in_file, O_RDONLY); 100 | if (params->in_file == -1) { 101 | fprintf(stderr, "Error: failed to open input file \"%s\". %s\n", in_file, strerror(errno)); 102 | exit(1); 103 | } 104 | } else { 105 | params->in_file = 0; // stdin 106 | } 107 | if (out_file != NULL) { 108 | params->out_file = open(out_file, O_WRONLY|O_CREAT|O_TRUNC, 0600); // -rw----- 109 | if (params->out_file == -1) { 110 | fprintf(stderr, "Error: failed to open output file \"%s\". %s\n", out_file, strerror(errno)); 111 | exit(1); 112 | } 113 | } else { 114 | params->out_file = 1; // stdout 115 | } 116 | return 0; 117 | } 118 | 119 | uint32_t get_random_uint32(uint64_t *state) { 120 | static uint32_t random_number = 0; 121 | uint32_t another_random_number = pcg32_random_r(state) ^ random_number; 122 | // if upper 4 bits of another_random_number are zero we generate new random_number 123 | // on average this should happen roughly every 16th call but distribution is pretty wide 124 | if ((another_random_number >> 28) == 0) { 125 | random_number = pcg32_random_r(state + 2); 126 | } 127 | return another_random_number; 128 | } 129 | 130 | void generate_state(uint64_t *state, uint64_t *initial_state) { 131 | struct timespec ts_uptime, ts_epoch; 132 | uint64_t shift_data; 133 | 134 | // uptime 135 | if (clock_gettime(CLOCK_MONOTONIC, &ts_uptime) != 0) { 136 | fprintf(stderr, "Error: clock_gettime(CLOCK_MONOTONIC) failed with %s\n", strerror(errno)); 137 | exit(1); 138 | } 139 | 140 | // seconds since epoch 141 | if (clock_gettime(CLOCK_REALTIME, &ts_epoch) != 0) { 142 | fprintf(stderr, "Error: clock_gettime(CLOCK_REALTIME) failed with %s\n", strerror(errno)); 143 | exit(1); 144 | } 145 | state[0] = ts_uptime.tv_sec * ts_uptime.tv_nsec; 146 | state[1] = ts_uptime.tv_sec * ts_epoch.tv_nsec; 147 | state[2] = ts_epoch.tv_sec * ts_uptime.tv_nsec; 148 | state[3] = ts_epoch.tv_sec * ts_epoch.tv_nsec; 149 | 150 | shift_data = state[0] ^ state[1] ^ state[2] ^ state[3] ^ getpid(); 151 | 152 | for (int i = 0; i < PCG32_STATE_SIZE; i++) { 153 | int shift = shift_data % (BITS_IN_BYTE * BYTES_IN_UINT64_T); 154 | state[i] = state[i] ^ (state[i] << shift | (state[i] >> (BITS_IN_BYTE * BYTES_IN_UINT64_T - shift))); 155 | initial_state[i] = state[i]; 156 | shift_data /= (BITS_IN_BYTE * BYTES_IN_UINT64_T); 157 | } 158 | } 159 | 160 | void warm_up_generator(uint8_t *password, uint64_t *state) { 161 | uint64_t warm_up_count = 0; 162 | 163 | for (uint8_t *p = password; *p != 0; p++) { 164 | warm_up_count = (warm_up_count * 2) + (*p); 165 | } 166 | 167 | for (int i = 0; i < warm_up_count; i++) { 168 | for (int j = 0; j < PCG32_STATE_SIZE; j += 2) { 169 | pcg32_random_r(state + j); 170 | } 171 | } 172 | } 173 | 174 | void apply_password_to_initial_state(uint8_t *password, uint64_t *initial_state) { 175 | int i = 0; 176 | uint64_t mix = 0; 177 | 178 | for (uint8_t *p = password; *p != 0; p++) { 179 | mix = (mix * (*p)) ^ (*p); 180 | initial_state[i] ^= mix; 181 | i = (i + 1) % PCG32_STATE_SIZE; 182 | } 183 | } 184 | 185 | ssize_t read_or_die(int fd, void *buf, size_t count, char *message) { 186 | ssize_t read_count = read(fd, buf, count); 187 | if (read_count == -1) { 188 | fprintf(stderr, "%s %s\n", message, strerror(errno)); 189 | exit(1); 190 | } 191 | return read_count; 192 | } 193 | 194 | ssize_t write_or_die(int fd, void *buf, size_t count, char *message) { 195 | ssize_t write_count = write(fd, buf, count); 196 | if (write_count == -1) { 197 | fprintf(stderr, "%s %s\n", message, strerror(errno)); 198 | exit(1); 199 | } 200 | return write_count; 201 | } 202 | 203 | uint8_t shuffle(uint8_t val, uint8_t factor) { 204 | uint8_t j; 205 | uint8_t bit1; 206 | uint8_t bit2; 207 | for (uint8_t i = 7; i > 0; i--) { 208 | j = factor % (i + 1); 209 | bit1 = ((val >> i) & 1); 210 | bit2 = ((val >> j) & 1); 211 | val &= ((~(1 << j)) & (~(1 << i)) & 0xff); 212 | val |= ((bit1 << j) | (bit2 << i)); 213 | } 214 | return val; 215 | } 216 | 217 | uint8_t unshuffle(uint8_t val, uint8_t factor) { 218 | uint8_t j; 219 | uint8_t bit1; 220 | uint8_t bit2; 221 | for (uint8_t i = 1; i <= 7; i++) { 222 | j = factor % (i + 1); 223 | bit1 = ((val >> i) & 1); 224 | bit2 = ((val >> j) & 1); 225 | val &= ((~(1 << j)) & (~(1 << i)) & 0xff); 226 | val |= ((bit1 << j) | (bit2 << i)); 227 | } 228 | return val; 229 | } 230 | 231 | void read_xor_write(int in_file, int out_file, uint64_t *state, uint8_t *buf, int action) { 232 | int bytes_read_count = 0; 233 | int factor = 0; 234 | uint32_t random32 = 0; 235 | uint8_t random8 = 0; 236 | 237 | while (1) { 238 | bytes_read_count = read_or_die(in_file, buf, BUFSIZE, "Error: failed to read data."); 239 | if (bytes_read_count == 0) break; 240 | for (int i = 0; i < bytes_read_count; i++) { 241 | random32 = get_random_uint32(state); 242 | random8 = random32 & BYTE_MASK; 243 | factor = (random32 >> BITS_IN_BYTE) & BYTE_MASK; 244 | if (action == DECRYPT_ACTION) { 245 | buf[i] = unshuffle(buf[i], factor); 246 | } 247 | buf[i] ^= random8; 248 | if (action == ENCRYPT_ACTION) { 249 | buf[i] = shuffle(buf[i], factor); 250 | } 251 | } 252 | write_or_die(out_file, buf, bytes_read_count, "Error: failed to write data."); 253 | } 254 | } 255 | 256 | int generate_head(uint64_t *state, uint8_t *buf, uint64_t *initial_state, char *password) { 257 | int head_length = (get_random_uint32(state) & BYTE_MASK) + 1; // 1-256 random bytes at the head of the file 258 | 259 | for (int j = 0; j < PCG32_STATE_SIZE; j++) { 260 | for (int i = 0; i < BYTES_IN_UINT64_T; i++) { 261 | buf[i + j * BYTES_IN_UINT64_T] = (initial_state[j] >> ((BYTES_IN_UINT64_T - 1 - i) * BITS_IN_BYTE)) & BYTE_MASK; 262 | } 263 | } 264 | // to avoid continuous data in the header we skip bytes while filling in the buffer 265 | for (int i = 0; i < head_length; i++) { 266 | for (int j = (get_random_uint32(state) & BYTE_MASK); j > 0; j--) { 267 | get_random_uint32(state); 268 | } 269 | buf[i + BYTES_IN_UINT64_T * PCG32_STATE_SIZE] = (get_random_uint32(state) & BYTE_MASK); 270 | } 271 | return head_length + BYTES_IN_UINT64_T * PCG32_STATE_SIZE; 272 | } 273 | 274 | void encrypt(struct params_s *params) { 275 | uint64_t state[PCG32_STATE_SIZE]; 276 | uint64_t initial_state[PCG32_STATE_SIZE]; 277 | uint8_t buf[BUFSIZE]; 278 | int head_length; 279 | 280 | generate_state(state, initial_state); 281 | apply_password_to_initial_state(params->password, initial_state); 282 | warm_up_generator(params->password, state); 283 | head_length = generate_head(state, buf, initial_state, params->password); 284 | write_or_die(params->out_file, buf, head_length, "Error: failed to write head data."); 285 | read_xor_write(params->in_file, params->out_file, state, buf, params->action); 286 | } 287 | 288 | void read_initial_state(int in_file, uint64_t *initial_state) { 289 | uint8_t buf[BYTES_IN_UINT64_T * PCG32_STATE_SIZE]; 290 | int bytes_read_count = 0; 291 | int i = 0; 292 | 293 | bytes_read_count = read_or_die(in_file, buf, BYTES_IN_UINT64_T * PCG32_STATE_SIZE, "Error: failed to read initial state."); 294 | if (bytes_read_count != BYTES_IN_UINT64_T * PCG32_STATE_SIZE) { 295 | fprintf(stderr, "Error: initial state should be %d bytes, got %d bytes instead.\n", BYTES_IN_UINT64_T * PCG32_STATE_SIZE, bytes_read_count); 296 | exit(1); 297 | } 298 | for (int j = 0; j < PCG32_STATE_SIZE; j++) { 299 | for (int i = 0; i < BYTES_IN_UINT64_T; i++) { 300 | initial_state[j] = (initial_state[j] << BITS_IN_BYTE) | buf[i + j * BYTES_IN_UINT64_T]; 301 | } 302 | } 303 | } 304 | 305 | void decrypt(struct params_s *params) { 306 | uint64_t state[PCG32_STATE_SIZE]; 307 | uint8_t buf[BUFSIZE]; 308 | int head_length; 309 | int bytes_read_count = 0; 310 | 311 | read_initial_state(params->in_file, state); 312 | apply_password_to_initial_state(params->password, state); 313 | warm_up_generator(params->password, state); 314 | // we use same generate_head() function as in encrypt() to have same state 315 | head_length = generate_head(state, buf, state, params->password) - BYTES_IN_UINT64_T * PCG32_STATE_SIZE; // - (BYTES_IN_UINT64_T * PCG32_STATE_SIZE) because of read_initial_state() above 316 | bytes_read_count = read_or_die(params->in_file, buf, head_length, "Error: failed to read head data."); 317 | if (bytes_read_count != head_length) { 318 | fprintf(stderr, "Error: head data should be %d bytes, got %d bytes instead.\n", head_length, bytes_read_count); 319 | exit(1); 320 | } 321 | read_xor_write(params->in_file, params->out_file, state, buf, params->action); 322 | } 323 | 324 | int main(int argc, char *argv[]) { 325 | struct params_s params; 326 | params.password = getenv("PASSWORD"); 327 | if (params.password == NULL) { 328 | params.password = getpass("Password: "); 329 | } 330 | 331 | if (parse_args(argc, argv, ¶ms) != 0) { 332 | usage(argv[0]); 333 | } 334 | switch(params.action) { 335 | case ENCRYPT_ACTION: 336 | encrypt(¶ms); 337 | break; 338 | case DECRYPT_ACTION: 339 | decrypt(¶ms); 340 | break; 341 | default: 342 | fprintf(stderr, "Error: unknown action"); 343 | } 344 | close(params.in_file); 345 | close(params.out_file); 346 | } 347 | -------------------------------------------------------------------------------- /crypt/crypt.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include 10 | #include 11 | #include 12 | 13 | #define ENCRYPT_ACTION 1 14 | #define DECRYPT_ACTION 2 15 | 16 | #define BUFSIZE (1024 * 32) 17 | #define XOSHIRO256SS_STATE_SIZE 4 18 | #define BITS_IN_BYTE 8 19 | #define BYTES_IN_UINT64_T 8 20 | #define BYTE_MASK 0xff 21 | 22 | struct params_s { 23 | int in_file; 24 | int out_file; 25 | uint8_t *password; 26 | int action; 27 | }; 28 | 29 | uint64_t rol64(uint64_t x, int k) { 30 | return (x << k) | (x >> (64 - k)); 31 | } 32 | 33 | struct xoshiro256ss_state { 34 | uint64_t s[XOSHIRO256SS_STATE_SIZE]; 35 | }; 36 | 37 | // https://en.wikipedia.org/wiki/Xorshift#xoshiro256** 38 | uint64_t xoshiro256ss(struct xoshiro256ss_state *state) { 39 | uint64_t *s = state->s; 40 | uint64_t const result = rol64(s[1] * 5, 7) * 9; 41 | uint64_t const t = s[1] << 17; 42 | 43 | s[2] ^= s[0]; 44 | s[3] ^= s[1]; 45 | s[1] ^= s[2]; 46 | s[0] ^= s[3]; 47 | 48 | s[2] ^= t; 49 | s[3] = rol64(s[3], 45); 50 | 51 | return result; 52 | } 53 | 54 | void usage(uint8_t *program_name) { 55 | printf("Usage: %s -i INPUT_FILE -o OUTPUT_FILE (-d | -e)\n", program_name); 56 | printf(" -e to encrypt\n"); 57 | printf(" -d to decrypt\n"); 58 | printf(" stdin is used if -i is not specified\n"); 59 | printf(" stdout is used if -o is not specified\n"); 60 | exit(1); 61 | } 62 | 63 | uint64_t generate_initial_state() { 64 | struct timeval t; 65 | gettimeofday(&t, NULL); 66 | return (uint64_t)(t.tv_usec * t.tv_sec); 67 | } 68 | 69 | int parse_args(int argc, char *argv[], struct params_s *params ) { 70 | params->action = 0; 71 | params->in_file = -1; 72 | params->out_file = -1; 73 | char *in_file = NULL; 74 | char *out_file = NULL; 75 | int c; 76 | 77 | while ((c = getopt (argc, argv, "edi:o:")) != -1) { 78 | switch (c) { 79 | case 'e': 80 | params->action |= ENCRYPT_ACTION; 81 | break; 82 | case 'd': 83 | params->action |= DECRYPT_ACTION; 84 | break; 85 | case 'i': 86 | if (in_file != NULL) { 87 | fprintf(stderr, "Error: input file already specified\n"); 88 | exit(1); 89 | } 90 | in_file = optarg; 91 | break; 92 | case 'o': 93 | if (out_file != NULL) { 94 | fprintf(stderr, "Error: output file already specified\n"); 95 | exit(1); 96 | } 97 | out_file = optarg; 98 | break; 99 | case '?': 100 | return 1; 101 | default: 102 | fprintf(stderr, "Error: unexpected failure while parsing command line\n"); 103 | return 1; 104 | } 105 | } 106 | 107 | if (optind < argc) { 108 | fprintf(stderr, "Error: unrecognised non-option arguments\n"); 109 | return 1; 110 | } 111 | 112 | if (params->action != ENCRYPT_ACTION && params->action != DECRYPT_ACTION) { 113 | fprintf(stderr, "Error: either -e OR -d should be provided\n"); 114 | return 1; 115 | } 116 | if (in_file != NULL) { 117 | params->in_file = open(in_file, O_RDONLY); 118 | if (params->in_file == -1) { 119 | fprintf(stderr, "Error: failed to open input file \"%s\". %s\n", in_file, strerror(errno)); 120 | exit(1); 121 | } 122 | } else { 123 | params->in_file = 0; // stdin 124 | } 125 | if (out_file != NULL) { 126 | params->out_file = open(out_file, O_WRONLY|O_CREAT|O_TRUNC, 0600); // -rw----- 127 | if (params->out_file == -1) { 128 | fprintf(stderr, "Error: failed to open output file \"%s\". %s\n", out_file, strerror(errno)); 129 | exit(1); 130 | } 131 | } else { 132 | params->out_file = 1; // stdout 133 | } 134 | return 0; 135 | } 136 | 137 | uint8_t get_random_byte(struct xoshiro256ss_state *state) { 138 | static uint64_t cache = 0; 139 | uint8_t result; 140 | 141 | if (cache == 0) { 142 | cache = xoshiro256ss(state) >> BITS_IN_BYTE; // least significant bits are of low quality 143 | } 144 | result = cache & BYTE_MASK; 145 | cache >>= BITS_IN_BYTE; 146 | return result; 147 | } 148 | 149 | void prepare_state(uint8_t *password, struct xoshiro256ss_state *state, uint64_t initial_state) { 150 | int byte_index = 0; 151 | int word_index = 0; 152 | uint64_t warm_up_count = 0; 153 | int i = 0; 154 | 155 | for (i = 0; i < XOSHIRO256SS_STATE_SIZE; i++) { 156 | state->s[i] = initial_state; 157 | } 158 | i = 0; 159 | for (uint8_t *p = password; *p != 0; p++) { 160 | word_index = i % XOSHIRO256SS_STATE_SIZE; 161 | byte_index = i / XOSHIRO256SS_STATE_SIZE; 162 | state->s[word_index] ^= ((uint64_t)(*p) << (BITS_IN_BYTE * byte_index)); 163 | warm_up_count = (warm_up_count * 2) + (*p); 164 | i = (i + 1) % (XOSHIRO256SS_STATE_SIZE * BYTES_IN_UINT64_T); 165 | } 166 | for (i = 0; i < warm_up_count; i++) { 167 | xoshiro256ss(state); 168 | } 169 | } 170 | 171 | ssize_t read_or_die(int fd, void *buf, size_t count, char *message) { 172 | ssize_t read_count = read(fd, buf, count); 173 | if (read_count == -1) { 174 | fprintf(stderr, "%s %s\n", message, strerror(errno)); 175 | exit(1); 176 | } 177 | return read_count; 178 | } 179 | 180 | ssize_t write_or_die(int fd, void *buf, size_t count, char *message) { 181 | ssize_t write_count = write(fd, buf, count); 182 | if (write_count == -1) { 183 | fprintf(stderr, "%s %s\n", message, strerror(errno)); 184 | exit(1); 185 | } 186 | return write_count; 187 | } 188 | 189 | void read_xor_write(int in_file, int out_file, struct xoshiro256ss_state *state, uint8_t *buf) { 190 | int bytes_read_count = 0; 191 | 192 | while (1) { 193 | bytes_read_count = read_or_die(in_file, buf, BUFSIZE, "Error: failed to read data."); 194 | if (bytes_read_count == 0) break; 195 | for (int i = 0; i < bytes_read_count; i++) { 196 | buf[i] ^= get_random_byte(state); 197 | } 198 | write_or_die(out_file, buf, bytes_read_count, "Error: failed to write data."); 199 | } 200 | } 201 | 202 | int generate_head(struct xoshiro256ss_state *state, uint8_t *buf, uint64_t initial_state) { 203 | int head_length = get_random_byte(state) + 1; // 1-256 random bytes at the head of the file 204 | 205 | for (int i = 0; i < BYTES_IN_UINT64_T; i++) { 206 | buf[i] = (initial_state >> ((BYTES_IN_UINT64_T - 1 - i) * BITS_IN_BYTE)) & BYTE_MASK; 207 | } 208 | // to avoid continuous data in the header we skip bytes while filling in the buffer 209 | for (int i = 0; i < head_length; i++) { 210 | for (int j = get_random_byte(state); j > 0; j--) { 211 | get_random_byte(state); 212 | } 213 | buf[i + BYTES_IN_UINT64_T] = get_random_byte(state); 214 | } 215 | return head_length + BYTES_IN_UINT64_T; 216 | } 217 | 218 | void encrypt(struct params_s *params) { 219 | uint64_t initial_state = generate_initial_state(); 220 | struct xoshiro256ss_state state; 221 | uint8_t buf[BUFSIZE]; 222 | int head_length; 223 | 224 | prepare_state(params->password, &state, initial_state); 225 | head_length = generate_head(&state, buf, initial_state); 226 | write_or_die(params->out_file, buf, head_length, "Error: failed to write head data."); 227 | read_xor_write(params->in_file, params->out_file, &state, buf); 228 | } 229 | 230 | uint64_t read_initial_state(int in_file) { 231 | uint64_t initial_state = 0; 232 | uint8_t buf[BYTES_IN_UINT64_T]; 233 | int bytes_read_count = 0; 234 | 235 | bytes_read_count = read_or_die(in_file, buf, BYTES_IN_UINT64_T, "Error: failed to read initial state."); 236 | if (bytes_read_count != BYTES_IN_UINT64_T) { 237 | fprintf(stderr, "Error: initial state should be %d bytes, got %d bytes instead.\n", BYTES_IN_UINT64_T, bytes_read_count); 238 | exit(1); 239 | } 240 | for (int i = 0; i < BYTES_IN_UINT64_T; i++) { 241 | initial_state = (initial_state << BITS_IN_BYTE) | buf[i]; 242 | } 243 | return initial_state; 244 | } 245 | 246 | void decrypt(struct params_s *params) { 247 | uint64_t initial_state = read_initial_state(params->in_file); 248 | struct xoshiro256ss_state state; 249 | uint8_t buf[BUFSIZE]; 250 | int head_length; 251 | int bytes_read_count = 0; 252 | 253 | prepare_state(params->password, &state, initial_state); 254 | // we use same generate_head() function as in encrypt() to have rng in the same state 255 | head_length = generate_head(&state, buf, initial_state) - BYTES_IN_UINT64_T; // - BYTES_IN_UINT64_T because of read_initial_state() above 256 | bytes_read_count = read_or_die(params->in_file, buf, head_length, "Error: failed to read head data."); 257 | if (bytes_read_count != head_length) { 258 | fprintf(stderr, "Error: head data should be %d bytes, got %d bytes instead.\n", head_length, bytes_read_count); 259 | exit(1); 260 | } 261 | read_xor_write(params->in_file, params->out_file, &state, buf); 262 | } 263 | 264 | int main(int argc, char *argv[]) { 265 | struct params_s params; 266 | params.password = getenv("PASSWORD"); 267 | if (params.password == NULL) { 268 | params.password = getpass("Password: "); 269 | } 270 | 271 | if (parse_args(argc, argv, ¶ms) != 0) { 272 | usage(argv[0]); 273 | } 274 | switch(params.action) { 275 | case ENCRYPT_ACTION: 276 | encrypt(¶ms); 277 | break; 278 | case DECRYPT_ACTION: 279 | decrypt(¶ms); 280 | break; 281 | default: 282 | fprintf(stderr, "Error: unknown action"); 283 | } 284 | close(params.in_file); 285 | close(params.out_file); 286 | } 287 | -------------------------------------------------------------------------------- /crypt/diagram.txt: -------------------------------------------------------------------------------- 1 | ┌────────────────────────────────────────┐ ┌────────────────┐ 2 | │ epoch seconds, microseconds, pid, ppid │ │ encryption key │ 3 | └──┬──────────────────────────────────┬──┘ └─┬───────────┬──┘ 4 | │ │ │ │ 5 | │ │ │ │ 6 | │ │ │ ┌────────▼──────┐ 7 | ┌──▼──┐ └──────────┼──►random number │ 8 | │mixer◄──────────────────────────────────────────┘ │generator state│ 9 | └──┬──┘ └─────┬─────────┘ 10 | │ │ 11 | ┌──▼──────┐┌──────────────┐┌─────────┐ │ 12 | │encrypted││1-256 bytes of││encrypted│ │ 13 | output │seed ││random data ││data │ │ 14 | └─────────┘└──────▲───────┘└──▲──────┘ │ 15 | │ │ ┌─────▼───────┐ 16 | │ │ │random number│ 17 | └───────────┼─────────────────────┼generator │ 18 | │ └─────┬───────┘ 19 | ┌───┐ ┌───┴────┐ │ 20 | ─────────────────►│XOR├───►│circular│◄─────────────────────┤ 21 | input bytes └─▲─┘ │shift │random bytes │ 22 | │ └────────┘ │ 23 | └──────────────────────────────────────┘ 24 | 25 | ┌─────────┐┌──────────────┐┌─────────┐ 26 | input │encrypted││1-256 bytes of││encrypted│ 27 | │seed ││random data ││data │ 28 | └──┬──────┘└──────────────┘└─┬───────┘ 29 | │ │ ┌───────────────┐ 30 | ┌──▼──┐ │ │random number │ 31 | │mixer├──────────────────────┼─────────────►│generator state│ 32 | └──▲──┘ │ └─────────┬─────┘ 33 | │ │ ▲ │ 34 | ┌──┴───────────┐ │ │ │ 35 | │decryption key├─────────────┼─────────────────┘ │ 36 | └──────────────┘ │ │ 37 | │ │ 38 | │ │ 39 | encrypted bytes│ │ 40 | ┌─────▼──┐ ┌────────▼────┐ 41 | │circular│random bytes│random number│ 42 | │shift │◄───┬───────┤generator │ 43 | └─────┬──┘ ▼ └─────────────┘ 44 | │ ┌───┐ 45 | └────►│XOR├────────────────────► decrypted bytes 46 | └───┘ 47 | -------------------------------------------------------------------------------- /crypt/readme.md: -------------------------------------------------------------------------------- 1 | # about 2 | 3 | This is a simple self contained (no external dependnecies) encryption-decryption utility using 4 | [Xoshiro256starstar](https://en.wikipedia.org/wiki/Xorshift#xoshiro256**) 5 | for random number generation. 6 | 7 | # how this works 8 | 9 | Pseudo random number generator (prng) is initialized with the state derived 10 | from the current time. This state is stored in the encrypted file to be used 11 | during decryption. Initial state bytes are xored with password bytes to get 12 | uniq state. Password is used to calculate number of warm up cycles for the 13 | prng. Each added character doubles number of warm up cycles. Encrypted text is 14 | prepended with random data of random length from 1 to 256 bytes to hide actual 15 | length of the encrypted data. Random skip is used between bytes so there is no 16 | way to reconstruct prng state from this added data. With random header added to 17 | the encrypted file we start to xor input bytes with random bytes from the prng. 18 | 19 | # compiling 20 | 21 | ``` 22 | $ gcc -O2 -o crypt crypt.c 23 | ``` 24 | 25 | # demo 26 | 27 | ``` 28 | $ echo "this is a test text" >/tmp/in 29 | $ PASSWORD=01234567890123456789 ./crypt -i /tmp/in -o /tmp/out -e && hd /tmp/out 30 | 00000000 00 00 7b e2 76 87 09 63 4e f6 50 32 46 11 a1 3f |..{.v..cN.P2F..?| 31 | 00000010 d1 d9 6a 30 31 43 9a d6 35 c2 77 a9 bc d0 42 14 |..j01C..5.w...B.| 32 | 00000020 d3 7f ac |...| 33 | 00000023 34 | $ PASSWORD=01234567890123456789 ./crypt -i /tmp/out -o /tmp/dec -d && hd /tmp/dec 35 | 00000000 74 68 69 73 20 69 73 20 61 20 74 65 73 74 20 74 |this is a test t| 36 | 00000010 65 78 74 0a |ext.| 37 | 00000014 38 | $ md5sum /tmp/in /tmp/dec 39 | 8dbe2272f977adbed1519e916d6a7d6a /tmp/in 40 | 8dbe2272f977adbed1519e916d6a7d6a /tmp/dec 41 | $ 42 | 43 | ``` 44 | 45 | # performance 46 | 47 | ``` 48 | $ dd if=/dev/zero of=/tmp/1g bs=$((1024*1024)) count=1024 49 | 50 | 1024+0 records in 51 | 1024+0 records out 52 | 1073741824 bytes (1.1 GB, 1.0 GiB) copied, 2.32278 s, 462 MB/s 53 | $ time PASSWORD=0123456789 ./crypt -i /tmp/1g -o /tmp/1g.enc -e 54 | 55 | real 0m6.111s 56 | user 0m2.585s 57 | sys 0m1.248s 58 | $ md5sum /tmp/1g <(PASSWORD=0123456789 ./crypt -i /tmp/1g.enc -d) 59 | cd573cfaace07e7949bc0c46028904ff /tmp/1g 60 | cd573cfaace07e7949bc0c46028904ff /dev/fd/63 61 | $ lscpu |grep ^Model.name 62 | Model name: Intel(R) Core(TM) i7-7600U CPU @ 2.80GHz 63 | $ 64 | ``` 65 | -------------------------------------------------------------------------------- /drop-git-history.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -ue 4 | 5 | [ -d .git ] || { 6 | echo "Error: this script should be run in the root directory of the git repository" 7 | exit 8 | } 9 | 10 | origin=$(git config --get remote.origin.url) 11 | 12 | [ -z "$origin" ] && echo "Error: failed to retrieve remote.origin.url" && exit 13 | 14 | read -p "This operation can't be reverted. Please hit enter to continue or ctrl-c to abort" 15 | 16 | rm -rf .git 17 | git init 18 | git add . 19 | git commit -m "Initial commit" 20 | git remote add origin "$origin" 21 | git push -u --force origin master 22 | -------------------------------------------------------------------------------- /gentoo/boot.script: -------------------------------------------------------------------------------- 1 | # compile new boot.scr using following command 2 | # mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n Boot-Script -d boot.script boot.scr 3 | setenv bootargs 'console=ttyS0,115200 root=PARTUUID=716e717e-35ad-400f-becf-e9c421070ebc rw rootwait' 4 | #setenv bootargs 'console=ttyS0,115200 root=/dev/mmcblk1p1 rw rootwait' 5 | #setenv bootargs 'console=ttyS0,115200 root=/dev/sda1 rw rootwait' 6 | load ${devtype} ${devnum}:1 ${kernel_addr_r} /boot/zImage 7 | load ${devtype} ${devnum}:1 ${fdt_addr_r} /boot/tegra124-jetson-tk1.dtb 8 | bootz ${kernel_addr_r} ${ramdisk_addr_r}:${filesize} ${fdt_addr_r} 9 | -------------------------------------------------------------------------------- /gentoo/oracle-cloud/.config: -------------------------------------------------------------------------------- 1 | # 2 | # Automatically generated file; DO NOT EDIT. 3 | # Linux/x86 5.15.75-gentoo Kernel Configuration 4 | # 5 | CONFIG_CC_VERSION_TEXT="gcc (Gentoo 11.3.0 p4) 11.3.0" 6 | CONFIG_CC_IS_GCC=y 7 | CONFIG_GCC_VERSION=110300 8 | CONFIG_CLANG_VERSION=0 9 | CONFIG_AS_IS_GNU=y 10 | CONFIG_AS_VERSION=23800 11 | CONFIG_LD_IS_BFD=y 12 | CONFIG_LD_VERSION=23800 13 | CONFIG_LLD_VERSION=0 14 | CONFIG_CC_CAN_LINK=y 15 | CONFIG_CC_CAN_LINK_STATIC=y 16 | CONFIG_CC_HAS_ASM_GOTO=y 17 | CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y 18 | CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y 19 | CONFIG_CC_HAS_ASM_INLINE=y 20 | CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y 21 | CONFIG_IRQ_WORK=y 22 | CONFIG_BUILDTIME_TABLE_SORT=y 23 | CONFIG_THREAD_INFO_IN_TASK=y 24 | 25 | # 26 | # General setup 27 | # 28 | CONFIG_BROKEN_ON_SMP=y 29 | CONFIG_INIT_ENV_ARG_LIMIT=32 30 | # CONFIG_COMPILE_TEST is not set 31 | # CONFIG_WERROR is not set 32 | CONFIG_LOCALVERSION="" 33 | # CONFIG_LOCALVERSION_AUTO is not set 34 | CONFIG_BUILD_SALT="" 35 | CONFIG_HAVE_KERNEL_GZIP=y 36 | CONFIG_HAVE_KERNEL_BZIP2=y 37 | CONFIG_HAVE_KERNEL_LZMA=y 38 | CONFIG_HAVE_KERNEL_XZ=y 39 | CONFIG_HAVE_KERNEL_LZO=y 40 | CONFIG_HAVE_KERNEL_LZ4=y 41 | CONFIG_HAVE_KERNEL_ZSTD=y 42 | # CONFIG_KERNEL_GZIP is not set 43 | # CONFIG_KERNEL_BZIP2 is not set 44 | # CONFIG_KERNEL_LZMA is not set 45 | CONFIG_KERNEL_XZ=y 46 | # CONFIG_KERNEL_LZO is not set 47 | # CONFIG_KERNEL_LZ4 is not set 48 | # CONFIG_KERNEL_ZSTD is not set 49 | CONFIG_DEFAULT_INIT="" 50 | CONFIG_DEFAULT_HOSTNAME="(none)" 51 | CONFIG_SWAP=y 52 | CONFIG_SYSVIPC=y 53 | CONFIG_SYSVIPC_SYSCTL=y 54 | # CONFIG_POSIX_MQUEUE is not set 55 | # CONFIG_WATCH_QUEUE is not set 56 | # CONFIG_CROSS_MEMORY_ATTACH is not set 57 | # CONFIG_USELIB is not set 58 | # CONFIG_AUDIT is not set 59 | CONFIG_HAVE_ARCH_AUDITSYSCALL=y 60 | 61 | # 62 | # IRQ subsystem 63 | # 64 | CONFIG_GENERIC_IRQ_PROBE=y 65 | CONFIG_GENERIC_IRQ_SHOW=y 66 | CONFIG_HARDIRQS_SW_RESEND=y 67 | CONFIG_IRQ_DOMAIN=y 68 | CONFIG_IRQ_DOMAIN_HIERARCHY=y 69 | CONFIG_GENERIC_IRQ_MATRIX_ALLOCATOR=y 70 | CONFIG_GENERIC_IRQ_RESERVATION_MODE=y 71 | CONFIG_IRQ_FORCED_THREADING=y 72 | CONFIG_SPARSE_IRQ=y 73 | # end of IRQ subsystem 74 | 75 | CONFIG_CLOCKSOURCE_WATCHDOG=y 76 | CONFIG_ARCH_CLOCKSOURCE_INIT=y 77 | CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y 78 | CONFIG_GENERIC_TIME_VSYSCALL=y 79 | CONFIG_GENERIC_CLOCKEVENTS=y 80 | CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y 81 | CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y 82 | CONFIG_GENERIC_CMOS_UPDATE=y 83 | CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y 84 | CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y 85 | 86 | # 87 | # Timers subsystem 88 | # 89 | CONFIG_HZ_PERIODIC=y 90 | # CONFIG_NO_HZ_IDLE is not set 91 | # CONFIG_NO_HZ is not set 92 | # CONFIG_HIGH_RES_TIMERS is not set 93 | # end of Timers subsystem 94 | 95 | CONFIG_BPF=y 96 | CONFIG_HAVE_EBPF_JIT=y 97 | CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y 98 | 99 | # 100 | # BPF subsystem 101 | # 102 | # CONFIG_BPF_SYSCALL is not set 103 | # end of BPF subsystem 104 | 105 | CONFIG_PREEMPT_NONE=y 106 | # CONFIG_PREEMPT_VOLUNTARY is not set 107 | # CONFIG_PREEMPT is not set 108 | 109 | # 110 | # CPU/Task time and stats accounting 111 | # 112 | CONFIG_TICK_CPU_ACCOUNTING=y 113 | # CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set 114 | # CONFIG_IRQ_TIME_ACCOUNTING is not set 115 | # CONFIG_BSD_PROCESS_ACCT is not set 116 | # CONFIG_TASKSTATS is not set 117 | # CONFIG_PSI is not set 118 | # end of CPU/Task time and stats accounting 119 | 120 | # 121 | # RCU Subsystem 122 | # 123 | CONFIG_TINY_RCU=y 124 | # CONFIG_RCU_EXPERT is not set 125 | CONFIG_SRCU=y 126 | CONFIG_TINY_SRCU=y 127 | # end of RCU Subsystem 128 | 129 | CONFIG_IKCONFIG=y 130 | CONFIG_IKCONFIG_PROC=y 131 | # CONFIG_IKHEADERS is not set 132 | CONFIG_LOG_BUF_SHIFT=17 133 | CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13 134 | CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y 135 | 136 | # 137 | # Scheduler features 138 | # 139 | # end of Scheduler features 140 | 141 | CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y 142 | CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y 143 | CONFIG_CC_HAS_INT128=y 144 | CONFIG_ARCH_SUPPORTS_INT128=y 145 | CONFIG_CGROUPS=y 146 | # CONFIG_MEMCG is not set 147 | # CONFIG_BLK_CGROUP is not set 148 | # CONFIG_CGROUP_SCHED is not set 149 | # CONFIG_CGROUP_PIDS is not set 150 | # CONFIG_CGROUP_RDMA is not set 151 | # CONFIG_CGROUP_FREEZER is not set 152 | # CONFIG_CGROUP_DEVICE is not set 153 | # CONFIG_CGROUP_CPUACCT is not set 154 | # CONFIG_CGROUP_PERF is not set 155 | # CONFIG_CGROUP_MISC is not set 156 | # CONFIG_CGROUP_DEBUG is not set 157 | CONFIG_NAMESPACES=y 158 | CONFIG_UTS_NS=y 159 | CONFIG_TIME_NS=y 160 | CONFIG_IPC_NS=y 161 | CONFIG_USER_NS=y 162 | CONFIG_PID_NS=y 163 | CONFIG_NET_NS=y 164 | # CONFIG_CHECKPOINT_RESTORE is not set 165 | # CONFIG_SCHED_AUTOGROUP is not set 166 | # CONFIG_SYSFS_DEPRECATED is not set 167 | # CONFIG_RELAY is not set 168 | # CONFIG_BLK_DEV_INITRD is not set 169 | # CONFIG_BOOT_CONFIG is not set 170 | # CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE is not set 171 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y 172 | CONFIG_LD_ORPHAN_WARN=y 173 | CONFIG_SYSCTL=y 174 | CONFIG_SYSCTL_EXCEPTION_TRACE=y 175 | CONFIG_HAVE_PCSPKR_PLATFORM=y 176 | CONFIG_EXPERT=y 177 | CONFIG_MULTIUSER=y 178 | # CONFIG_SGETMASK_SYSCALL is not set 179 | # CONFIG_SYSFS_SYSCALL is not set 180 | # CONFIG_FHANDLE is not set 181 | CONFIG_POSIX_TIMERS=y 182 | CONFIG_PRINTK=y 183 | # CONFIG_BUG is not set 184 | # CONFIG_PCSPKR_PLATFORM is not set 185 | # CONFIG_BASE_FULL is not set 186 | CONFIG_FUTEX=y 187 | CONFIG_FUTEX_PI=y 188 | CONFIG_EPOLL=y 189 | CONFIG_SIGNALFD=y 190 | CONFIG_TIMERFD=y 191 | CONFIG_EVENTFD=y 192 | CONFIG_SHMEM=y 193 | CONFIG_AIO=y 194 | # CONFIG_IO_URING is not set 195 | # CONFIG_ADVISE_SYSCALLS is not set 196 | # CONFIG_MEMBARRIER is not set 197 | # CONFIG_KALLSYMS is not set 198 | # CONFIG_USERFAULTFD is not set 199 | CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y 200 | # CONFIG_KCMP is not set 201 | # CONFIG_RSEQ is not set 202 | CONFIG_EMBEDDED=y 203 | CONFIG_HAVE_PERF_EVENTS=y 204 | # CONFIG_PC104 is not set 205 | 206 | # 207 | # Kernel Performance Events And Counters 208 | # 209 | CONFIG_PERF_EVENTS=y 210 | # CONFIG_DEBUG_PERF_USE_VMALLOC is not set 211 | # end of Kernel Performance Events And Counters 212 | 213 | # CONFIG_VM_EVENT_COUNTERS is not set 214 | # CONFIG_COMPAT_BRK is not set 215 | # CONFIG_SLAB is not set 216 | # CONFIG_SLUB is not set 217 | CONFIG_SLOB=y 218 | # CONFIG_SLAB_MERGE_DEFAULT is not set 219 | # CONFIG_SHUFFLE_PAGE_ALLOCATOR is not set 220 | # CONFIG_PROFILING is not set 221 | # end of General setup 222 | 223 | CONFIG_64BIT=y 224 | CONFIG_X86_64=y 225 | CONFIG_X86=y 226 | CONFIG_INSTRUCTION_DECODER=y 227 | CONFIG_OUTPUT_FORMAT="elf64-x86-64" 228 | CONFIG_LOCKDEP_SUPPORT=y 229 | CONFIG_STACKTRACE_SUPPORT=y 230 | CONFIG_MMU=y 231 | CONFIG_ARCH_MMAP_RND_BITS_MIN=28 232 | CONFIG_ARCH_MMAP_RND_BITS_MAX=32 233 | CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8 234 | CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 235 | CONFIG_GENERIC_ISA_DMA=y 236 | CONFIG_ARCH_MAY_HAVE_PC_FDC=y 237 | CONFIG_GENERIC_CALIBRATE_DELAY=y 238 | CONFIG_ARCH_HAS_CPU_RELAX=y 239 | CONFIG_ARCH_HAS_FILTER_PGPROT=y 240 | CONFIG_HAVE_SETUP_PER_CPU_AREA=y 241 | CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y 242 | CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y 243 | CONFIG_ARCH_HIBERNATION_POSSIBLE=y 244 | CONFIG_ARCH_NR_GPIO=1024 245 | CONFIG_ARCH_SUSPEND_POSSIBLE=y 246 | CONFIG_ARCH_WANT_GENERAL_HUGETLB=y 247 | CONFIG_AUDIT_ARCH=y 248 | CONFIG_ARCH_SUPPORTS_UPROBES=y 249 | CONFIG_FIX_EARLYCON_MEM=y 250 | CONFIG_PGTABLE_LEVELS=4 251 | CONFIG_CC_HAS_SANE_STACKPROTECTOR=y 252 | 253 | # 254 | # Processor type and features 255 | # 256 | # CONFIG_SMP is not set 257 | CONFIG_X86_FEATURE_NAMES=y 258 | # CONFIG_X86_X2APIC is not set 259 | CONFIG_X86_MPPARSE=y 260 | # CONFIG_GOLDFISH is not set 261 | # CONFIG_X86_CPU_RESCTRL is not set 262 | # CONFIG_X86_EXTENDED_PLATFORM is not set 263 | # CONFIG_X86_INTEL_LPSS is not set 264 | # CONFIG_X86_AMD_PLATFORM_DEVICE is not set 265 | # CONFIG_IOSF_MBI is not set 266 | # CONFIG_SCHED_OMIT_FRAME_POINTER is not set 267 | CONFIG_HYPERVISOR_GUEST=y 268 | CONFIG_PARAVIRT=y 269 | # CONFIG_PARAVIRT_DEBUG is not set 270 | CONFIG_X86_HV_CALLBACK_VECTOR=y 271 | # CONFIG_XEN is not set 272 | CONFIG_KVM_GUEST=y 273 | CONFIG_ARCH_CPUIDLE_HALTPOLL=y 274 | # CONFIG_PVH is not set 275 | # CONFIG_PARAVIRT_TIME_ACCOUNTING is not set 276 | CONFIG_PARAVIRT_CLOCK=y 277 | # CONFIG_JAILHOUSE_GUEST is not set 278 | # CONFIG_ACRN_GUEST is not set 279 | # CONFIG_MK8 is not set 280 | # CONFIG_MPSC is not set 281 | # CONFIG_MCORE2 is not set 282 | # CONFIG_MATOM is not set 283 | CONFIG_GENERIC_CPU=y 284 | CONFIG_X86_INTERNODE_CACHE_SHIFT=6 285 | CONFIG_X86_L1_CACHE_SHIFT=6 286 | CONFIG_X86_TSC=y 287 | CONFIG_X86_CMPXCHG64=y 288 | CONFIG_X86_CMOV=y 289 | CONFIG_X86_MINIMUM_CPU_FAMILY=64 290 | CONFIG_X86_DEBUGCTLMSR=y 291 | CONFIG_IA32_FEAT_CTL=y 292 | CONFIG_X86_VMX_FEATURE_NAMES=y 293 | # CONFIG_PROCESSOR_SELECT is not set 294 | CONFIG_CPU_SUP_INTEL=y 295 | CONFIG_CPU_SUP_AMD=y 296 | CONFIG_CPU_SUP_HYGON=y 297 | CONFIG_CPU_SUP_CENTAUR=y 298 | CONFIG_CPU_SUP_ZHAOXIN=y 299 | CONFIG_HPET_TIMER=y 300 | CONFIG_HPET_EMULATE_RTC=y 301 | # CONFIG_DMI is not set 302 | # CONFIG_GART_IOMMU is not set 303 | CONFIG_NR_CPUS_RANGE_BEGIN=1 304 | CONFIG_NR_CPUS_RANGE_END=1 305 | CONFIG_NR_CPUS_DEFAULT=1 306 | CONFIG_NR_CPUS=1 307 | CONFIG_UP_LATE_INIT=y 308 | CONFIG_X86_LOCAL_APIC=y 309 | CONFIG_X86_IO_APIC=y 310 | # CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS is not set 311 | # CONFIG_X86_MCE is not set 312 | 313 | # 314 | # Performance monitoring 315 | # 316 | CONFIG_PERF_EVENTS_INTEL_UNCORE=y 317 | CONFIG_PERF_EVENTS_INTEL_RAPL=y 318 | CONFIG_PERF_EVENTS_INTEL_CSTATE=y 319 | # CONFIG_PERF_EVENTS_AMD_POWER is not set 320 | CONFIG_PERF_EVENTS_AMD_UNCORE=y 321 | # end of Performance monitoring 322 | 323 | CONFIG_X86_VSYSCALL_EMULATION=y 324 | CONFIG_X86_IOPL_IOPERM=y 325 | # CONFIG_MICROCODE is not set 326 | # CONFIG_X86_MSR is not set 327 | # CONFIG_X86_CPUID is not set 328 | # CONFIG_X86_5LEVEL is not set 329 | CONFIG_X86_DIRECT_GBPAGES=y 330 | # CONFIG_AMD_MEM_ENCRYPT is not set 331 | CONFIG_ARCH_SPARSEMEM_ENABLE=y 332 | CONFIG_ARCH_SPARSEMEM_DEFAULT=y 333 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y 334 | CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 335 | # CONFIG_X86_PMEM_LEGACY is not set 336 | # CONFIG_X86_CHECK_BIOS_CORRUPTION is not set 337 | # CONFIG_MTRR is not set 338 | # CONFIG_ARCH_RANDOM is not set 339 | # CONFIG_X86_SMAP is not set 340 | CONFIG_X86_UMIP=y 341 | CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS=y 342 | CONFIG_X86_INTEL_TSX_MODE_OFF=y 343 | # CONFIG_X86_INTEL_TSX_MODE_ON is not set 344 | # CONFIG_X86_INTEL_TSX_MODE_AUTO is not set 345 | CONFIG_EFI=y 346 | CONFIG_EFI_STUB=y 347 | # CONFIG_EFI_MIXED is not set 348 | # CONFIG_HZ_100 is not set 349 | CONFIG_HZ_250=y 350 | # CONFIG_HZ_300 is not set 351 | # CONFIG_HZ_1000 is not set 352 | CONFIG_HZ=250 353 | # CONFIG_KEXEC is not set 354 | # CONFIG_CRASH_DUMP is not set 355 | CONFIG_PHYSICAL_START=0x1000000 356 | CONFIG_RELOCATABLE=y 357 | CONFIG_RANDOMIZE_BASE=y 358 | CONFIG_X86_NEED_RELOCS=y 359 | CONFIG_PHYSICAL_ALIGN=0x200000 360 | CONFIG_DYNAMIC_MEMORY_LAYOUT=y 361 | CONFIG_RANDOMIZE_MEMORY=y 362 | CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0x0 363 | # CONFIG_LEGACY_VSYSCALL_EMULATE is not set 364 | CONFIG_LEGACY_VSYSCALL_XONLY=y 365 | # CONFIG_LEGACY_VSYSCALL_NONE is not set 366 | # CONFIG_CMDLINE_BOOL is not set 367 | # CONFIG_MODIFY_LDT_SYSCALL is not set 368 | CONFIG_HAVE_LIVEPATCH=y 369 | # end of Processor type and features 370 | 371 | CONFIG_CC_HAS_SLS=y 372 | CONFIG_CC_HAS_RETURN_THUNK=y 373 | CONFIG_SPECULATION_MITIGATIONS=y 374 | CONFIG_PAGE_TABLE_ISOLATION=y 375 | # CONFIG_RETPOLINE is not set 376 | CONFIG_CPU_IBPB_ENTRY=y 377 | CONFIG_CPU_IBRS_ENTRY=y 378 | # CONFIG_SLS is not set 379 | CONFIG_ARCH_HAS_ADD_PAGES=y 380 | CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y 381 | 382 | # 383 | # Power management and ACPI options 384 | # 385 | # CONFIG_SUSPEND is not set 386 | # CONFIG_HIBERNATION is not set 387 | # CONFIG_PM is not set 388 | CONFIG_ARCH_SUPPORTS_ACPI=y 389 | CONFIG_ACPI=y 390 | CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y 391 | CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y 392 | CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT=y 393 | # CONFIG_ACPI_DEBUGGER is not set 394 | CONFIG_ACPI_SPCR_TABLE=y 395 | # CONFIG_ACPI_FPDT is not set 396 | CONFIG_ACPI_LPIT=y 397 | CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y 398 | # CONFIG_ACPI_EC_DEBUGFS is not set 399 | # CONFIG_ACPI_AC is not set 400 | # CONFIG_ACPI_BATTERY is not set 401 | CONFIG_ACPI_BUTTON=y 402 | # CONFIG_ACPI_DOCK is not set 403 | # CONFIG_ACPI_PROCESSOR is not set 404 | CONFIG_ACPI_CUSTOM_DSDT_FILE="" 405 | CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y 406 | # CONFIG_ACPI_DEBUG is not set 407 | # CONFIG_ACPI_PCI_SLOT is not set 408 | # CONFIG_ACPI_CONTAINER is not set 409 | CONFIG_ACPI_HOTPLUG_IOAPIC=y 410 | # CONFIG_ACPI_SBS is not set 411 | # CONFIG_ACPI_HED is not set 412 | # CONFIG_ACPI_BGRT is not set 413 | # CONFIG_ACPI_REDUCED_HARDWARE_ONLY is not set 414 | # CONFIG_ACPI_NFIT is not set 415 | CONFIG_HAVE_ACPI_APEI=y 416 | CONFIG_HAVE_ACPI_APEI_NMI=y 417 | # CONFIG_ACPI_APEI is not set 418 | # CONFIG_ACPI_DPTF is not set 419 | # CONFIG_ACPI_CONFIGFS is not set 420 | # CONFIG_PMIC_OPREGION is not set 421 | CONFIG_X86_PM_TIMER=y 422 | CONFIG_ACPI_PRMT=y 423 | 424 | # 425 | # CPU Frequency scaling 426 | # 427 | # CONFIG_CPU_FREQ is not set 428 | # end of CPU Frequency scaling 429 | 430 | # 431 | # CPU Idle 432 | # 433 | CONFIG_CPU_IDLE=y 434 | CONFIG_CPU_IDLE_GOV_LADDER=y 435 | # CONFIG_CPU_IDLE_GOV_MENU is not set 436 | # CONFIG_CPU_IDLE_GOV_TEO is not set 437 | # CONFIG_CPU_IDLE_GOV_HALTPOLL is not set 438 | CONFIG_HALTPOLL_CPUIDLE=y 439 | # end of CPU Idle 440 | 441 | # CONFIG_INTEL_IDLE is not set 442 | # end of Power management and ACPI options 443 | 444 | # 445 | # Bus options (PCI etc.) 446 | # 447 | CONFIG_PCI_DIRECT=y 448 | CONFIG_PCI_MMCONFIG=y 449 | CONFIG_MMCONF_FAM10H=y 450 | # CONFIG_PCI_CNB20LE_QUIRK is not set 451 | # CONFIG_ISA_BUS is not set 452 | CONFIG_ISA_DMA_API=y 453 | CONFIG_AMD_NB=y 454 | # end of Bus options (PCI etc.) 455 | 456 | # 457 | # Binary Emulations 458 | # 459 | # CONFIG_IA32_EMULATION is not set 460 | # CONFIG_X86_X32 is not set 461 | # end of Binary Emulations 462 | 463 | CONFIG_HAVE_KVM=y 464 | # CONFIG_VIRTUALIZATION is not set 465 | CONFIG_AS_AVX512=y 466 | CONFIG_AS_SHA1_NI=y 467 | CONFIG_AS_SHA256_NI=y 468 | CONFIG_AS_TPAUSE=y 469 | 470 | # 471 | # General architecture-dependent options 472 | # 473 | CONFIG_GENERIC_ENTRY=y 474 | # CONFIG_JUMP_LABEL is not set 475 | # CONFIG_STATIC_CALL_SELFTEST is not set 476 | CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y 477 | CONFIG_ARCH_USE_BUILTIN_BSWAP=y 478 | CONFIG_HAVE_IOREMAP_PROT=y 479 | CONFIG_HAVE_KPROBES=y 480 | CONFIG_HAVE_KRETPROBES=y 481 | CONFIG_HAVE_OPTPROBES=y 482 | CONFIG_HAVE_KPROBES_ON_FTRACE=y 483 | CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y 484 | CONFIG_HAVE_NMI=y 485 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y 486 | CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y 487 | CONFIG_HAVE_ARCH_TRACEHOOK=y 488 | CONFIG_HAVE_DMA_CONTIGUOUS=y 489 | CONFIG_GENERIC_SMP_IDLE_THREAD=y 490 | CONFIG_ARCH_HAS_FORTIFY_SOURCE=y 491 | CONFIG_ARCH_HAS_SET_MEMORY=y 492 | CONFIG_ARCH_HAS_SET_DIRECT_MAP=y 493 | CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y 494 | CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y 495 | CONFIG_ARCH_WANTS_NO_INSTR=y 496 | CONFIG_HAVE_ASM_MODVERSIONS=y 497 | CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y 498 | CONFIG_HAVE_RSEQ=y 499 | CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y 500 | CONFIG_HAVE_HW_BREAKPOINT=y 501 | CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y 502 | CONFIG_HAVE_USER_RETURN_NOTIFIER=y 503 | CONFIG_HAVE_PERF_EVENTS_NMI=y 504 | CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y 505 | CONFIG_HAVE_PERF_REGS=y 506 | CONFIG_HAVE_PERF_USER_STACK_DUMP=y 507 | CONFIG_HAVE_ARCH_JUMP_LABEL=y 508 | CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y 509 | CONFIG_MMU_GATHER_TABLE_FREE=y 510 | CONFIG_MMU_GATHER_RCU_TABLE_FREE=y 511 | CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y 512 | CONFIG_HAVE_CMPXCHG_LOCAL=y 513 | CONFIG_HAVE_CMPXCHG_DOUBLE=y 514 | CONFIG_HAVE_ARCH_SECCOMP=y 515 | CONFIG_HAVE_ARCH_SECCOMP_FILTER=y 516 | # CONFIG_SECCOMP is not set 517 | CONFIG_HAVE_ARCH_STACKLEAK=y 518 | CONFIG_HAVE_STACKPROTECTOR=y 519 | # CONFIG_STACKPROTECTOR is not set 520 | CONFIG_ARCH_SUPPORTS_LTO_CLANG=y 521 | CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y 522 | CONFIG_LTO_NONE=y 523 | CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y 524 | CONFIG_HAVE_CONTEXT_TRACKING=y 525 | CONFIG_HAVE_CONTEXT_TRACKING_OFFSTACK=y 526 | CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y 527 | CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y 528 | CONFIG_HAVE_MOVE_PUD=y 529 | CONFIG_HAVE_MOVE_PMD=y 530 | CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y 531 | CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD=y 532 | CONFIG_HAVE_ARCH_HUGE_VMAP=y 533 | CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y 534 | CONFIG_HAVE_ARCH_SOFT_DIRTY=y 535 | CONFIG_HAVE_MOD_ARCH_SPECIFIC=y 536 | CONFIG_MODULES_USE_ELF_RELA=y 537 | CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y 538 | CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK=y 539 | CONFIG_ARCH_HAS_ELF_RANDOMIZE=y 540 | CONFIG_HAVE_ARCH_MMAP_RND_BITS=y 541 | CONFIG_HAVE_EXIT_THREAD=y 542 | CONFIG_ARCH_MMAP_RND_BITS=28 543 | CONFIG_HAVE_STACK_VALIDATION=y 544 | # CONFIG_COMPAT_32BIT_TIME is not set 545 | CONFIG_HAVE_ARCH_VMAP_STACK=y 546 | CONFIG_VMAP_STACK=y 547 | CONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET=y 548 | # CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT is not set 549 | CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y 550 | CONFIG_STRICT_KERNEL_RWX=y 551 | CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y 552 | CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y 553 | CONFIG_ARCH_USE_MEMREMAP_PROT=y 554 | CONFIG_ARCH_HAS_MEM_ENCRYPT=y 555 | CONFIG_HAVE_STATIC_CALL=y 556 | CONFIG_HAVE_STATIC_CALL_INLINE=y 557 | CONFIG_HAVE_PREEMPT_DYNAMIC=y 558 | CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y 559 | CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y 560 | CONFIG_ARCH_HAS_ELFCORE_COMPAT=y 561 | CONFIG_ARCH_HAS_PARANOID_L1D_FLUSH=y 562 | 563 | # 564 | # GCOV-based kernel profiling 565 | # 566 | CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y 567 | # end of GCOV-based kernel profiling 568 | 569 | CONFIG_HAVE_GCC_PLUGINS=y 570 | CONFIG_GCC_PLUGINS=y 571 | # CONFIG_GCC_PLUGIN_CYC_COMPLEXITY is not set 572 | # CONFIG_GCC_PLUGIN_LATENT_ENTROPY is not set 573 | # CONFIG_GCC_PLUGIN_RANDSTRUCT is not set 574 | # end of General architecture-dependent options 575 | 576 | CONFIG_RT_MUTEXES=y 577 | CONFIG_BASE_SMALL=1 578 | # CONFIG_MODULES is not set 579 | CONFIG_MODULES_TREE_LOOKUP=y 580 | CONFIG_BLOCK=y 581 | CONFIG_BLK_DEV_BSG_COMMON=y 582 | # CONFIG_BLK_DEV_BSGLIB is not set 583 | # CONFIG_BLK_DEV_INTEGRITY is not set 584 | # CONFIG_BLK_DEV_ZONED is not set 585 | # CONFIG_BLK_WBT is not set 586 | # CONFIG_BLK_SED_OPAL is not set 587 | # CONFIG_BLK_INLINE_ENCRYPTION is not set 588 | 589 | # 590 | # Partition Types 591 | # 592 | # CONFIG_PARTITION_ADVANCED is not set 593 | CONFIG_MSDOS_PARTITION=y 594 | CONFIG_EFI_PARTITION=y 595 | # end of Partition Types 596 | 597 | CONFIG_BLK_MQ_PCI=y 598 | CONFIG_BLK_MQ_VIRTIO=y 599 | 600 | # 601 | # IO Schedulers 602 | # 603 | CONFIG_MQ_IOSCHED_DEADLINE=y 604 | CONFIG_MQ_IOSCHED_KYBER=y 605 | # CONFIG_IOSCHED_BFQ is not set 606 | # end of IO Schedulers 607 | 608 | CONFIG_INLINE_SPIN_UNLOCK_IRQ=y 609 | CONFIG_INLINE_READ_UNLOCK=y 610 | CONFIG_INLINE_READ_UNLOCK_IRQ=y 611 | CONFIG_INLINE_WRITE_UNLOCK=y 612 | CONFIG_INLINE_WRITE_UNLOCK_IRQ=y 613 | CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y 614 | CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y 615 | CONFIG_ARCH_USE_QUEUED_RWLOCKS=y 616 | CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y 617 | CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y 618 | CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y 619 | 620 | # 621 | # Executable file formats 622 | # 623 | CONFIG_BINFMT_ELF=y 624 | CONFIG_ELFCORE=y 625 | CONFIG_BINFMT_SCRIPT=y 626 | # CONFIG_BINFMT_MISC is not set 627 | # CONFIG_COREDUMP is not set 628 | # end of Executable file formats 629 | 630 | # 631 | # Memory Management options 632 | # 633 | CONFIG_SELECT_MEMORY_MODEL=y 634 | CONFIG_SPARSEMEM_MANUAL=y 635 | CONFIG_SPARSEMEM=y 636 | CONFIG_SPARSEMEM_EXTREME=y 637 | CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y 638 | CONFIG_SPARSEMEM_VMEMMAP=y 639 | CONFIG_HAVE_FAST_GUP=y 640 | CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 641 | # CONFIG_MEMORY_HOTPLUG is not set 642 | CONFIG_SPLIT_PTLOCK_CPUS=4 643 | CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y 644 | # CONFIG_COMPACTION is not set 645 | # CONFIG_PAGE_REPORTING is not set 646 | CONFIG_PHYS_ADDR_T_64BIT=y 647 | CONFIG_VIRT_TO_BUS=y 648 | # CONFIG_KSM is not set 649 | CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 650 | # CONFIG_TRANSPARENT_HUGEPAGE is not set 651 | CONFIG_ARCH_WANTS_THP_SWAP=y 652 | CONFIG_NEED_PER_CPU_KM=y 653 | # CONFIG_CLEANCACHE is not set 654 | # CONFIG_FRONTSWAP is not set 655 | # CONFIG_CMA is not set 656 | # CONFIG_ZPOOL is not set 657 | # CONFIG_ZSMALLOC is not set 658 | CONFIG_GENERIC_EARLY_IOREMAP=y 659 | # CONFIG_IDLE_PAGE_TRACKING is not set 660 | CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y 661 | CONFIG_ARCH_HAS_PTE_DEVMAP=y 662 | CONFIG_ARCH_HAS_ZONE_DMA_SET=y 663 | # CONFIG_ZONE_DMA is not set 664 | CONFIG_ZONE_DMA32=y 665 | CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y 666 | CONFIG_ARCH_HAS_PKEYS=y 667 | # CONFIG_PERCPU_STATS is not set 668 | 669 | # 670 | # GUP_TEST needs to have DEBUG_FS enabled 671 | # 672 | CONFIG_ARCH_HAS_PTE_SPECIAL=y 673 | 674 | # 675 | # Data Access Monitoring 676 | # 677 | # CONFIG_DAMON is not set 678 | # end of Data Access Monitoring 679 | # end of Memory Management options 680 | 681 | CONFIG_NET=y 682 | 683 | # 684 | # Networking options 685 | # 686 | CONFIG_PACKET=y 687 | # CONFIG_PACKET_DIAG is not set 688 | CONFIG_UNIX=y 689 | CONFIG_UNIX_SCM=y 690 | CONFIG_AF_UNIX_OOB=y 691 | # CONFIG_UNIX_DIAG is not set 692 | # CONFIG_TLS is not set 693 | # CONFIG_XFRM_USER is not set 694 | # CONFIG_NET_KEY is not set 695 | CONFIG_INET=y 696 | # CONFIG_IP_MULTICAST is not set 697 | # CONFIG_IP_ADVANCED_ROUTER is not set 698 | # CONFIG_IP_PNP is not set 699 | # CONFIG_NET_IPIP is not set 700 | # CONFIG_NET_IPGRE_DEMUX is not set 701 | CONFIG_NET_IP_TUNNEL=y 702 | # CONFIG_SYN_COOKIES is not set 703 | # CONFIG_NET_IPVTI is not set 704 | # CONFIG_NET_FOU is not set 705 | # CONFIG_NET_FOU_IP_TUNNELS is not set 706 | # CONFIG_INET_AH is not set 707 | # CONFIG_INET_ESP is not set 708 | # CONFIG_INET_IPCOMP is not set 709 | CONFIG_INET_TUNNEL=y 710 | CONFIG_INET_DIAG=y 711 | CONFIG_INET_TCP_DIAG=y 712 | # CONFIG_INET_UDP_DIAG is not set 713 | # CONFIG_INET_RAW_DIAG is not set 714 | # CONFIG_INET_DIAG_DESTROY is not set 715 | # CONFIG_TCP_CONG_ADVANCED is not set 716 | CONFIG_TCP_CONG_CUBIC=y 717 | CONFIG_DEFAULT_TCP_CONG="cubic" 718 | # CONFIG_TCP_MD5SIG is not set 719 | CONFIG_IPV6=y 720 | # CONFIG_IPV6_ROUTER_PREF is not set 721 | # CONFIG_IPV6_OPTIMISTIC_DAD is not set 722 | # CONFIG_INET6_AH is not set 723 | # CONFIG_INET6_ESP is not set 724 | # CONFIG_INET6_IPCOMP is not set 725 | # CONFIG_IPV6_MIP6 is not set 726 | # CONFIG_IPV6_VTI is not set 727 | CONFIG_IPV6_SIT=y 728 | # CONFIG_IPV6_SIT_6RD is not set 729 | CONFIG_IPV6_NDISC_NODETYPE=y 730 | # CONFIG_IPV6_TUNNEL is not set 731 | # CONFIG_IPV6_MULTIPLE_TABLES is not set 732 | # CONFIG_IPV6_MROUTE is not set 733 | # CONFIG_IPV6_SEG6_LWTUNNEL is not set 734 | # CONFIG_IPV6_SEG6_HMAC is not set 735 | # CONFIG_IPV6_RPL_LWTUNNEL is not set 736 | # CONFIG_IPV6_IOAM6_LWTUNNEL is not set 737 | # CONFIG_MPTCP is not set 738 | # CONFIG_NETWORK_SECMARK is not set 739 | # CONFIG_NETWORK_PHY_TIMESTAMPING is not set 740 | # CONFIG_NETFILTER is not set 741 | # CONFIG_BPFILTER is not set 742 | # CONFIG_IP_DCCP is not set 743 | # CONFIG_IP_SCTP is not set 744 | # CONFIG_RDS is not set 745 | # CONFIG_TIPC is not set 746 | # CONFIG_ATM is not set 747 | # CONFIG_L2TP is not set 748 | # CONFIG_BRIDGE is not set 749 | # CONFIG_NET_DSA is not set 750 | # CONFIG_VLAN_8021Q is not set 751 | # CONFIG_DECNET is not set 752 | # CONFIG_LLC2 is not set 753 | # CONFIG_ATALK is not set 754 | # CONFIG_X25 is not set 755 | # CONFIG_LAPB is not set 756 | # CONFIG_PHONET is not set 757 | # CONFIG_6LOWPAN is not set 758 | # CONFIG_IEEE802154 is not set 759 | # CONFIG_NET_SCHED is not set 760 | # CONFIG_DCB is not set 761 | # CONFIG_BATMAN_ADV is not set 762 | # CONFIG_OPENVSWITCH is not set 763 | # CONFIG_VSOCKETS is not set 764 | # CONFIG_NETLINK_DIAG is not set 765 | # CONFIG_MPLS is not set 766 | # CONFIG_NET_NSH is not set 767 | # CONFIG_HSR is not set 768 | # CONFIG_NET_SWITCHDEV is not set 769 | # CONFIG_NET_L3_MASTER_DEV is not set 770 | # CONFIG_QRTR is not set 771 | # CONFIG_NET_NCSI is not set 772 | # CONFIG_CGROUP_NET_PRIO is not set 773 | # CONFIG_CGROUP_NET_CLASSID is not set 774 | CONFIG_NET_RX_BUSY_POLL=y 775 | CONFIG_BQL=y 776 | 777 | # 778 | # Network testing 779 | # 780 | # CONFIG_NET_PKTGEN is not set 781 | # end of Network testing 782 | # end of Networking options 783 | 784 | # CONFIG_HAMRADIO is not set 785 | # CONFIG_CAN is not set 786 | # CONFIG_BT is not set 787 | # CONFIG_AF_RXRPC is not set 788 | # CONFIG_AF_KCM is not set 789 | # CONFIG_MCTP is not set 790 | # CONFIG_WIRELESS is not set 791 | # CONFIG_RFKILL is not set 792 | # CONFIG_NET_9P is not set 793 | # CONFIG_CAIF is not set 794 | # CONFIG_CEPH_LIB is not set 795 | # CONFIG_NFC is not set 796 | # CONFIG_PSAMPLE is not set 797 | # CONFIG_NET_IFE is not set 798 | # CONFIG_LWTUNNEL is not set 799 | CONFIG_DST_CACHE=y 800 | CONFIG_GRO_CELLS=y 801 | CONFIG_FAILOVER=y 802 | CONFIG_ETHTOOL_NETLINK=y 803 | 804 | # 805 | # Device Drivers 806 | # 807 | CONFIG_HAVE_EISA=y 808 | # CONFIG_EISA is not set 809 | CONFIG_HAVE_PCI=y 810 | CONFIG_PCI=y 811 | CONFIG_PCI_DOMAINS=y 812 | # CONFIG_PCIEPORTBUS is not set 813 | CONFIG_PCIEASPM=y 814 | CONFIG_PCIEASPM_DEFAULT=y 815 | # CONFIG_PCIEASPM_POWERSAVE is not set 816 | # CONFIG_PCIEASPM_POWER_SUPERSAVE is not set 817 | # CONFIG_PCIEASPM_PERFORMANCE is not set 818 | # CONFIG_PCIE_PTM is not set 819 | # CONFIG_PCI_MSI is not set 820 | CONFIG_PCI_QUIRKS=y 821 | # CONFIG_PCI_DEBUG is not set 822 | # CONFIG_PCI_STUB is not set 823 | CONFIG_PCI_LOCKLESS_CONFIG=y 824 | # CONFIG_PCI_IOV is not set 825 | # CONFIG_PCI_PRI is not set 826 | # CONFIG_PCI_PASID is not set 827 | CONFIG_PCI_LABEL=y 828 | # CONFIG_PCIE_BUS_TUNE_OFF is not set 829 | CONFIG_PCIE_BUS_DEFAULT=y 830 | # CONFIG_PCIE_BUS_SAFE is not set 831 | # CONFIG_PCIE_BUS_PERFORMANCE is not set 832 | # CONFIG_PCIE_BUS_PEER2PEER is not set 833 | # CONFIG_HOTPLUG_PCI is not set 834 | 835 | # 836 | # PCI controller drivers 837 | # 838 | 839 | # 840 | # DesignWare PCI Core Support 841 | # 842 | # end of DesignWare PCI Core Support 843 | 844 | # 845 | # Mobiveil PCIe Core Support 846 | # 847 | # end of Mobiveil PCIe Core Support 848 | 849 | # 850 | # Cadence PCIe controllers support 851 | # 852 | # end of Cadence PCIe controllers support 853 | # end of PCI controller drivers 854 | 855 | # 856 | # PCI Endpoint 857 | # 858 | # CONFIG_PCI_ENDPOINT is not set 859 | # end of PCI Endpoint 860 | 861 | # 862 | # PCI switch controller drivers 863 | # 864 | # CONFIG_PCI_SW_SWITCHTEC is not set 865 | # end of PCI switch controller drivers 866 | 867 | # CONFIG_CXL_BUS is not set 868 | # CONFIG_PCCARD is not set 869 | # CONFIG_RAPIDIO is not set 870 | 871 | # 872 | # Generic Driver Options 873 | # 874 | # CONFIG_UEVENT_HELPER is not set 875 | CONFIG_DEVTMPFS=y 876 | CONFIG_DEVTMPFS_MOUNT=y 877 | # CONFIG_STANDALONE is not set 878 | # CONFIG_PREVENT_FIRMWARE_BUILD is not set 879 | 880 | # 881 | # Firmware loader 882 | # 883 | # CONFIG_FW_LOADER is not set 884 | # end of Firmware loader 885 | 886 | # CONFIG_ALLOW_DEV_COREDUMP is not set 887 | # CONFIG_DEBUG_DRIVER is not set 888 | # CONFIG_DEBUG_DEVRES is not set 889 | # CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set 890 | CONFIG_GENERIC_CPU_AUTOPROBE=y 891 | CONFIG_GENERIC_CPU_VULNERABILITIES=y 892 | # end of Generic Driver Options 893 | 894 | # 895 | # Bus devices 896 | # 897 | # CONFIG_MHI_BUS is not set 898 | # end of Bus devices 899 | 900 | # CONFIG_CONNECTOR is not set 901 | 902 | # 903 | # Firmware Drivers 904 | # 905 | 906 | # 907 | # ARM System Control and Management Interface Protocol 908 | # 909 | # end of ARM System Control and Management Interface Protocol 910 | 911 | # CONFIG_EDD is not set 912 | # CONFIG_FIRMWARE_MEMMAP is not set 913 | # CONFIG_ISCSI_IBFT is not set 914 | # CONFIG_FW_CFG_SYSFS is not set 915 | CONFIG_SYSFB=y 916 | # CONFIG_SYSFB_SIMPLEFB is not set 917 | # CONFIG_GOOGLE_FIRMWARE is not set 918 | 919 | # 920 | # EFI (Extensible Firmware Interface) Support 921 | # 922 | # CONFIG_EFI_VARS is not set 923 | CONFIG_EFI_ESRT=y 924 | # CONFIG_EFI_FAKE_MEMMAP is not set 925 | CONFIG_EFI_RUNTIME_WRAPPERS=y 926 | CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER=y 927 | # CONFIG_EFI_BOOTLOADER_CONTROL is not set 928 | # CONFIG_EFI_CAPSULE_LOADER is not set 929 | # CONFIG_EFI_TEST is not set 930 | # CONFIG_APPLE_PROPERTIES is not set 931 | # CONFIG_RESET_ATTACK_MITIGATION is not set 932 | # CONFIG_EFI_RCI2_TABLE is not set 933 | # CONFIG_EFI_DISABLE_PCI_DMA is not set 934 | # end of EFI (Extensible Firmware Interface) Support 935 | 936 | CONFIG_EFI_EARLYCON=y 937 | # CONFIG_EFI_CUSTOM_SSDT_OVERLAYS is not set 938 | 939 | # 940 | # Tegra firmware driver 941 | # 942 | # end of Tegra firmware driver 943 | # end of Firmware Drivers 944 | 945 | # CONFIG_GNSS is not set 946 | # CONFIG_MTD is not set 947 | # CONFIG_OF is not set 948 | CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y 949 | # CONFIG_PARPORT is not set 950 | CONFIG_PNP=y 951 | # CONFIG_PNP_DEBUG_MESSAGES is not set 952 | 953 | # 954 | # Protocols 955 | # 956 | CONFIG_PNPACPI=y 957 | CONFIG_BLK_DEV=y 958 | # CONFIG_BLK_DEV_NULL_BLK is not set 959 | # CONFIG_BLK_DEV_FD is not set 960 | # CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set 961 | # CONFIG_BLK_DEV_LOOP is not set 962 | # CONFIG_BLK_DEV_DRBD is not set 963 | # CONFIG_BLK_DEV_NBD is not set 964 | # CONFIG_BLK_DEV_SX8 is not set 965 | # CONFIG_BLK_DEV_RAM is not set 966 | # CONFIG_CDROM_PKTCDVD is not set 967 | # CONFIG_ATA_OVER_ETH is not set 968 | # CONFIG_VIRTIO_BLK is not set 969 | # CONFIG_BLK_DEV_RBD is not set 970 | # CONFIG_BLK_DEV_RSXX is not set 971 | 972 | # 973 | # NVME Support 974 | # 975 | # CONFIG_BLK_DEV_NVME is not set 976 | # CONFIG_NVME_FC is not set 977 | # CONFIG_NVME_TCP is not set 978 | # end of NVME Support 979 | 980 | # 981 | # Misc devices 982 | # 983 | # CONFIG_DUMMY_IRQ is not set 984 | # CONFIG_IBM_ASM is not set 985 | # CONFIG_PHANTOM is not set 986 | # CONFIG_TIFM_CORE is not set 987 | # CONFIG_ENCLOSURE_SERVICES is not set 988 | # CONFIG_HP_ILO is not set 989 | # CONFIG_SRAM is not set 990 | # CONFIG_DW_XDATA_PCIE is not set 991 | # CONFIG_PCI_ENDPOINT_TEST is not set 992 | # CONFIG_XILINX_SDFEC is not set 993 | # CONFIG_C2PORT is not set 994 | 995 | # 996 | # EEPROM support 997 | # 998 | # CONFIG_EEPROM_93CX6 is not set 999 | # end of EEPROM support 1000 | 1001 | # CONFIG_CB710_CORE is not set 1002 | 1003 | # 1004 | # Texas Instruments shared transport line discipline 1005 | # 1006 | # end of Texas Instruments shared transport line discipline 1007 | 1008 | # 1009 | # Altera FPGA firmware download module (requires I2C) 1010 | # 1011 | # CONFIG_INTEL_MEI is not set 1012 | # CONFIG_INTEL_MEI_ME is not set 1013 | # CONFIG_INTEL_MEI_TXE is not set 1014 | # CONFIG_VMWARE_VMCI is not set 1015 | # CONFIG_GENWQE is not set 1016 | # CONFIG_ECHO is not set 1017 | # CONFIG_MISC_ALCOR_PCI is not set 1018 | # CONFIG_MISC_RTSX_PCI is not set 1019 | # CONFIG_HABANA_AI is not set 1020 | # CONFIG_PVPANIC is not set 1021 | # end of Misc devices 1022 | 1023 | # 1024 | # SCSI device support 1025 | # 1026 | CONFIG_SCSI_MOD=y 1027 | # CONFIG_RAID_ATTRS is not set 1028 | CONFIG_SCSI_COMMON=y 1029 | CONFIG_SCSI=y 1030 | CONFIG_SCSI_DMA=y 1031 | CONFIG_SCSI_PROC_FS=y 1032 | 1033 | # 1034 | # SCSI support type (disk, tape, CD-ROM) 1035 | # 1036 | CONFIG_BLK_DEV_SD=y 1037 | # CONFIG_CHR_DEV_ST is not set 1038 | # CONFIG_BLK_DEV_SR is not set 1039 | # CONFIG_CHR_DEV_SG is not set 1040 | CONFIG_BLK_DEV_BSG=y 1041 | # CONFIG_CHR_DEV_SCH is not set 1042 | # CONFIG_SCSI_CONSTANTS is not set 1043 | # CONFIG_SCSI_LOGGING is not set 1044 | # CONFIG_SCSI_SCAN_ASYNC is not set 1045 | 1046 | # 1047 | # SCSI Transports 1048 | # 1049 | # CONFIG_SCSI_SPI_ATTRS is not set 1050 | # CONFIG_SCSI_FC_ATTRS is not set 1051 | # CONFIG_SCSI_ISCSI_ATTRS is not set 1052 | # CONFIG_SCSI_SAS_ATTRS is not set 1053 | # CONFIG_SCSI_SAS_LIBSAS is not set 1054 | # CONFIG_SCSI_SRP_ATTRS is not set 1055 | # end of SCSI Transports 1056 | 1057 | CONFIG_SCSI_LOWLEVEL=y 1058 | # CONFIG_ISCSI_TCP is not set 1059 | # CONFIG_ISCSI_BOOT_SYSFS is not set 1060 | # CONFIG_SCSI_CXGB3_ISCSI is not set 1061 | # CONFIG_SCSI_BNX2_ISCSI is not set 1062 | # CONFIG_BE2ISCSI is not set 1063 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set 1064 | # CONFIG_SCSI_HPSA is not set 1065 | # CONFIG_SCSI_3W_9XXX is not set 1066 | # CONFIG_SCSI_3W_SAS is not set 1067 | # CONFIG_SCSI_ACARD is not set 1068 | # CONFIG_SCSI_AACRAID is not set 1069 | # CONFIG_SCSI_AIC7XXX is not set 1070 | # CONFIG_SCSI_AIC79XX is not set 1071 | # CONFIG_SCSI_AIC94XX is not set 1072 | # CONFIG_SCSI_MVSAS is not set 1073 | # CONFIG_SCSI_MVUMI is not set 1074 | # CONFIG_SCSI_DPT_I2O is not set 1075 | # CONFIG_SCSI_ADVANSYS is not set 1076 | # CONFIG_SCSI_ARCMSR is not set 1077 | # CONFIG_SCSI_ESAS2R is not set 1078 | # CONFIG_MEGARAID_NEWGEN is not set 1079 | # CONFIG_MEGARAID_LEGACY is not set 1080 | # CONFIG_MEGARAID_SAS is not set 1081 | # CONFIG_SCSI_MPT3SAS is not set 1082 | # CONFIG_SCSI_MPT2SAS is not set 1083 | # CONFIG_SCSI_MPI3MR is not set 1084 | # CONFIG_SCSI_SMARTPQI is not set 1085 | # CONFIG_SCSI_UFSHCD is not set 1086 | # CONFIG_SCSI_HPTIOP is not set 1087 | # CONFIG_SCSI_BUSLOGIC is not set 1088 | # CONFIG_SCSI_MYRB is not set 1089 | # CONFIG_SCSI_MYRS is not set 1090 | # CONFIG_VMWARE_PVSCSI is not set 1091 | # CONFIG_SCSI_SNIC is not set 1092 | # CONFIG_SCSI_DMX3191D is not set 1093 | # CONFIG_SCSI_FDOMAIN_PCI is not set 1094 | # CONFIG_SCSI_ISCI is not set 1095 | # CONFIG_SCSI_IPS is not set 1096 | # CONFIG_SCSI_INITIO is not set 1097 | # CONFIG_SCSI_INIA100 is not set 1098 | # CONFIG_SCSI_STEX is not set 1099 | # CONFIG_SCSI_SYM53C8XX_2 is not set 1100 | # CONFIG_SCSI_QLOGIC_1280 is not set 1101 | # CONFIG_SCSI_QLA_ISCSI is not set 1102 | # CONFIG_SCSI_DC395x is not set 1103 | # CONFIG_SCSI_AM53C974 is not set 1104 | # CONFIG_SCSI_WD719X is not set 1105 | # CONFIG_SCSI_DEBUG is not set 1106 | # CONFIG_SCSI_PMCRAID is not set 1107 | # CONFIG_SCSI_PM8001 is not set 1108 | CONFIG_SCSI_VIRTIO=y 1109 | # CONFIG_SCSI_DH is not set 1110 | # end of SCSI device support 1111 | 1112 | # CONFIG_ATA is not set 1113 | # CONFIG_MD is not set 1114 | # CONFIG_TARGET_CORE is not set 1115 | # CONFIG_FUSION is not set 1116 | 1117 | # 1118 | # IEEE 1394 (FireWire) support 1119 | # 1120 | # CONFIG_FIREWIRE is not set 1121 | # CONFIG_FIREWIRE_NOSY is not set 1122 | # end of IEEE 1394 (FireWire) support 1123 | 1124 | # CONFIG_MACINTOSH_DRIVERS is not set 1125 | CONFIG_NETDEVICES=y 1126 | CONFIG_NET_CORE=y 1127 | # CONFIG_BONDING is not set 1128 | # CONFIG_DUMMY is not set 1129 | # CONFIG_WIREGUARD is not set 1130 | # CONFIG_EQUALIZER is not set 1131 | # CONFIG_NET_FC is not set 1132 | # CONFIG_NET_TEAM is not set 1133 | # CONFIG_MACVLAN is not set 1134 | # CONFIG_IPVLAN is not set 1135 | # CONFIG_VXLAN is not set 1136 | # CONFIG_GENEVE is not set 1137 | # CONFIG_BAREUDP is not set 1138 | # CONFIG_GTP is not set 1139 | # CONFIG_MACSEC is not set 1140 | # CONFIG_NETCONSOLE is not set 1141 | CONFIG_TUN=y 1142 | # CONFIG_TUN_VNET_CROSS_LE is not set 1143 | # CONFIG_VETH is not set 1144 | CONFIG_VIRTIO_NET=y 1145 | # CONFIG_NLMON is not set 1146 | # CONFIG_ARCNET is not set 1147 | # CONFIG_ETHERNET is not set 1148 | # CONFIG_FDDI is not set 1149 | # CONFIG_HIPPI is not set 1150 | # CONFIG_NET_SB1000 is not set 1151 | # CONFIG_PHYLIB is not set 1152 | # CONFIG_MDIO_DEVICE is not set 1153 | 1154 | # 1155 | # PCS device drivers 1156 | # 1157 | # end of PCS device drivers 1158 | 1159 | # CONFIG_PPP is not set 1160 | # CONFIG_SLIP is not set 1161 | 1162 | # 1163 | # Host-side USB support is needed for USB Network Adapter support 1164 | # 1165 | # CONFIG_WLAN is not set 1166 | # CONFIG_WAN is not set 1167 | 1168 | # 1169 | # Wireless WAN 1170 | # 1171 | # CONFIG_WWAN is not set 1172 | # end of Wireless WAN 1173 | 1174 | # CONFIG_VMXNET3 is not set 1175 | # CONFIG_FUJITSU_ES is not set 1176 | CONFIG_NET_FAILOVER=y 1177 | # CONFIG_ISDN is not set 1178 | 1179 | # 1180 | # Input device support 1181 | # 1182 | CONFIG_INPUT=y 1183 | # CONFIG_INPUT_FF_MEMLESS is not set 1184 | # CONFIG_INPUT_SPARSEKMAP is not set 1185 | # CONFIG_INPUT_MATRIXKMAP is not set 1186 | 1187 | # 1188 | # Userland interfaces 1189 | # 1190 | # CONFIG_INPUT_MOUSEDEV is not set 1191 | # CONFIG_INPUT_JOYDEV is not set 1192 | # CONFIG_INPUT_EVDEV is not set 1193 | # CONFIG_INPUT_EVBUG is not set 1194 | 1195 | # 1196 | # Input Device Drivers 1197 | # 1198 | CONFIG_INPUT_KEYBOARD=y 1199 | CONFIG_KEYBOARD_ATKBD=y 1200 | # CONFIG_KEYBOARD_LKKBD is not set 1201 | # CONFIG_KEYBOARD_NEWTON is not set 1202 | # CONFIG_KEYBOARD_OPENCORES is not set 1203 | # CONFIG_KEYBOARD_SAMSUNG is not set 1204 | # CONFIG_KEYBOARD_STOWAWAY is not set 1205 | # CONFIG_KEYBOARD_SUNKBD is not set 1206 | # CONFIG_KEYBOARD_XTKBD is not set 1207 | CONFIG_INPUT_MOUSE=y 1208 | CONFIG_MOUSE_PS2=y 1209 | CONFIG_MOUSE_PS2_ALPS=y 1210 | CONFIG_MOUSE_PS2_BYD=y 1211 | CONFIG_MOUSE_PS2_LOGIPS2PP=y 1212 | CONFIG_MOUSE_PS2_SYNAPTICS=y 1213 | CONFIG_MOUSE_PS2_CYPRESS=y 1214 | CONFIG_MOUSE_PS2_TRACKPOINT=y 1215 | # CONFIG_MOUSE_PS2_ELANTECH is not set 1216 | # CONFIG_MOUSE_PS2_SENTELIC is not set 1217 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set 1218 | CONFIG_MOUSE_PS2_FOCALTECH=y 1219 | # CONFIG_MOUSE_PS2_VMMOUSE is not set 1220 | # CONFIG_MOUSE_SERIAL is not set 1221 | # CONFIG_MOUSE_VSXXXAA is not set 1222 | # CONFIG_INPUT_JOYSTICK is not set 1223 | # CONFIG_INPUT_TABLET is not set 1224 | # CONFIG_INPUT_TOUCHSCREEN is not set 1225 | # CONFIG_INPUT_MISC is not set 1226 | # CONFIG_RMI4_CORE is not set 1227 | 1228 | # 1229 | # Hardware I/O ports 1230 | # 1231 | CONFIG_SERIO=y 1232 | CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y 1233 | CONFIG_SERIO_I8042=y 1234 | CONFIG_SERIO_SERPORT=y 1235 | # CONFIG_SERIO_CT82C710 is not set 1236 | # CONFIG_SERIO_PCIPS2 is not set 1237 | CONFIG_SERIO_LIBPS2=y 1238 | # CONFIG_SERIO_RAW is not set 1239 | # CONFIG_SERIO_ALTERA_PS2 is not set 1240 | # CONFIG_SERIO_PS2MULT is not set 1241 | # CONFIG_SERIO_ARC_PS2 is not set 1242 | # CONFIG_USERIO is not set 1243 | # CONFIG_GAMEPORT is not set 1244 | # end of Hardware I/O ports 1245 | # end of Input device support 1246 | 1247 | # 1248 | # Character devices 1249 | # 1250 | CONFIG_TTY=y 1251 | CONFIG_VT=y 1252 | CONFIG_CONSOLE_TRANSLATIONS=y 1253 | CONFIG_VT_CONSOLE=y 1254 | CONFIG_HW_CONSOLE=y 1255 | # CONFIG_VT_HW_CONSOLE_BINDING is not set 1256 | CONFIG_UNIX98_PTYS=y 1257 | CONFIG_LEGACY_PTYS=y 1258 | CONFIG_LEGACY_PTY_COUNT=256 1259 | CONFIG_LDISC_AUTOLOAD=y 1260 | 1261 | # 1262 | # Serial drivers 1263 | # 1264 | CONFIG_SERIAL_EARLYCON=y 1265 | CONFIG_SERIAL_8250=y 1266 | CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y 1267 | CONFIG_SERIAL_8250_PNP=y 1268 | # CONFIG_SERIAL_8250_16550A_VARIANTS is not set 1269 | # CONFIG_SERIAL_8250_FINTEK is not set 1270 | CONFIG_SERIAL_8250_CONSOLE=y 1271 | CONFIG_SERIAL_8250_PCI=y 1272 | CONFIG_SERIAL_8250_EXAR=y 1273 | CONFIG_SERIAL_8250_NR_UARTS=4 1274 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 1275 | # CONFIG_SERIAL_8250_EXTENDED is not set 1276 | CONFIG_SERIAL_8250_DWLIB=y 1277 | # CONFIG_SERIAL_8250_DW is not set 1278 | # CONFIG_SERIAL_8250_RT288X is not set 1279 | CONFIG_SERIAL_8250_LPSS=y 1280 | CONFIG_SERIAL_8250_MID=y 1281 | 1282 | # 1283 | # Non-8250 serial port support 1284 | # 1285 | # CONFIG_SERIAL_UARTLITE is not set 1286 | CONFIG_SERIAL_CORE=y 1287 | CONFIG_SERIAL_CORE_CONSOLE=y 1288 | # CONFIG_SERIAL_JSM is not set 1289 | # CONFIG_SERIAL_LANTIQ is not set 1290 | # CONFIG_SERIAL_SCCNXP is not set 1291 | # CONFIG_SERIAL_BCM63XX is not set 1292 | # CONFIG_SERIAL_ALTERA_JTAGUART is not set 1293 | # CONFIG_SERIAL_ALTERA_UART is not set 1294 | # CONFIG_SERIAL_ARC is not set 1295 | # CONFIG_SERIAL_RP2 is not set 1296 | # CONFIG_SERIAL_FSL_LPUART is not set 1297 | # CONFIG_SERIAL_FSL_LINFLEXUART is not set 1298 | # CONFIG_SERIAL_SPRD is not set 1299 | # end of Serial drivers 1300 | 1301 | # CONFIG_SERIAL_NONSTANDARD is not set 1302 | # CONFIG_N_GSM is not set 1303 | # CONFIG_NOZOMI is not set 1304 | # CONFIG_NULL_TTY is not set 1305 | # CONFIG_SERIAL_DEV_BUS is not set 1306 | # CONFIG_TTY_PRINTK is not set 1307 | # CONFIG_VIRTIO_CONSOLE is not set 1308 | # CONFIG_IPMI_HANDLER is not set 1309 | # CONFIG_HW_RANDOM is not set 1310 | # CONFIG_APPLICOM is not set 1311 | # CONFIG_MWAVE is not set 1312 | # CONFIG_DEVMEM is not set 1313 | # CONFIG_NVRAM is not set 1314 | CONFIG_DEVPORT=y 1315 | # CONFIG_HPET is not set 1316 | # CONFIG_HANGCHECK_TIMER is not set 1317 | # CONFIG_TCG_TPM is not set 1318 | # CONFIG_TELCLOCK is not set 1319 | # CONFIG_XILLYBUS is not set 1320 | # CONFIG_RANDOM_TRUST_BOOTLOADER is not set 1321 | # end of Character devices 1322 | 1323 | # 1324 | # I2C support 1325 | # 1326 | # CONFIG_I2C is not set 1327 | # end of I2C support 1328 | 1329 | # CONFIG_I3C is not set 1330 | # CONFIG_SPI is not set 1331 | # CONFIG_SPMI is not set 1332 | # CONFIG_HSI is not set 1333 | # CONFIG_PPS is not set 1334 | 1335 | # 1336 | # PTP clock support 1337 | # 1338 | # CONFIG_PTP_1588_CLOCK is not set 1339 | CONFIG_PTP_1588_CLOCK_OPTIONAL=y 1340 | 1341 | # 1342 | # Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. 1343 | # 1344 | # end of PTP clock support 1345 | 1346 | # CONFIG_PINCTRL is not set 1347 | # CONFIG_GPIOLIB is not set 1348 | # CONFIG_W1 is not set 1349 | # CONFIG_POWER_RESET is not set 1350 | # CONFIG_POWER_SUPPLY is not set 1351 | # CONFIG_HWMON is not set 1352 | # CONFIG_THERMAL is not set 1353 | # CONFIG_WATCHDOG is not set 1354 | CONFIG_SSB_POSSIBLE=y 1355 | # CONFIG_SSB is not set 1356 | CONFIG_BCMA_POSSIBLE=y 1357 | # CONFIG_BCMA is not set 1358 | 1359 | # 1360 | # Multifunction device drivers 1361 | # 1362 | # CONFIG_MFD_MADERA is not set 1363 | # CONFIG_HTC_PASIC3 is not set 1364 | # CONFIG_MFD_INTEL_QUARK_I2C_GPIO is not set 1365 | # CONFIG_LPC_ICH is not set 1366 | # CONFIG_LPC_SCH is not set 1367 | # CONFIG_MFD_INTEL_LPSS_ACPI is not set 1368 | # CONFIG_MFD_INTEL_LPSS_PCI is not set 1369 | # CONFIG_MFD_INTEL_PMT is not set 1370 | # CONFIG_MFD_JANZ_CMODIO is not set 1371 | # CONFIG_MFD_KEMPLD is not set 1372 | # CONFIG_MFD_MT6397 is not set 1373 | # CONFIG_MFD_RDC321X is not set 1374 | # CONFIG_MFD_SM501 is not set 1375 | # CONFIG_MFD_SYSCON is not set 1376 | # CONFIG_MFD_TI_AM335X_TSCADC is not set 1377 | # CONFIG_MFD_TQMX86 is not set 1378 | # CONFIG_MFD_VX855 is not set 1379 | # end of Multifunction device drivers 1380 | 1381 | # CONFIG_REGULATOR is not set 1382 | # CONFIG_RC_CORE is not set 1383 | # CONFIG_MEDIA_CEC_SUPPORT is not set 1384 | # CONFIG_MEDIA_SUPPORT is not set 1385 | 1386 | # 1387 | # Graphics support 1388 | # 1389 | # CONFIG_AGP is not set 1390 | CONFIG_VGA_ARB=y 1391 | CONFIG_VGA_ARB_MAX_GPUS=16 1392 | # CONFIG_VGA_SWITCHEROO is not set 1393 | # CONFIG_DRM is not set 1394 | 1395 | # 1396 | # ARM devices 1397 | # 1398 | # end of ARM devices 1399 | 1400 | # 1401 | # Frame buffer Devices 1402 | # 1403 | # CONFIG_FB is not set 1404 | # end of Frame buffer Devices 1405 | 1406 | # 1407 | # Backlight & LCD device support 1408 | # 1409 | # CONFIG_LCD_CLASS_DEVICE is not set 1410 | # CONFIG_BACKLIGHT_CLASS_DEVICE is not set 1411 | # end of Backlight & LCD device support 1412 | 1413 | # 1414 | # Console display driver support 1415 | # 1416 | CONFIG_VGA_CONSOLE=y 1417 | CONFIG_DUMMY_CONSOLE=y 1418 | CONFIG_DUMMY_CONSOLE_COLUMNS=80 1419 | CONFIG_DUMMY_CONSOLE_ROWS=25 1420 | # end of Console display driver support 1421 | # end of Graphics support 1422 | 1423 | # CONFIG_SOUND is not set 1424 | 1425 | # 1426 | # HID support 1427 | # 1428 | CONFIG_HID=y 1429 | # CONFIG_HID_BATTERY_STRENGTH is not set 1430 | # CONFIG_HIDRAW is not set 1431 | # CONFIG_UHID is not set 1432 | CONFIG_HID_GENERIC=y 1433 | 1434 | # 1435 | # Special HID drivers 1436 | # 1437 | # CONFIG_HID_A4TECH is not set 1438 | # CONFIG_HID_ACRUX is not set 1439 | # CONFIG_HID_APPLE is not set 1440 | # CONFIG_HID_AUREAL is not set 1441 | # CONFIG_HID_BELKIN is not set 1442 | # CONFIG_HID_CHERRY is not set 1443 | # CONFIG_HID_COUGAR is not set 1444 | # CONFIG_HID_MACALLY is not set 1445 | # CONFIG_HID_CMEDIA is not set 1446 | # CONFIG_HID_CYPRESS is not set 1447 | # CONFIG_HID_DRAGONRISE is not set 1448 | # CONFIG_HID_EMS_FF is not set 1449 | # CONFIG_HID_ELECOM is not set 1450 | # CONFIG_HID_EZKEY is not set 1451 | # CONFIG_HID_GEMBIRD is not set 1452 | # CONFIG_HID_GFRM is not set 1453 | # CONFIG_HID_GLORIOUS is not set 1454 | # CONFIG_HID_VIVALDI is not set 1455 | # CONFIG_HID_KEYTOUCH is not set 1456 | # CONFIG_HID_KYE is not set 1457 | # CONFIG_HID_WALTOP is not set 1458 | # CONFIG_HID_VIEWSONIC is not set 1459 | # CONFIG_HID_GYRATION is not set 1460 | # CONFIG_HID_ICADE is not set 1461 | # CONFIG_HID_ITE is not set 1462 | # CONFIG_HID_JABRA is not set 1463 | # CONFIG_HID_TWINHAN is not set 1464 | # CONFIG_HID_KENSINGTON is not set 1465 | # CONFIG_HID_LCPOWER is not set 1466 | # CONFIG_HID_LENOVO is not set 1467 | # CONFIG_HID_MAGICMOUSE is not set 1468 | # CONFIG_HID_MALTRON is not set 1469 | # CONFIG_HID_MAYFLASH is not set 1470 | # CONFIG_HID_REDRAGON is not set 1471 | # CONFIG_HID_MICROSOFT is not set 1472 | # CONFIG_HID_MONTEREY is not set 1473 | # CONFIG_HID_MULTITOUCH is not set 1474 | # CONFIG_HID_NTI is not set 1475 | # CONFIG_HID_ORTEK is not set 1476 | # CONFIG_HID_PANTHERLORD is not set 1477 | # CONFIG_HID_PETALYNX is not set 1478 | # CONFIG_HID_PICOLCD is not set 1479 | # CONFIG_HID_PLANTRONICS is not set 1480 | # CONFIG_HID_PLAYSTATION is not set 1481 | # CONFIG_HID_PRIMAX is not set 1482 | # CONFIG_HID_SAITEK is not set 1483 | # CONFIG_HID_SEMITEK is not set 1484 | # CONFIG_HID_SPEEDLINK is not set 1485 | # CONFIG_HID_STEAM is not set 1486 | # CONFIG_HID_STEELSERIES is not set 1487 | # CONFIG_HID_SUNPLUS is not set 1488 | # CONFIG_HID_RMI is not set 1489 | # CONFIG_HID_GREENASIA is not set 1490 | # CONFIG_HID_SMARTJOYPLUS is not set 1491 | # CONFIG_HID_TIVO is not set 1492 | # CONFIG_HID_TOPSEED is not set 1493 | # CONFIG_HID_UDRAW_PS3 is not set 1494 | # CONFIG_HID_XINMO is not set 1495 | # CONFIG_HID_ZEROPLUS is not set 1496 | # CONFIG_HID_ZYDACRON is not set 1497 | # CONFIG_HID_SENSOR_HUB is not set 1498 | # CONFIG_HID_ALPS is not set 1499 | # end of Special HID drivers 1500 | 1501 | # 1502 | # Intel ISH HID support 1503 | # 1504 | # CONFIG_INTEL_ISH_HID is not set 1505 | # end of Intel ISH HID support 1506 | 1507 | # 1508 | # AMD SFH HID Support 1509 | # 1510 | # CONFIG_AMD_SFH_HID is not set 1511 | # end of AMD SFH HID Support 1512 | # end of HID support 1513 | 1514 | CONFIG_USB_OHCI_LITTLE_ENDIAN=y 1515 | # CONFIG_USB_SUPPORT is not set 1516 | # CONFIG_MMC is not set 1517 | # CONFIG_MEMSTICK is not set 1518 | # CONFIG_NEW_LEDS is not set 1519 | # CONFIG_ACCESSIBILITY is not set 1520 | # CONFIG_INFINIBAND is not set 1521 | CONFIG_EDAC_ATOMIC_SCRUB=y 1522 | CONFIG_EDAC_SUPPORT=y 1523 | CONFIG_RTC_LIB=y 1524 | CONFIG_RTC_MC146818_LIB=y 1525 | CONFIG_RTC_CLASS=y 1526 | CONFIG_RTC_HCTOSYS=y 1527 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" 1528 | CONFIG_RTC_SYSTOHC=y 1529 | CONFIG_RTC_SYSTOHC_DEVICE="rtc0" 1530 | # CONFIG_RTC_DEBUG is not set 1531 | CONFIG_RTC_NVMEM=y 1532 | 1533 | # 1534 | # RTC interfaces 1535 | # 1536 | CONFIG_RTC_INTF_SYSFS=y 1537 | CONFIG_RTC_INTF_PROC=y 1538 | CONFIG_RTC_INTF_DEV=y 1539 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set 1540 | # CONFIG_RTC_DRV_TEST is not set 1541 | 1542 | # 1543 | # I2C RTC drivers 1544 | # 1545 | 1546 | # 1547 | # SPI RTC drivers 1548 | # 1549 | 1550 | # 1551 | # SPI and I2C RTC drivers 1552 | # 1553 | 1554 | # 1555 | # Platform RTC drivers 1556 | # 1557 | CONFIG_RTC_DRV_CMOS=y 1558 | # CONFIG_RTC_DRV_DS1286 is not set 1559 | # CONFIG_RTC_DRV_DS1511 is not set 1560 | # CONFIG_RTC_DRV_DS1553 is not set 1561 | # CONFIG_RTC_DRV_DS1685_FAMILY is not set 1562 | # CONFIG_RTC_DRV_DS1742 is not set 1563 | # CONFIG_RTC_DRV_DS2404 is not set 1564 | # CONFIG_RTC_DRV_STK17TA8 is not set 1565 | # CONFIG_RTC_DRV_M48T86 is not set 1566 | # CONFIG_RTC_DRV_M48T35 is not set 1567 | # CONFIG_RTC_DRV_M48T59 is not set 1568 | # CONFIG_RTC_DRV_MSM6242 is not set 1569 | # CONFIG_RTC_DRV_BQ4802 is not set 1570 | # CONFIG_RTC_DRV_RP5C01 is not set 1571 | # CONFIG_RTC_DRV_V3020 is not set 1572 | 1573 | # 1574 | # on-CPU RTC drivers 1575 | # 1576 | # CONFIG_RTC_DRV_FTRTC010 is not set 1577 | 1578 | # 1579 | # HID Sensor RTC drivers 1580 | # 1581 | # CONFIG_RTC_DRV_GOLDFISH is not set 1582 | # CONFIG_DMADEVICES is not set 1583 | 1584 | # 1585 | # DMABUF options 1586 | # 1587 | # CONFIG_SYNC_FILE is not set 1588 | # CONFIG_DMABUF_HEAPS is not set 1589 | # end of DMABUF options 1590 | 1591 | # CONFIG_AUXDISPLAY is not set 1592 | # CONFIG_UIO is not set 1593 | # CONFIG_VFIO is not set 1594 | # CONFIG_VIRT_DRIVERS is not set 1595 | CONFIG_VIRTIO=y 1596 | CONFIG_VIRTIO_PCI_LIB=y 1597 | CONFIG_VIRTIO_MENU=y 1598 | CONFIG_VIRTIO_PCI=y 1599 | CONFIG_VIRTIO_PCI_LEGACY=y 1600 | # CONFIG_VIRTIO_BALLOON is not set 1601 | # CONFIG_VIRTIO_INPUT is not set 1602 | # CONFIG_VIRTIO_MMIO is not set 1603 | # CONFIG_VDPA is not set 1604 | CONFIG_VHOST_MENU=y 1605 | # CONFIG_VHOST_NET is not set 1606 | # CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set 1607 | 1608 | # 1609 | # Microsoft Hyper-V guest support 1610 | # 1611 | # CONFIG_HYPERV is not set 1612 | # end of Microsoft Hyper-V guest support 1613 | 1614 | # CONFIG_GREYBUS is not set 1615 | # CONFIG_COMEDI is not set 1616 | # CONFIG_STAGING is not set 1617 | # CONFIG_X86_PLATFORM_DEVICES is not set 1618 | CONFIG_PMC_ATOM=y 1619 | # CONFIG_CHROME_PLATFORMS is not set 1620 | # CONFIG_MELLANOX_PLATFORM is not set 1621 | CONFIG_SURFACE_PLATFORMS=y 1622 | # CONFIG_SURFACE_PRO3_BUTTON is not set 1623 | CONFIG_HAVE_CLK=y 1624 | CONFIG_HAVE_CLK_PREPARE=y 1625 | CONFIG_COMMON_CLK=y 1626 | 1627 | # 1628 | # Clock driver for ARM Reference designs 1629 | # 1630 | # CONFIG_ICST is not set 1631 | # CONFIG_CLK_SP810 is not set 1632 | # end of Clock driver for ARM Reference designs 1633 | 1634 | # CONFIG_XILINX_VCU is not set 1635 | # CONFIG_HWSPINLOCK is not set 1636 | 1637 | # 1638 | # Clock Source drivers 1639 | # 1640 | CONFIG_CLKEVT_I8253=y 1641 | CONFIG_CLKBLD_I8253=y 1642 | # end of Clock Source drivers 1643 | 1644 | # CONFIG_MAILBOX is not set 1645 | # CONFIG_IOMMU_SUPPORT is not set 1646 | 1647 | # 1648 | # Remoteproc drivers 1649 | # 1650 | # CONFIG_REMOTEPROC is not set 1651 | # end of Remoteproc drivers 1652 | 1653 | # 1654 | # Rpmsg drivers 1655 | # 1656 | # CONFIG_RPMSG_VIRTIO is not set 1657 | # end of Rpmsg drivers 1658 | 1659 | # CONFIG_SOUNDWIRE is not set 1660 | 1661 | # 1662 | # SOC (System On Chip) specific Drivers 1663 | # 1664 | 1665 | # 1666 | # Amlogic SoC drivers 1667 | # 1668 | # end of Amlogic SoC drivers 1669 | 1670 | # 1671 | # Broadcom SoC drivers 1672 | # 1673 | # end of Broadcom SoC drivers 1674 | 1675 | # 1676 | # NXP/Freescale QorIQ SoC drivers 1677 | # 1678 | # end of NXP/Freescale QorIQ SoC drivers 1679 | 1680 | # 1681 | # i.MX SoC drivers 1682 | # 1683 | # end of i.MX SoC drivers 1684 | 1685 | # 1686 | # Enable LiteX SoC Builder specific drivers 1687 | # 1688 | # end of Enable LiteX SoC Builder specific drivers 1689 | 1690 | # 1691 | # Qualcomm SoC drivers 1692 | # 1693 | # end of Qualcomm SoC drivers 1694 | 1695 | # CONFIG_SOC_TI is not set 1696 | 1697 | # 1698 | # Xilinx SoC drivers 1699 | # 1700 | # end of Xilinx SoC drivers 1701 | # end of SOC (System On Chip) specific Drivers 1702 | 1703 | # CONFIG_PM_DEVFREQ is not set 1704 | # CONFIG_EXTCON is not set 1705 | # CONFIG_MEMORY is not set 1706 | # CONFIG_IIO is not set 1707 | # CONFIG_NTB is not set 1708 | # CONFIG_VME_BUS is not set 1709 | # CONFIG_PWM is not set 1710 | 1711 | # 1712 | # IRQ chip support 1713 | # 1714 | # end of IRQ chip support 1715 | 1716 | # CONFIG_IPACK_BUS is not set 1717 | # CONFIG_RESET_CONTROLLER is not set 1718 | 1719 | # 1720 | # PHY Subsystem 1721 | # 1722 | # CONFIG_GENERIC_PHY is not set 1723 | # CONFIG_PHY_CAN_TRANSCEIVER is not set 1724 | # CONFIG_BCM_KONA_USB2_PHY is not set 1725 | # CONFIG_PHY_PXA_28NM_HSIC is not set 1726 | # CONFIG_PHY_PXA_28NM_USB2 is not set 1727 | # CONFIG_PHY_INTEL_LGM_EMMC is not set 1728 | # end of PHY Subsystem 1729 | 1730 | # CONFIG_POWERCAP is not set 1731 | # CONFIG_MCB is not set 1732 | 1733 | # 1734 | # Performance monitor support 1735 | # 1736 | # end of Performance monitor support 1737 | 1738 | # CONFIG_RAS is not set 1739 | # CONFIG_USB4 is not set 1740 | 1741 | # 1742 | # Android 1743 | # 1744 | # CONFIG_ANDROID is not set 1745 | # end of Android 1746 | 1747 | # CONFIG_LIBNVDIMM is not set 1748 | # CONFIG_DAX is not set 1749 | CONFIG_NVMEM=y 1750 | CONFIG_NVMEM_SYSFS=y 1751 | # CONFIG_NVMEM_RMEM is not set 1752 | 1753 | # 1754 | # HW tracing support 1755 | # 1756 | # CONFIG_STM is not set 1757 | # CONFIG_INTEL_TH is not set 1758 | # end of HW tracing support 1759 | 1760 | # CONFIG_FPGA is not set 1761 | # CONFIG_TEE is not set 1762 | # CONFIG_UNISYS_VISORBUS is not set 1763 | # CONFIG_SIOX is not set 1764 | # CONFIG_SLIMBUS is not set 1765 | # CONFIG_INTERCONNECT is not set 1766 | # CONFIG_COUNTER is not set 1767 | # end of Device Drivers 1768 | 1769 | # 1770 | # File systems 1771 | # 1772 | CONFIG_DCACHE_WORD_ACCESS=y 1773 | # CONFIG_VALIDATE_FS_PARSER is not set 1774 | CONFIG_FS_IOMAP=y 1775 | # CONFIG_EXT2_FS is not set 1776 | # CONFIG_EXT3_FS is not set 1777 | CONFIG_EXT4_FS=y 1778 | CONFIG_EXT4_USE_FOR_EXT2=y 1779 | # CONFIG_EXT4_FS_POSIX_ACL is not set 1780 | # CONFIG_EXT4_FS_SECURITY is not set 1781 | # CONFIG_EXT4_DEBUG is not set 1782 | CONFIG_JBD2=y 1783 | # CONFIG_JBD2_DEBUG is not set 1784 | CONFIG_FS_MBCACHE=y 1785 | # CONFIG_REISERFS_FS is not set 1786 | # CONFIG_JFS_FS is not set 1787 | # CONFIG_XFS_FS is not set 1788 | # CONFIG_GFS2_FS is not set 1789 | # CONFIG_BTRFS_FS is not set 1790 | # CONFIG_NILFS2_FS is not set 1791 | # CONFIG_F2FS_FS is not set 1792 | # CONFIG_FS_DAX is not set 1793 | # CONFIG_EXPORTFS_BLOCK_OPS is not set 1794 | CONFIG_FILE_LOCKING=y 1795 | # CONFIG_FS_ENCRYPTION is not set 1796 | # CONFIG_FS_VERITY is not set 1797 | CONFIG_FSNOTIFY=y 1798 | CONFIG_DNOTIFY=y 1799 | CONFIG_INOTIFY_USER=y 1800 | # CONFIG_FANOTIFY is not set 1801 | # CONFIG_QUOTA is not set 1802 | # CONFIG_AUTOFS4_FS is not set 1803 | # CONFIG_AUTOFS_FS is not set 1804 | # CONFIG_FUSE_FS is not set 1805 | # CONFIG_OVERLAY_FS is not set 1806 | 1807 | # 1808 | # Caches 1809 | # 1810 | # CONFIG_FSCACHE is not set 1811 | # end of Caches 1812 | 1813 | # 1814 | # CD-ROM/DVD Filesystems 1815 | # 1816 | # CONFIG_ISO9660_FS is not set 1817 | # CONFIG_UDF_FS is not set 1818 | # end of CD-ROM/DVD Filesystems 1819 | 1820 | # 1821 | # DOS/FAT/EXFAT/NT Filesystems 1822 | # 1823 | CONFIG_FAT_FS=y 1824 | # CONFIG_MSDOS_FS is not set 1825 | CONFIG_VFAT_FS=y 1826 | CONFIG_FAT_DEFAULT_CODEPAGE=437 1827 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" 1828 | # CONFIG_FAT_DEFAULT_UTF8 is not set 1829 | # CONFIG_EXFAT_FS is not set 1830 | # CONFIG_NTFS_FS is not set 1831 | # CONFIG_NTFS3_FS is not set 1832 | # end of DOS/FAT/EXFAT/NT Filesystems 1833 | 1834 | # 1835 | # Pseudo filesystems 1836 | # 1837 | CONFIG_PROC_FS=y 1838 | # CONFIG_PROC_KCORE is not set 1839 | CONFIG_PROC_SYSCTL=y 1840 | CONFIG_PROC_PAGE_MONITOR=y 1841 | # CONFIG_PROC_CHILDREN is not set 1842 | CONFIG_PROC_PID_ARCH_STATUS=y 1843 | CONFIG_KERNFS=y 1844 | CONFIG_SYSFS=y 1845 | CONFIG_TMPFS=y 1846 | # CONFIG_TMPFS_POSIX_ACL is not set 1847 | # CONFIG_TMPFS_XATTR is not set 1848 | # CONFIG_TMPFS_INODE64 is not set 1849 | # CONFIG_HUGETLBFS is not set 1850 | CONFIG_MEMFD_CREATE=y 1851 | CONFIG_ARCH_HAS_GIGANTIC_PAGE=y 1852 | # CONFIG_CONFIGFS_FS is not set 1853 | CONFIG_EFIVAR_FS=y 1854 | # end of Pseudo filesystems 1855 | 1856 | # CONFIG_MISC_FILESYSTEMS is not set 1857 | CONFIG_NETWORK_FILESYSTEMS=y 1858 | # CONFIG_NFS_FS is not set 1859 | # CONFIG_NFSD is not set 1860 | # CONFIG_CEPH_FS is not set 1861 | # CONFIG_CIFS is not set 1862 | # CONFIG_SMB_SERVER is not set 1863 | # CONFIG_CODA_FS is not set 1864 | # CONFIG_AFS_FS is not set 1865 | CONFIG_NLS=y 1866 | CONFIG_NLS_DEFAULT="iso8859-1" 1867 | CONFIG_NLS_CODEPAGE_437=y 1868 | # CONFIG_NLS_CODEPAGE_737 is not set 1869 | # CONFIG_NLS_CODEPAGE_775 is not set 1870 | # CONFIG_NLS_CODEPAGE_850 is not set 1871 | # CONFIG_NLS_CODEPAGE_852 is not set 1872 | # CONFIG_NLS_CODEPAGE_855 is not set 1873 | # CONFIG_NLS_CODEPAGE_857 is not set 1874 | # CONFIG_NLS_CODEPAGE_860 is not set 1875 | # CONFIG_NLS_CODEPAGE_861 is not set 1876 | # CONFIG_NLS_CODEPAGE_862 is not set 1877 | # CONFIG_NLS_CODEPAGE_863 is not set 1878 | # CONFIG_NLS_CODEPAGE_864 is not set 1879 | # CONFIG_NLS_CODEPAGE_865 is not set 1880 | # CONFIG_NLS_CODEPAGE_866 is not set 1881 | # CONFIG_NLS_CODEPAGE_869 is not set 1882 | # CONFIG_NLS_CODEPAGE_936 is not set 1883 | # CONFIG_NLS_CODEPAGE_950 is not set 1884 | # CONFIG_NLS_CODEPAGE_932 is not set 1885 | # CONFIG_NLS_CODEPAGE_949 is not set 1886 | # CONFIG_NLS_CODEPAGE_874 is not set 1887 | # CONFIG_NLS_ISO8859_8 is not set 1888 | # CONFIG_NLS_CODEPAGE_1250 is not set 1889 | # CONFIG_NLS_CODEPAGE_1251 is not set 1890 | # CONFIG_NLS_ASCII is not set 1891 | CONFIG_NLS_ISO8859_1=y 1892 | # CONFIG_NLS_ISO8859_2 is not set 1893 | # CONFIG_NLS_ISO8859_3 is not set 1894 | # CONFIG_NLS_ISO8859_4 is not set 1895 | # CONFIG_NLS_ISO8859_5 is not set 1896 | # CONFIG_NLS_ISO8859_6 is not set 1897 | # CONFIG_NLS_ISO8859_7 is not set 1898 | # CONFIG_NLS_ISO8859_9 is not set 1899 | # CONFIG_NLS_ISO8859_13 is not set 1900 | # CONFIG_NLS_ISO8859_14 is not set 1901 | # CONFIG_NLS_ISO8859_15 is not set 1902 | # CONFIG_NLS_KOI8_R is not set 1903 | # CONFIG_NLS_KOI8_U is not set 1904 | # CONFIG_NLS_MAC_ROMAN is not set 1905 | # CONFIG_NLS_MAC_CELTIC is not set 1906 | # CONFIG_NLS_MAC_CENTEURO is not set 1907 | # CONFIG_NLS_MAC_CROATIAN is not set 1908 | # CONFIG_NLS_MAC_CYRILLIC is not set 1909 | # CONFIG_NLS_MAC_GAELIC is not set 1910 | # CONFIG_NLS_MAC_GREEK is not set 1911 | # CONFIG_NLS_MAC_ICELAND is not set 1912 | # CONFIG_NLS_MAC_INUIT is not set 1913 | # CONFIG_NLS_MAC_ROMANIAN is not set 1914 | # CONFIG_NLS_MAC_TURKISH is not set 1915 | # CONFIG_NLS_UTF8 is not set 1916 | # CONFIG_UNICODE is not set 1917 | # end of File systems 1918 | 1919 | # 1920 | # Security options 1921 | # 1922 | # CONFIG_KEYS is not set 1923 | # CONFIG_SECURITY_DMESG_RESTRICT is not set 1924 | # CONFIG_SECURITY is not set 1925 | # CONFIG_SECURITYFS is not set 1926 | # CONFIG_FORTIFY_SOURCE is not set 1927 | # CONFIG_STATIC_USERMODEHELPER is not set 1928 | # CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set 1929 | CONFIG_DEFAULT_SECURITY_DAC=y 1930 | CONFIG_LSM="lockdown,yama,loadpin,safesetid,integrity" 1931 | 1932 | # 1933 | # Kernel hardening options 1934 | # 1935 | 1936 | # 1937 | # Memory initialization 1938 | # 1939 | CONFIG_INIT_STACK_NONE=y 1940 | # CONFIG_GCC_PLUGIN_STRUCTLEAK_USER is not set 1941 | # CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF is not set 1942 | # CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL is not set 1943 | # CONFIG_GCC_PLUGIN_STACKLEAK is not set 1944 | # CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set 1945 | # CONFIG_INIT_ON_FREE_DEFAULT_ON is not set 1946 | CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y 1947 | # CONFIG_ZERO_CALL_USED_REGS is not set 1948 | # end of Memory initialization 1949 | # end of Kernel hardening options 1950 | # end of Security options 1951 | 1952 | CONFIG_CRYPTO=y 1953 | 1954 | # 1955 | # Crypto core or helper 1956 | # 1957 | CONFIG_CRYPTO_ALGAPI=y 1958 | CONFIG_CRYPTO_ALGAPI2=y 1959 | CONFIG_CRYPTO_AEAD=y 1960 | CONFIG_CRYPTO_AEAD2=y 1961 | CONFIG_CRYPTO_SKCIPHER=y 1962 | CONFIG_CRYPTO_SKCIPHER2=y 1963 | CONFIG_CRYPTO_HASH=y 1964 | CONFIG_CRYPTO_HASH2=y 1965 | CONFIG_CRYPTO_RNG2=y 1966 | # CONFIG_CRYPTO_MANAGER is not set 1967 | # CONFIG_CRYPTO_USER is not set 1968 | CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y 1969 | # CONFIG_CRYPTO_NULL is not set 1970 | CONFIG_CRYPTO_NULL2=y 1971 | # CONFIG_CRYPTO_CRYPTD is not set 1972 | # CONFIG_CRYPTO_AUTHENC is not set 1973 | # CONFIG_CRYPTO_TEST is not set 1974 | CONFIG_CRYPTO_ENGINE=y 1975 | 1976 | # 1977 | # Public-key cryptography 1978 | # 1979 | # CONFIG_CRYPTO_RSA is not set 1980 | # CONFIG_CRYPTO_DH is not set 1981 | # CONFIG_CRYPTO_ECDH is not set 1982 | # CONFIG_CRYPTO_ECDSA is not set 1983 | # CONFIG_CRYPTO_ECRDSA is not set 1984 | # CONFIG_CRYPTO_SM2 is not set 1985 | # CONFIG_CRYPTO_CURVE25519 is not set 1986 | # CONFIG_CRYPTO_CURVE25519_X86 is not set 1987 | 1988 | # 1989 | # Authenticated Encryption with Associated Data 1990 | # 1991 | # CONFIG_CRYPTO_CCM is not set 1992 | # CONFIG_CRYPTO_GCM is not set 1993 | # CONFIG_CRYPTO_CHACHA20POLY1305 is not set 1994 | # CONFIG_CRYPTO_AEGIS128 is not set 1995 | # CONFIG_CRYPTO_AEGIS128_AESNI_SSE2 is not set 1996 | # CONFIG_CRYPTO_SEQIV is not set 1997 | # CONFIG_CRYPTO_ECHAINIV is not set 1998 | 1999 | # 2000 | # Block modes 2001 | # 2002 | # CONFIG_CRYPTO_CBC is not set 2003 | # CONFIG_CRYPTO_CFB is not set 2004 | # CONFIG_CRYPTO_CTR is not set 2005 | # CONFIG_CRYPTO_CTS is not set 2006 | # CONFIG_CRYPTO_ECB is not set 2007 | # CONFIG_CRYPTO_LRW is not set 2008 | # CONFIG_CRYPTO_OFB is not set 2009 | # CONFIG_CRYPTO_PCBC is not set 2010 | # CONFIG_CRYPTO_XTS is not set 2011 | # CONFIG_CRYPTO_KEYWRAP is not set 2012 | # CONFIG_CRYPTO_NHPOLY1305_SSE2 is not set 2013 | # CONFIG_CRYPTO_NHPOLY1305_AVX2 is not set 2014 | # CONFIG_CRYPTO_ADIANTUM is not set 2015 | # CONFIG_CRYPTO_ESSIV is not set 2016 | 2017 | # 2018 | # Hash modes 2019 | # 2020 | # CONFIG_CRYPTO_CMAC is not set 2021 | # CONFIG_CRYPTO_HMAC is not set 2022 | # CONFIG_CRYPTO_XCBC is not set 2023 | # CONFIG_CRYPTO_VMAC is not set 2024 | 2025 | # 2026 | # Digest 2027 | # 2028 | CONFIG_CRYPTO_CRC32C=y 2029 | # CONFIG_CRYPTO_CRC32C_INTEL is not set 2030 | # CONFIG_CRYPTO_CRC32 is not set 2031 | # CONFIG_CRYPTO_CRC32_PCLMUL is not set 2032 | # CONFIG_CRYPTO_XXHASH is not set 2033 | # CONFIG_CRYPTO_BLAKE2B is not set 2034 | # CONFIG_CRYPTO_BLAKE2S_X86 is not set 2035 | # CONFIG_CRYPTO_CRCT10DIF is not set 2036 | # CONFIG_CRYPTO_GHASH is not set 2037 | # CONFIG_CRYPTO_POLY1305 is not set 2038 | # CONFIG_CRYPTO_POLY1305_X86_64 is not set 2039 | # CONFIG_CRYPTO_MD4 is not set 2040 | # CONFIG_CRYPTO_MD5 is not set 2041 | # CONFIG_CRYPTO_MICHAEL_MIC is not set 2042 | # CONFIG_CRYPTO_RMD160 is not set 2043 | # CONFIG_CRYPTO_SHA1 is not set 2044 | # CONFIG_CRYPTO_SHA1_SSSE3 is not set 2045 | # CONFIG_CRYPTO_SHA256_SSSE3 is not set 2046 | # CONFIG_CRYPTO_SHA512_SSSE3 is not set 2047 | # CONFIG_CRYPTO_SHA256 is not set 2048 | # CONFIG_CRYPTO_SHA512 is not set 2049 | # CONFIG_CRYPTO_SHA3 is not set 2050 | # CONFIG_CRYPTO_SM3 is not set 2051 | # CONFIG_CRYPTO_STREEBOG is not set 2052 | # CONFIG_CRYPTO_WP512 is not set 2053 | # CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL is not set 2054 | 2055 | # 2056 | # Ciphers 2057 | # 2058 | # CONFIG_CRYPTO_AES is not set 2059 | # CONFIG_CRYPTO_AES_TI is not set 2060 | # CONFIG_CRYPTO_AES_NI_INTEL is not set 2061 | # CONFIG_CRYPTO_BLOWFISH is not set 2062 | # CONFIG_CRYPTO_BLOWFISH_X86_64 is not set 2063 | # CONFIG_CRYPTO_CAMELLIA is not set 2064 | # CONFIG_CRYPTO_CAMELLIA_X86_64 is not set 2065 | # CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64 is not set 2066 | # CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64 is not set 2067 | # CONFIG_CRYPTO_CAST5 is not set 2068 | # CONFIG_CRYPTO_CAST5_AVX_X86_64 is not set 2069 | # CONFIG_CRYPTO_CAST6 is not set 2070 | # CONFIG_CRYPTO_CAST6_AVX_X86_64 is not set 2071 | # CONFIG_CRYPTO_DES is not set 2072 | # CONFIG_CRYPTO_DES3_EDE_X86_64 is not set 2073 | # CONFIG_CRYPTO_FCRYPT is not set 2074 | # CONFIG_CRYPTO_CHACHA20 is not set 2075 | # CONFIG_CRYPTO_CHACHA20_X86_64 is not set 2076 | # CONFIG_CRYPTO_SERPENT is not set 2077 | # CONFIG_CRYPTO_SERPENT_SSE2_X86_64 is not set 2078 | # CONFIG_CRYPTO_SERPENT_AVX_X86_64 is not set 2079 | # CONFIG_CRYPTO_SERPENT_AVX2_X86_64 is not set 2080 | # CONFIG_CRYPTO_SM4 is not set 2081 | # CONFIG_CRYPTO_SM4_AESNI_AVX_X86_64 is not set 2082 | # CONFIG_CRYPTO_SM4_AESNI_AVX2_X86_64 is not set 2083 | # CONFIG_CRYPTO_TWOFISH is not set 2084 | # CONFIG_CRYPTO_TWOFISH_X86_64 is not set 2085 | # CONFIG_CRYPTO_TWOFISH_X86_64_3WAY is not set 2086 | # CONFIG_CRYPTO_TWOFISH_AVX_X86_64 is not set 2087 | 2088 | # 2089 | # Compression 2090 | # 2091 | # CONFIG_CRYPTO_DEFLATE is not set 2092 | # CONFIG_CRYPTO_LZO is not set 2093 | # CONFIG_CRYPTO_842 is not set 2094 | # CONFIG_CRYPTO_LZ4 is not set 2095 | # CONFIG_CRYPTO_LZ4HC is not set 2096 | # CONFIG_CRYPTO_ZSTD is not set 2097 | 2098 | # 2099 | # Random Number Generation 2100 | # 2101 | # CONFIG_CRYPTO_ANSI_CPRNG is not set 2102 | # CONFIG_CRYPTO_DRBG_MENU is not set 2103 | # CONFIG_CRYPTO_JITTERENTROPY is not set 2104 | # CONFIG_CRYPTO_USER_API_HASH is not set 2105 | # CONFIG_CRYPTO_USER_API_SKCIPHER is not set 2106 | # CONFIG_CRYPTO_USER_API_RNG is not set 2107 | # CONFIG_CRYPTO_USER_API_AEAD is not set 2108 | CONFIG_CRYPTO_HW=y 2109 | # CONFIG_CRYPTO_DEV_PADLOCK is not set 2110 | # CONFIG_CRYPTO_DEV_CCP is not set 2111 | # CONFIG_CRYPTO_DEV_QAT_DH895xCC is not set 2112 | # CONFIG_CRYPTO_DEV_QAT_C3XXX is not set 2113 | # CONFIG_CRYPTO_DEV_QAT_C62X is not set 2114 | # CONFIG_CRYPTO_DEV_QAT_4XXX is not set 2115 | # CONFIG_CRYPTO_DEV_QAT_DH895xCCVF is not set 2116 | # CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set 2117 | # CONFIG_CRYPTO_DEV_QAT_C62XVF is not set 2118 | CONFIG_CRYPTO_DEV_VIRTIO=y 2119 | # CONFIG_CRYPTO_DEV_SAFEXCEL is not set 2120 | # CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set 2121 | 2122 | # 2123 | # Certificates for signature checking 2124 | # 2125 | # end of Certificates for signature checking 2126 | 2127 | # 2128 | # Library routines 2129 | # 2130 | # CONFIG_PACKING is not set 2131 | CONFIG_BITREVERSE=y 2132 | CONFIG_GENERIC_STRNCPY_FROM_USER=y 2133 | CONFIG_GENERIC_STRNLEN_USER=y 2134 | CONFIG_GENERIC_NET_UTILS=y 2135 | CONFIG_GENERIC_FIND_FIRST_BIT=y 2136 | # CONFIG_CORDIC is not set 2137 | # CONFIG_PRIME_NUMBERS is not set 2138 | CONFIG_RATIONAL=y 2139 | CONFIG_GENERIC_PCI_IOMAP=y 2140 | CONFIG_GENERIC_IOMAP=y 2141 | CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y 2142 | CONFIG_ARCH_HAS_FAST_MULTIPLIER=y 2143 | CONFIG_ARCH_USE_SYM_ANNOTATIONS=y 2144 | 2145 | # 2146 | # Crypto library routines 2147 | # 2148 | CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y 2149 | # CONFIG_CRYPTO_LIB_CHACHA is not set 2150 | # CONFIG_CRYPTO_LIB_CURVE25519 is not set 2151 | CONFIG_CRYPTO_LIB_POLY1305_RSIZE=11 2152 | # CONFIG_CRYPTO_LIB_POLY1305 is not set 2153 | # CONFIG_CRYPTO_LIB_CHACHA20POLY1305 is not set 2154 | # end of Crypto library routines 2155 | 2156 | CONFIG_LIB_MEMNEQ=y 2157 | # CONFIG_CRC_CCITT is not set 2158 | CONFIG_CRC16=y 2159 | # CONFIG_CRC_T10DIF is not set 2160 | # CONFIG_CRC_ITU_T is not set 2161 | CONFIG_CRC32=y 2162 | # CONFIG_CRC32_SELFTEST is not set 2163 | CONFIG_CRC32_SLICEBY8=y 2164 | # CONFIG_CRC32_SLICEBY4 is not set 2165 | # CONFIG_CRC32_SARWATE is not set 2166 | # CONFIG_CRC32_BIT is not set 2167 | # CONFIG_CRC64 is not set 2168 | # CONFIG_CRC4 is not set 2169 | # CONFIG_CRC7 is not set 2170 | # CONFIG_LIBCRC32C is not set 2171 | # CONFIG_CRC8 is not set 2172 | # CONFIG_RANDOM32_SELFTEST is not set 2173 | # CONFIG_XZ_DEC is not set 2174 | CONFIG_HAS_IOMEM=y 2175 | CONFIG_HAS_IOPORT_MAP=y 2176 | CONFIG_HAS_DMA=y 2177 | CONFIG_NEED_SG_DMA_LENGTH=y 2178 | CONFIG_NEED_DMA_MAP_STATE=y 2179 | CONFIG_ARCH_DMA_ADDR_T_64BIT=y 2180 | CONFIG_SWIOTLB=y 2181 | # CONFIG_DMA_API_DEBUG is not set 2182 | CONFIG_DQL=y 2183 | CONFIG_NLATTR=y 2184 | # CONFIG_IRQ_POLL is not set 2185 | CONFIG_UCS2_STRING=y 2186 | CONFIG_HAVE_GENERIC_VDSO=y 2187 | CONFIG_GENERIC_GETTIMEOFDAY=y 2188 | CONFIG_GENERIC_VDSO_TIME_NS=y 2189 | CONFIG_FONT_SUPPORT=y 2190 | CONFIG_FONT_8x16=y 2191 | CONFIG_FONT_AUTOSELECT=y 2192 | CONFIG_SG_POOL=y 2193 | CONFIG_ARCH_HAS_PMEM_API=y 2194 | CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y 2195 | CONFIG_ARCH_HAS_COPY_MC=y 2196 | CONFIG_ARCH_STACKWALK=y 2197 | CONFIG_SBITMAP=y 2198 | # end of Library routines 2199 | 2200 | # 2201 | # Kernel hacking 2202 | # 2203 | 2204 | # 2205 | # printk and dmesg options 2206 | # 2207 | # CONFIG_PRINTK_TIME is not set 2208 | # CONFIG_PRINTK_CALLER is not set 2209 | # CONFIG_STACKTRACE_BUILD_ID is not set 2210 | CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 2211 | CONFIG_CONSOLE_LOGLEVEL_QUIET=4 2212 | CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 2213 | # CONFIG_BOOT_PRINTK_DELAY is not set 2214 | # CONFIG_DYNAMIC_DEBUG is not set 2215 | # CONFIG_DYNAMIC_DEBUG_CORE is not set 2216 | CONFIG_SYMBOLIC_ERRNAME=y 2217 | # end of printk and dmesg options 2218 | 2219 | CONFIG_AS_HAS_NON_CONST_LEB128=y 2220 | 2221 | # 2222 | # Compile-time checks and compiler options 2223 | # 2224 | # CONFIG_DEBUG_INFO is not set 2225 | CONFIG_FRAME_WARN=1024 2226 | # CONFIG_STRIP_ASM_SYMS is not set 2227 | # CONFIG_READABLE_ASM is not set 2228 | # CONFIG_HEADERS_INSTALL is not set 2229 | # CONFIG_DEBUG_SECTION_MISMATCH is not set 2230 | # CONFIG_SECTION_MISMATCH_WARN_ONLY is not set 2231 | # CONFIG_DEBUG_FORCE_FUNCTION_ALIGN_64B is not set 2232 | CONFIG_STACK_VALIDATION=y 2233 | # CONFIG_VMLINUX_MAP is not set 2234 | # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set 2235 | # end of Compile-time checks and compiler options 2236 | 2237 | # 2238 | # Generic Kernel Debugging Instruments 2239 | # 2240 | # CONFIG_MAGIC_SYSRQ is not set 2241 | # CONFIG_DEBUG_FS is not set 2242 | CONFIG_HAVE_ARCH_KGDB=y 2243 | # CONFIG_KGDB is not set 2244 | CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y 2245 | # CONFIG_UBSAN is not set 2246 | CONFIG_HAVE_ARCH_KCSAN=y 2247 | CONFIG_HAVE_KCSAN_COMPILER=y 2248 | # CONFIG_KCSAN is not set 2249 | # end of Generic Kernel Debugging Instruments 2250 | 2251 | CONFIG_DEBUG_KERNEL=y 2252 | # CONFIG_DEBUG_MISC is not set 2253 | 2254 | # 2255 | # Memory Debugging 2256 | # 2257 | # CONFIG_PAGE_EXTENSION is not set 2258 | # CONFIG_DEBUG_PAGEALLOC is not set 2259 | # CONFIG_PAGE_OWNER is not set 2260 | # CONFIG_PAGE_POISONING is not set 2261 | # CONFIG_DEBUG_RODATA_TEST is not set 2262 | CONFIG_ARCH_HAS_DEBUG_WX=y 2263 | # CONFIG_DEBUG_WX is not set 2264 | CONFIG_GENERIC_PTDUMP=y 2265 | # CONFIG_DEBUG_OBJECTS is not set 2266 | CONFIG_HAVE_DEBUG_KMEMLEAK=y 2267 | # CONFIG_DEBUG_KMEMLEAK is not set 2268 | # CONFIG_DEBUG_STACK_USAGE is not set 2269 | # CONFIG_SCHED_STACK_END_CHECK is not set 2270 | CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y 2271 | # CONFIG_DEBUG_VM is not set 2272 | # CONFIG_DEBUG_VM_PGTABLE is not set 2273 | CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y 2274 | # CONFIG_DEBUG_VIRTUAL is not set 2275 | # CONFIG_DEBUG_MEMORY_INIT is not set 2276 | CONFIG_ARCH_SUPPORTS_KMAP_LOCAL_FORCE_MAP=y 2277 | # CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP is not set 2278 | CONFIG_HAVE_ARCH_KASAN=y 2279 | CONFIG_HAVE_ARCH_KASAN_VMALLOC=y 2280 | CONFIG_CC_HAS_KASAN_GENERIC=y 2281 | CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y 2282 | CONFIG_HAVE_ARCH_KFENCE=y 2283 | # end of Memory Debugging 2284 | 2285 | # CONFIG_DEBUG_SHIRQ is not set 2286 | 2287 | # 2288 | # Debug Oops, Lockups and Hangs 2289 | # 2290 | # CONFIG_PANIC_ON_OOPS is not set 2291 | CONFIG_PANIC_ON_OOPS_VALUE=0 2292 | CONFIG_PANIC_TIMEOUT=0 2293 | # CONFIG_SOFTLOCKUP_DETECTOR is not set 2294 | CONFIG_HARDLOCKUP_CHECK_TIMESTAMP=y 2295 | # CONFIG_HARDLOCKUP_DETECTOR is not set 2296 | # CONFIG_DETECT_HUNG_TASK is not set 2297 | # CONFIG_WQ_WATCHDOG is not set 2298 | # end of Debug Oops, Lockups and Hangs 2299 | 2300 | # 2301 | # Scheduler Debugging 2302 | # 2303 | CONFIG_SCHED_DEBUG=y 2304 | # CONFIG_SCHEDSTATS is not set 2305 | # end of Scheduler Debugging 2306 | 2307 | # CONFIG_DEBUG_TIMEKEEPING is not set 2308 | 2309 | # 2310 | # Lock Debugging (spinlocks, mutexes, etc...) 2311 | # 2312 | CONFIG_LOCK_DEBUGGING_SUPPORT=y 2313 | # CONFIG_PROVE_LOCKING is not set 2314 | # CONFIG_LOCK_STAT is not set 2315 | # CONFIG_DEBUG_RT_MUTEXES is not set 2316 | # CONFIG_DEBUG_SPINLOCK is not set 2317 | # CONFIG_DEBUG_MUTEXES is not set 2318 | # CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set 2319 | # CONFIG_DEBUG_RWSEMS is not set 2320 | # CONFIG_DEBUG_LOCK_ALLOC is not set 2321 | # CONFIG_DEBUG_ATOMIC_SLEEP is not set 2322 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set 2323 | # CONFIG_LOCK_TORTURE_TEST is not set 2324 | # CONFIG_WW_MUTEX_SELFTEST is not set 2325 | # CONFIG_SCF_TORTURE_TEST is not set 2326 | # CONFIG_CSD_LOCK_WAIT_DEBUG is not set 2327 | # end of Lock Debugging (spinlocks, mutexes, etc...) 2328 | 2329 | # CONFIG_DEBUG_IRQFLAGS is not set 2330 | # CONFIG_STACKTRACE is not set 2331 | # CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set 2332 | # CONFIG_DEBUG_KOBJECT is not set 2333 | 2334 | # 2335 | # Debug kernel data structures 2336 | # 2337 | # CONFIG_DEBUG_LIST is not set 2338 | # CONFIG_DEBUG_PLIST is not set 2339 | # CONFIG_DEBUG_SG is not set 2340 | # CONFIG_DEBUG_NOTIFIERS is not set 2341 | # CONFIG_BUG_ON_DATA_CORRUPTION is not set 2342 | # end of Debug kernel data structures 2343 | 2344 | # CONFIG_DEBUG_CREDENTIALS is not set 2345 | 2346 | # 2347 | # RCU Debugging 2348 | # 2349 | # CONFIG_RCU_SCALE_TEST is not set 2350 | # CONFIG_RCU_TORTURE_TEST is not set 2351 | # CONFIG_RCU_REF_SCALE_TEST is not set 2352 | # CONFIG_RCU_TRACE is not set 2353 | # CONFIG_RCU_EQS_DEBUG is not set 2354 | # end of RCU Debugging 2355 | 2356 | # CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set 2357 | # CONFIG_LATENCYTOP is not set 2358 | CONFIG_USER_STACKTRACE_SUPPORT=y 2359 | CONFIG_HAVE_FUNCTION_TRACER=y 2360 | CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y 2361 | CONFIG_HAVE_DYNAMIC_FTRACE=y 2362 | CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y 2363 | CONFIG_HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y 2364 | CONFIG_HAVE_DYNAMIC_FTRACE_WITH_ARGS=y 2365 | CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y 2366 | CONFIG_HAVE_SYSCALL_TRACEPOINTS=y 2367 | CONFIG_HAVE_FENTRY=y 2368 | CONFIG_HAVE_OBJTOOL_MCOUNT=y 2369 | CONFIG_HAVE_C_RECORDMCOUNT=y 2370 | CONFIG_TRACING_SUPPORT=y 2371 | # CONFIG_FTRACE is not set 2372 | # CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set 2373 | # CONFIG_SAMPLES is not set 2374 | CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y 2375 | 2376 | # 2377 | # x86 Debugging 2378 | # 2379 | # CONFIG_X86_VERBOSE_BOOTUP is not set 2380 | # CONFIG_EARLY_PRINTK is not set 2381 | # CONFIG_EFI_PGT_DUMP is not set 2382 | # CONFIG_DEBUG_TLBFLUSH is not set 2383 | CONFIG_HAVE_MMIOTRACE_SUPPORT=y 2384 | # CONFIG_X86_DECODER_SELFTEST is not set 2385 | CONFIG_IO_DELAY_0X80=y 2386 | # CONFIG_IO_DELAY_0XED is not set 2387 | # CONFIG_IO_DELAY_UDELAY is not set 2388 | # CONFIG_IO_DELAY_NONE is not set 2389 | # CONFIG_CPA_DEBUG is not set 2390 | # CONFIG_DEBUG_ENTRY is not set 2391 | # CONFIG_DEBUG_NMI_SELFTEST is not set 2392 | # CONFIG_X86_DEBUG_FPU is not set 2393 | # CONFIG_PUNIT_ATOM_DEBUG is not set 2394 | # CONFIG_UNWINDER_ORC is not set 2395 | # CONFIG_UNWINDER_FRAME_POINTER is not set 2396 | CONFIG_UNWINDER_GUESS=y 2397 | # end of x86 Debugging 2398 | 2399 | # 2400 | # Kernel Testing and Coverage 2401 | # 2402 | # CONFIG_KUNIT is not set 2403 | # CONFIG_NOTIFIER_ERROR_INJECTION is not set 2404 | # CONFIG_FAULT_INJECTION is not set 2405 | CONFIG_ARCH_HAS_KCOV=y 2406 | CONFIG_CC_HAS_SANCOV_TRACE_PC=y 2407 | # CONFIG_KCOV is not set 2408 | # CONFIG_RUNTIME_TESTING_MENU is not set 2409 | CONFIG_ARCH_USE_MEMTEST=y 2410 | # CONFIG_MEMTEST is not set 2411 | # end of Kernel Testing and Coverage 2412 | # end of Kernel hacking 2413 | 2414 | # 2415 | # Gentoo Linux 2416 | # 2417 | CONFIG_GENTOO_LINUX=y 2418 | CONFIG_GENTOO_LINUX_UDEV=y 2419 | CONFIG_GENTOO_LINUX_PORTAGE=y 2420 | 2421 | # 2422 | # Support for init systems, system and service managers 2423 | # 2424 | CONFIG_GENTOO_LINUX_INIT_SCRIPT=y 2425 | # CONFIG_GENTOO_LINUX_INIT_SYSTEMD is not set 2426 | # end of Support for init systems, system and service managers 2427 | 2428 | # CONFIG_GENTOO_KERNEL_SELF_PROTECTION is not set 2429 | CONFIG_GENTOO_PRINT_FIRMWARE_INFO=y 2430 | # end of Gentoo Linux 2431 | -------------------------------------------------------------------------------- /gentoo/oracle-cloud/1-start-migration: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # this script migrates ubuntu 20.04 to gentoo 4 | 5 | set -ue 6 | 7 | script_dir=$(dirname $(realpath $0)) 8 | 9 | cat <