DPDK patches and discussions
 help / color / mirror / Atom feed
* [PATCH] devtools: spell check
@ 2021-11-12 17:01 Henry Nadeau
  0 siblings, 0 replies; only message in thread
From: Henry Nadeau @ 2021-11-12 17:01 UTC (permalink / raw)
  To: thomas; +Cc: dev

[ upstream commit d4fb4eb08725a3e667042c1f5cd3ed72b94505a7 ]

The spell check script checks for changed files using git,
then parses those files for potential spelling errors. The dictionary is
used
for word exeptions, and the regex file will exclude any regex patterns
supplied on a given line.

Signed-off-by: Henry Nadeau <hnadeau@iol.unh.edu>
---
 devtools/spell_check.sh             |  189 +++
 devtools/spell_check_dictionary.txt | 2157 +++++++++++++++++++++++++++
 devtools/spell_check_regex.txt      |    2 +
 3 files changed, 2348 insertions(+)
 create mode 100755 devtools/spell_check.sh
 create mode 100644 devtools/spell_check_dictionary.txt
 create mode 100644 devtools/spell_check_regex.txt

diff --git a/devtools/spell_check.sh b/devtools/spell_check.sh
new file mode 100755
index 0000000000..c4a7a08dba
--- /dev/null
+++ b/devtools/spell_check.sh
@@ -0,0 +1,189 @@
+#!/bin/bash
+
+dpdk_dir=$(git rev-parse --show-toplevel)
+if [ -z "$dpdk_dir" ]; then
+  echo "Please execute this script from within a git repo"
+  exit 1
+fi
+
+set -e
+allowed_words=''  # path to allowed words file
+all_check='false' # optional flag to check all documentation instead of changes detected by git
+verbose_logging='false'
+branch=$(git rev-parse --abbrev-ref HEAD) # Gets current working branch
+regex_dir=''
+
+while test $# -gt 0; do
+	case "$1" in
+	-h | --help)
+		echo "Spell Check"
+		echo " "
+		echo "spell_check [options] [arguments]"
+		echo " "
+		echo "options:"
+		echo "-h, --help                Show shows list of flags and usages."
+		echo "-a, --all-doc             Specify if all documentation should be checked."
+		echo "-b                        Specify a different branch to be checked for changes against."
+		echo "-d                        Specify a different dictionary to be used by aspell."
+		echo "-o, --output-dir=DIR      Specify a directory to store output in."
+		echo "-r                        Specify a different regex pattern file."
+		echo "-v                        Specify verbose logging."
+		exit 0
+		;;
+	-a | --all-doc)
+		shift
+		export all_check='true'
+		;;
+	-b)
+		shift
+		export remote_branch=$1
+		shift
+		;;
+	-r)
+		shift
+		export regex_dir=$1
+		shift
+		;;
+	-d)
+		shift
+		export allowed_words=$1
+		shift
+		;;
+	-v)
+		shift
+		echo "Verbose logging active!"
+		export verbose_logging='true'
+		;;
+	-o)
+		shift
+		if test $# -gt 0; then
+			export output=$1
+		else
+			echo "no output dir specified"
+			exit 1
+		fi
+		shift
+		;;
+	--output-dir*)
+		export output=$(echo $1 | sed -e 's/^[^=]*=//g')
+		shift
+		;;
+	*)
+		break
+		;;
+	esac
+done
+
+if [ "" = "$output" ]; then
+	output="$dpdk_dir/devtools/spell_check.log"
+else
+	output+=/spell_check.log
+fi
+
+if [ "" = "$regex_dir" ]; then
+	regex_dir="$dpdk_dir/devtools/spell_check_regex.txt"
+fi
+
+PKG_OK=$(which aspell)
+
+if [ $verbose_logging = 'true' ]; then
+	echo Checking for Aspell: "$PKG_OK"
+fi
+
+if [ "" = "$PKG_OK" ]; then
+	echo "Missing Required Package: Aspell"
+	exit 1
+fi
+
+PKG_OK=$(which git)
+
+if [ $verbose_logging = 'true' ]; then
+	echo Checking for Git: "$PKG_OK"
+fi
+
+if [ "" = "$PKG_OK" ]; then
+	echo "Missing Required Package: Git"
+	exit 1
+fi
+
+PKG_OK=$(which parallel)
+
+if [ $verbose_logging = 'true' ]; then
+	echo Checking for Parallel: "$PKG_OK"
+fi
+
+if [ "" = "$PKG_OK" ]; then
+	echo "Missing Required Package: Parallel"
+	exit 1
+fi
+
+# Checking if remote branch flag was set
+if [ "" = "$remote_branch" ]; then
+	remote_branch=$branch
+fi
+
+# Checking if separate dictionary was supplied, if not defaults to spell_check_dictionary.txt in current dir
+if [ "" = "$allowed_words" ]; then
+	allowed_words=$dpdk_dir'/devtools/spell_check_dictionary.txt'
+fi
+
+# function to spell check a single file
+function spellcheck_file() {
+	file="$3/$1"
+	dictionary="$2"
+	sed -e "$4" "$file" | # used to simplify lines sent to aspell
+	  tr -d '*' |
+	  tr -d '`' |
+	  aspell --lang=en --encoding=utf-8 --ignore-case --ignore-repl pipe list -d en --ignore=3 --personal="$dictionary" |
+	  sed -r '/\*/d; /^\s*$/d' |
+	  cut -d ' ' -f 2 |
+	  sort -u |
+	  sed '/International/d' |
+	  grep -Z "" |
+	  xargs -0 -I % grep -on "%" "$file" |
+	  awk -v file="$file" -F ':' '{ printf "%s:%s %s\n", file, $1, $2 }'
+}
+
+# Build regex pattern from files
+regex_pattern="'s/(R)//; "
+while IFS= read -r line; do
+  if [[ ! $line =~ "#" ]]; then
+    regex_pattern+="s/$line/ /; "
+  fi
+done < "$regex_dir"
+regex_pattern="${regex_pattern::-1}'"
+
+if [ "'" = "$regex_pattern" ]; then
+  regex_pattern=''
+fi
+
+# Make sure output file is present and empty
+touch "$output"
+truncate -s 0 "$output"
+
+# setup so that parallel can use the function
+export -f spellcheck_file
+export SHELL="$(type -p bash)"
+
+# Compares diff between current branch and it's remote counterpart
+if [ ! $all_check = 'true' ]; then
+  git diff "$branch" origin/"$remote_branch" --name-only |
+	  grep ".*\.rst" |
+	  # run the spellcheck function over each file in parallel, appending misspellings to the output file
+	  parallel -j "$(nproc)" spellcheck_file {} "$allowed_words" "$dpdk_dir" "$regex_pattern" >> "$output"
+  else
+    find . -name "*.rst" -type f | parallel -j "$(nproc)" spellcheck_file {} "$allowed_words" "$dpdk_dir" "$regex_pattern" >>"$output"
+fi
+
+
+cat "$output"
+
+# remove empty lines in the output
+sed -i '/^$/d' "$output"
+
+# Errors can be counted by counting the number of lines in the output
+errors="$(wc -l "$output" | cut -d ' ' -f 1)"
+printf "Errors found: %d\n" "$errors" | tee -a "$output"
+
+# Make the exit code the number of errors
+exit "$errors"
diff --git a/devtools/spell_check_dictionary.txt b/devtools/spell_check_dictionary.txt
new file mode 100644
index 0000000000..c541c1920f
--- /dev/null
+++ b/devtools/spell_check_dictionary.txt
@@ -0,0 +1,2157 @@
+personal_ws-1.1 en 2156 
+AArch
+ABI's
+ABIs
+ACAT
+ACKs
+ACLs
+ADAT
+AEEOT
+AENQ
+AESN
+AFUs
+AIOP
+ALEF
+ALTQ
+AMDA
+APCI
+API's
+APIs
+ARKA
+ARKP
+ARMv
+ASCAT
+ASIC
+ASLR
+ASan
+AUPE
+AddressSanitizer
+AdminQ
+Agilex
+Agilio
+AltArch
+AltiVec
+Alveo
+Aquantia
+Aquantia's
+Arkville
+Arkville's
+Arria
+BBDev
+BBdev
+BCAT
+BDFs
+BMan
+BPSK
+BSPs
+BUFS
+BXNT
+Backports
+Blocklisting
+BlueField
+Broadcom
+Broadwell
+Broder
+BusA
+CAVP
+CAVS
+CBAR
+CBDMA
+CBFC
+CCAT
+CCITT
+CCed
+CDAT
+CEIL
+CFLAG
+CIDR
+CIMC
+CLIs
+CNTRS
+COMPDEV
+CPUFLAG
+CPUFreq
+CPUIdle
+CPUs
+CamelCase
+Cavium
+Cavium's
+CentOS
+Centos
+Cesnet
+Chelsio
+CollectD
+CommitID
+CompressDev
+ConnectX
+Coverity
+CryptoDev
+DALLOW
+DCBX
+DDEBUG
+DDIO
+DEINTERLEAVE
+DEINTERLEAVER
+DESTDIR
+DEVMEM
+DEVS
+DIMM
+DIMMs
+DLActive
+DLB's
+DMAdev
+DMFS
+DOCSISBPI
+DPBP
+DPBPs
+DPDK's
+DPDKVMS
+DPIO
+DPIOs
+DPMAC
+DPMCP
+DPRCs
+DRHD
+DRTE
+DSPs
+DTLB
+DVPT
+DWRR
+Dbuildtype
+Ddisable
+Deinitialising
+Denable
+DevA
+DevB
+DevC
+DevD
+DevF
+DevX
+DevxEnabled
+DevxFsRules
+Dexamples
+Dflexran
+DiffServ
+Diffie
+Dmachine
+Dmax
+Dmitry
+Dockerfile
+DomBDF
+Doption
+Dplatform
+DrvA
+DrvB
+DstMAC
+Dwerror
+EBUSY
+ECAT
+ECDSA
+ECPFs
+ECPM
+EDAT
+EEARBC
+EEXIST
+EFD's
+EINVAL
+ENAv
+ENOSPC
+ENOSYS
+ENOTSUP
+EPOLLIN
+ERANGE
+ESXi
+ETAG
+ETHPORTS
+ETQF
+ETrackId
+EVLAN
+EZchip
+Enablement
+EncryptExtIV
+EqualizationComplete
+Ericsson
+EthApp
+EtherType
+EventDev
+Extranet
+FAILOVER
+FALLTHROUGH
+FANOUT
+FCCT
+FDIRCTL
+FEXTNVM
+FFFFFFFF
+FFFFFFFFFFFFFFFFFFFFFFFF
+FIFOs
+FMan
+FPGAs
+FQID
+FRAMESIZE
+FastLinQ
+FleXRAN
+FlexRAN
+FlexSparc
+FortPark
+Fortville
+Foxville
+FpgaDev
+FrameCheckSequenceErrors
+FreeBSD
+FreeBSD's
+Freescale
+GBASE
+GCAT
+GCMVS
+GFSbox
+GGAs
+GGRP
+GGRPs
+GLINKSETTINGS
+GNinja
+GPAs
+GPGPU
+GPIO
+GPLv
+GPUs
+GRE's
+GRENAT
+GROed
+GSET
+GSO'd
+GSOed
+GTPC
+GTPU
+GTPoGRE
+GTPv
+Gbps
+HCAT
+HIFS
+HQoS
+HTSS
+HUGEFILE
+HUGETLB
+HWRM
+HWaddr
+Haswell
+HiSilicon
+HowTo
+Huawei
+HugePages
+Hugepagesize
+IANA
+ICMPv
+IFCVF's
+IGEL
+IGMP
+INTLBK
+INTx
+IOPL
+IOSF
+IOTLB
+IOVM
+IPADs
+IPHDR
+IPSec
+IPsec
+IRQs
+ITERS
+IXIA
+InfiniBand
+InifiniBand
+Inkscape
+IntN
+Intels
+Ironpond
+JITed
+KBytes
+Kaminsky
+KeySbox
+Kozlyuk
+Kunpeng
+Kunpeng's
+LDFLAG
+LEDs
+LETCAM
+LF's
+LFSR
+LIBDIR
+LIBEAL
+LINEARBUF
+LINKINFO
+LKCF
+LKML
+LLDP
+LLQv
+LLRs
+LSB's
+LSBs
+LSDK
+LTTng
+Linaro
+LineSidePort
+LiquidIO
+LnkSta
+Lpmcore
+MACSec
+MACsec
+MAIA
+MAINT
+MBUFs
+MBytes
+MDATA
+MDIO
+MEMLOCK
+MESI
+MKEY
+MMAP's
+MMIO
+MODINV
+MPLSoGRE
+MPLSoUDP
+MPMC
+MPMCF
+MPSC
+MSBs
+MSDN
+MSIx
+MSRs
+MSVC
+MTUs
+MWAIT
+Maipo
+Mellanox
+MemC
+MemCache
+MinGW
+Mitzenmacher
+Moongen
+MySpecialDev
+MySpecialDrv
+NASM
+NCSI
+NDIS
+NGIO
+NIC's
+NICs
+NICsfor
+NIST
+NNNNN
+NOFILE
+NOLIVE
+NOTREACHED
+NREGIONS
+NSDI
+NSECPERSEC
+NXP's
+NetUIO
+NetVSC
+NetXtreme
+Netcope
+Netlink
+Netmap
+Netronome's
+Niantic
+Npcap
+OFPAT
+OKTET
+OPADs
+OPAE
+OR'd
+OcteonTX
+OcteonTx
+Ootpa
+OpenCL
+OpenFabrics
+OpenFlow
+OpenSSL
+OpenWRT
+OpenWrt
+PBSIZE
+PCDs
+PCIADDR
+PCIe
+PCRE
+PCTYPES
+PF's
+PFVF
+PFVMTXSSW
+PGSIZE
+PHYREG
+PMD's
+PMDs
+POSIX
+PPPOED
+PPPOES
+PPPoE
+PPPoL
+PQoS
+PRIu
+PRNG
+PROBLEMTYPE
+PYTHONPATH
+Pankaj
+Parallelize
+Paravirtual
+Pensando
+Permop
+Pfaff
+Pipelevel
+Powerlinux
+Prepend
+QATE
+QEMU's
+QLogic
+QMan
+QNUM
+QSFP
+QinQ
+QorIQ
+QuickAssist
+QuickData
+RETA's
+RETAs
+RFCE
+RFOE
+RHEL
+RINGSIZE
+ROUNDROBIN
+RSERV
+RSMBL
+RSPCIPHY
+ReEx
+ReTa
+Readme
+Redhat
+Regexes
+Retransmit
+Rootfile
+RxQs
+RxTx
+SA's
+SADB
+SAIDX
+SATP
+SCLK
+SELINUXTYPE
+SELinux
+SFID
+SFNX
+SGBT
+SGLs
+SIGBUS
+SIGCOMM
+SIGHUP
+SIGINT
+SLAs
+SLES
+SLINKSETTINGS
+SMMU
+SMMUv
+SMTP
+SOC's
+SOCs
+SPDK
+SPDX
+SPSC
+SRAM
+SRTD
+SSET
+SSOW
+SSOWS
+SXGMII
+ScaleBricks
+SeLockMemoryPrivilege
+SecMon
+Semihalf
+Sendto
+Shumway
+Silicom
+Skylake
+SlotClk
+SmartNICs
+SoCs
+SoftNIC
+SolarCapture
+Solarflare
+SpeedStep
+StrataGX
+Subfield
+Subkey
+Subtarget
+Sunsetting
+TAGCTRL
+TCAM
+TCPHDR
+TCPv
+TDES
+TIMvf
+TIPG
+TLBs
+TLVs
+TPAUSE
+TPID's
+TSDL
+TSOed
+TSOv
+TestPMD
+TestPoint
+TestPointShared
+Testpoint
+ThunderX
+Timebase
+ToolChain
+TrErr
+TruFlow
+Twinpond
+UCSM
+UCTX
+UDPv
+UEFI
+UMWAIT
+UTRA
+Unary
+UniPHY
+Unregistration
+VADT
+VCBs
+VDAT
+VEBs
+VF's
+VFTA
+VICs
+VIRQFD
+VLANs
+VLVF
+VLXAN
+VM's
+VMBus
+VMDq
+VMware
+VPCLMULQDQ
+VRRP
+VTEP
+VTune
+VXLan
+VarText
+Varkey
+Versal
+VirtIO
+VirtQ
+Virtio's
+VxLAN
+WAITPKG
+WORKDIR
+WQEs
+WangXun
+Wangxun
+WinOF
+WinPcap
+Wmissing
+XCAT
+XGBE
+XORed
+XXCC
+XXXXXXXXXX
+Xenial
+Xeon
+Xilinx
+XtremeScale
+Yocto
+ZIPVF
+Zhou
+aQtion
+aaaa
+aarch
+abar
+abcdefgh
+abidiff
+accel
+accessor
+acked
+acking
+acks
+acpi
+activeate
+addif
+addr
+addrs
+adminq
+adptrs
+aead
+aesni
+affinitize
+affinitized
+affinitizing
+aflag
+algo
+algos
+allmulti
+allmulticast
+alloc
+allocator
+allocator's
+allocators
+allowlist
+allports
+alrt
+altivec
+amumble
+amzn
+antispoof
+apis
+argc
+args
+argv
+armv
+asan
+asym
+async
+atexit
+atmost
+atoi
+atomicNN
+atomicity
+atomics
+attr
+auth
+autoconf
+autodetected
+autogen
+autoload
+autoneg
+autonegotiation
+autotest
+autotests
+autotools
+axgbe
+babeltrace
+backend
+backends
+backplane
+backport
+backported
+backporting
+backpressure
+backquotes
+baddr
+balancer
+barcharts
+baseband
+basegraph
+basename
+bbdev
+bbdevs
+bcac
+bcast
+bcde
+bcmfs
+beefd
+benchmarking
+bflag
+binded
+binutils
+bitcnt
+bitfield
+bitfields
+bitmask
+bitmasks
+bitrate
+bitrates
+bitratestats
+bitstream
+bitwidth
+bitwidths
+bitwise
+bler
+blocklist
+blocksz
+bluefield
+bnxt
+bondingX
+bool
+bootargs
+bootindex
+boxplot
+bphy
+bpid
+bpool
+branchless
+brctl
+breakpoint
+bsize
+bufring
+bufsz
+bugfixes
+builddir
+buildroot
+buildtools
+buildtype
+builtins
+bursty
+busybox
+byname
+bytecode
+byteswap
+cBPF
+caam
+caba
+cacheline
+cack
+calc
+callee
+callfd
+calloc
+callout
+capa
+cbaf
+cbps
+ccac
+ccbbffffaa
+cdev
+cdfd
+centric
+cfgfile
+cfilter
+cflags
+cgroup
+cgroups
+chacha
+changings
+charcrypto
+chardev
+charp
+cheatsheet
+checkpatch
+checkpatches
+checksumming
+checksums
+chipset
+chipsets
+chkr
+chksum
+chlen
+chmod
+chnk
+chown
+cint
+ciphertext
+cksum
+classif
+cldemote
+clks
+cmac
+cmake
+cman
+cmdif
+cmdline
+cmds
+cmit
+cnic
+cntvct
+cnxk
+codespell
+combov
+commandline
+committer's
+comms
+compN
+comparator
+comparators
+compat
+compilervars
+compressdev
+compressdevs
+cond
+conf
+config
+configfile
+configruration
+configs
+connectx
+conntrack
+const
+contig
+contigmalloc
+contigmem
+contiguousness
+contrib
+conv
+copybreak
+coredump
+coredumpsize
+corei
+corelist
+coremask
+cperf
+cppc
+cpuX
+cpufreq
+cpuinfo
+cpumask
+cpus
+cpuset
+cputune
+cron
+crypto
+cryptodev
+cryptodev's
+cryptodevs
+cryptographic
+cryptolib
+cryptoperf
+csiostor
+cstream
+csum
+csumonly
+ctod
+ctrl
+ctrlmbuf
+cuda
+cudaStream
+currentMemory
+cvlan
+cvss
+cxgb
+cxgbe
+cxgbetool
+cxgbevf
+cxgbtool
+cyclecount
+dPacket
+daemonize
+data's
+datagram
+datagrams
+datapath
+datapaths
+dataplane
+dataroom
+datasheet
+dataunit
+dbdf
+deallocate
+deallocated
+deallocates
+deallocating
+deallocation
+debugbuild
+debugfs
+debugoptimized
+decap
+decaped
+decaps
+decapsulate
+decapsulated
+decapsulating
+decapsulation
+decomp
+decrementing
+decrypt
+decrypted
+dedent
+dedented
+defs
+degradations
+deinit
+deinitialization
+deinitialized
+denylist
+deps
+deqd
+deque
+dequeing
+dequeue
+dequeued
+dequeueing
+dequeues
+dequeuing
+dereference
+dereferenced
+dereferencing
+desc
+descs
+dest
+deterministically
+dettach
+devarg
+devargs
+devbind
+devel
+develconfig
+deviceID
+deviceid
+devid
+devinfo
+devinit
+devlink
+devtools
+devtype
+devuninit
+diag
+dirname
+disaggregated
+distr
+distrib
+distro
+distros
+dlopen
+dmac
+dmadev
+dmadevs
+dmafwd
+dmar
+dmarXXX
+dmas
+dmesg
+dmidecode
+docsis
+dont
+dostuff
+downlink
+downscript
+doxy
+doxygen
+dpaa
+dpci
+dpcon
+dpdk
+dpdmai
+dpni
+dport
+dprc
+dpseci
+dptmapi
+dqud
+dracut
+driverctl
+dropless
+droppper
+drvinfo
+drwxr
+dscp
+dsts
+dtap
+dtunX
+dumpcap
+dynf
+dynfield
+dynflag
+eBPF
+eCPRI
+eMPW
+ecid
+ecmp
+ecpri
+edab
+eeprom
+eetrack
+elftools
+elif
+elts
+emulatorpin
+encap
+encaped
+encapped
+endPtr
+endian
+endianness
+endif
+enetc
+enic
+enqd
+enqueue
+enqueued
+enqueueing
+enqueues
+enqueuing
+entrancy
+entres
+entryx
+enum
+enums
+enumtype
+epoll
+errno
+essb
+eswitch
+ethdev
+ethdev's
+ethdevs
+ethertype
+ethertypes
+ethtool
+evdev
+eventdev
+eventdevs
+eventport
+eventq
+evtim
+ewma
+exdsa
+executables
+expirations
+extbuf
+extconf
+extern
+extmbuf
+extmem
+extstats
+fPIC
+facto
+failsafe
+fastpath
+fbarray
+fd's
+fdir
+fdir's
+fdirmatch
+fdirmiss
+fdisk
+fdopen
+ffadc
+ffade
+ffea
+ffff
+ffffff
+filepath
+filesystem
+filetype
+fillcrypto
+filtermask
+filtermode
+fini
+fips
+firmwares
+fixline
+flexbytes
+flexpayload
+flexran
+flib
+flowapi
+flowgen
+flowid
+flowptr
+flowttl
+flowtype
+flushtime
+fman
+fmlib
+foohead
+foreach
+formatters
+fpavf
+fpga
+fprintf
+framecnt
+framesz
+freebsd
+freqs
+frequences
+frontend
+frontends
+fslmc
+fstab
+ftag
+fullbuild
+fullchk
+fullq
+func
+funcs
+fwdbuild
+fwding
+geneve
+getcpuclockid
+getopt
+getschedparam
+getspecific
+getwork
+gfni
+glibc
+globbing
+glort
+gmac
+gmake
+gnueabihf
+goto
+gpudev
+gpus
+gragment
+grehdr
+grep'ed
+groupinstall
+guarant
+gzip
+hairpinq
+hardcoded
+harq
+hdls
+helloworld
+hexmask
+hier
+highlevel
+higig
+hinic
+hisilicon
+hmac
+hostdev
+hostfwd
+hostname
+hostnet
+hotplug
+hotplugged
+hotplugging
+howto
+hpet
+hrtp
+hthresh
+htonl
+hugepage
+hugepages
+hugepagesz
+hugetlbfs
+hwcap
+hwgrp
+hwissue
+hwloc
+hyperthreading
+hyst
+iAVF
+iSCSI
+iavf
+ibadcrc
+ibadlen
+ibverbs
+ibytes
+icmp
+icmpecho
+icmpv
+idxd
+ient
+ierrors
+ietf
+iface
+ifaceX
+ifconfig
+ifcvf
+ifdef
+ifname
+ifndef
+ifpga
+ifup
+igbvf
+imcasts
+imissed
+imix
+impl
+implementers
+incrementing
+infa
+infiniband
+inflight
+inflights
+infos
+init
+initializer
+initializers
+initializion
+inlined
+inlining
+inmigrate
+inorder
+insmod
+intXX
+interleaver
+interprocedural
+intf
+intr
+intra
+intrinsics
+ints
+intx
+ioat
+ioeventfd
+iofwd
+iomem
+iommu
+ioport
+ioports
+iova
+ipackets
+ipip
+iproute
+ipsec
+irqs
+isal
+iscard
+isdigit
+isolcpus
+isonum
+iter
+ivshmem
+ixgbe
+ixgbevf
+jansson
+jhash
+jitter
+jobstats
+json
+kaleido
+kasumi
+kbytes
+kdrv
+keepalive
+keepcfg
+kenv
+keyX
+keygen
+keytag
+keywidth
+kflows
+killall
+kldload
+kldstat
+kldunload
+kmod
+kmods
+kni's
+kqueue
+kstrtoul
+kthread
+kthreads
+ktrace
+kvargs
+lacp
+latencystats
+layerscape
+lbrm
+lcore
+lcoreid
+lcores
+ldconfig
+ldflags
+ldpc
+ldpcdec
+ldpcenc
+libAArch
+libSSO
+libX
+libabigail
+libarchive
+libasan
+libatomic
+libbpf
+libc
+libcrypto
+libcryptodev
+libdpdk
+libefx
+libelf
+libeventdev
+libexecinfo
+libgcc
+libibverbs
+libisal
+libjansson
+libmemif
+libmlx
+libmusdk
+libname
+libnfb
+libnl
+libnuma
+libpcap
+libpqos
+librte
+libs
+libsze
+libtool
+libudev
+libvhost
+libvirt
+libz
+linearization
+linearize
+linearized
+linearizing
+linuxapp
+liovf
+liquidio
+literalinclude
+liveness
+lkup
+lladdr
+llvm
+lmac
+loadcfg
+loadfw
+loadu
+lockfree
+lockless
+loglevel
+loglevels
+logtype
+lookaside
+lookups
+loopback
+lossy
+lrand
+lrte
+lrwxrwxrwx
+lscpu
+lsmod
+lspci
+lstopo
+lthread
+lthreads
+lundef
+macExtS
+macaddr
+macaddrs
+macsec
+macswap
+mainloop
+makefile
+makefiles
+malloc
+manpages
+mappable
+maskable
+maskbits
+masklen
+maxdepth
+maxflows
+maxhash
+maxlen
+maxp
+maxth
+mbcache
+mbox
+mbps
+mbuf
+mbuf's
+mbufs
+mcam
+mcast
+mcfg
+mcpu
+mcus
+mdev
+memAccess
+memconfig
+memcopy
+memcpy
+memdev
+memdump
+memfd
+memhdr
+memif
+meminfo
+memoryBacking
+mempool
+mempool's
+mempools
+memseg
+memsegs
+memset
+memsize
+memzone
+memzones
+menthod
+menuconfig
+mergeable
+mesonconf
+mgmt
+microarchitecture
+microarchitectures
+microblock
+middleboxes
+milli
+mingw
+miniCQE
+mins
+minth
+misalign
+misprediction
+mkconfig
+mkdir
+mlnx
+mlnxofedinstall
+mlockall
+mlxconfig
+mlxdevm
+mlxfwreset
+mlxreg
+mmap
+mmap'ed
+mmaping
+mmapped
+mmaps
+modex
+modexp
+modinfo
+modprobe
+mountpoint
+mpls
+mplsogre
+mplsoudp
+mpool
+mpps
+mprq
+mrvl
+msgs
+msix
+mspdc
+mtod
+mtophys
+mtrapi
+mtrr
+mtune
+multicast
+multicasting
+multicasts
+multicore
+multilib
+multiline
+multiport
+multiprocess
+multiqueue
+multithread
+multithreaded
+multithreading
+musdk
+musl
+mutex
+mutexes
+mvneta
+mvpp
+mvsam
+myapp
+mydoc
+mynet
+nack
+namespace
+nano
+nanosleep
+napi
+natively
+nbcore
+nbport
+negllr
+neoverse
+neta
+netcat
+netdev
+netdev's
+netdevice
+netif
+netlogdecode
+netperf
+netronome
+netuio
+netvf
+netvsc
+newdir
+newsize
+nexts
+nffw
+ngbe
+nics
+nicvf
+nitrox
+nixlf
+nocbs
+nodefaults
+nodeid
+nodeps
+nodesc
+nodeset
+nodev
+nodrop
+nographic
+nohz
+nointxmask
+noiommu
+nombuf
+noncontiguous
+nonleaf
+noreturn
+nowait
+npalf
+nrange
+nsec
+nseg
+ntohl
+ntuple
+numa
+numactl
+numatune
+numref
+numvfs
+nvgre
+oUDP
+obase
+objdump
+objhdr
+objs
+obytes
+octeon
+octeontx
+oerror
+oerrors
+ofed
+offsetof
+olflags
+onchip
+onwards
+opackets
+opdl
+openibd
+openssl
+openwrt
+optype
+osdep
+outb
+outes
+outoffset
+overcommitted
+oversubscription
+ovlan
+ovrd
+pCPU
+pCPUs
+packetbuffer
+pagefault
+pagemap
+pagemaps
+pagesize
+param
+paramX
+paramY
+paramZ
+params
+paravirtualized
+parm
+parsers
+passlist
+passthrough
+passthru
+patchset
+patchsets
+pcap
+pcapng
+pcaps
+pciconf
+pcidb
+pcifunc
+pcisf
+pcpu
+pctype
+pdcp
+pdev
+pdpe
+pdump
+perf
+performant
+personalization
+pfcp
+pflink
+pfnum
+phdr
+physaddr
+physmem
+pipelined
+pipelining
+pkgconf
+pkgconfig
+pkgo
+pkill
+pkivf
+pkmbuf
+pkovf
+pktgen
+pktlen
+pktmbuf
+pktmbufs
+pktmode
+pkts
+plaintext
+plcores
+plotly
+pluggable
+plugindir
+pmdinfo
+pmdinfogen
+pmds
+pmgmt
+policer
+popd
+portId
+portconf
+portid
+portlist
+portmap
+portmask
+portn
+portnum
+portstats
+postcopy
+postfix
+postmigrate
+powermonitor
+ppfe
+pppoe
+pqos
+prealloc
+preallocate
+preallocated
+preallocating
+prebuilt
+precompiled
+precomputed
+preconfigured
+preemptable
+preemptible
+prefetch
+prefetchable
+prefetched
+prefetches
+prefetching
+prefree
+prepended
+prepends
+preprocessor
+prerelease
+printf
+printk
+prio
+priv
+proc
+processfor
+procinfo
+procs
+profileid
+prog
+programmatically
+promisc
+promiscusity
+proto
+prototyped
+psec
+pseudocode
+pstate
+psutil
+ptest
+ptests
+pthread
+pthreads
+pthresh
+ptpclient
+ptrs
+ptype
+ptypes
+pushd
+pvalue
+pvid
+pyelftools
+qavg
+qbman
+qconf
+qcow
+qdisc
+qdma
+qede
+qedf
+qedi
+qedr
+qemu
+qidA
+qidB
+qidx
+qinq
+qint
+qmap
+qmapping
+qoriq
+qpairs
+qsbr
+qsize
+qtime
+queueid
+rarp
+rawdev
+rawdevice
+rawdevices
+rawdevs
+rdline
+rdlock
+rdma
+rdtsc
+reStructuredText
+readline
+readlink
+realloc
+rebalanced
+rebalancing
+reconfigurable
+reconfiguring
+reconnection
+recv
+refcnt
+refdir
+regbit
+regexdev
+regexdevs
+regfield
+regs
+reinitializes
+reinitializing
+repo
+representator
+representor
+representors
+reqs
+requestor
+responder
+restool
+resv
+reta
+retransmission
+retransmissions
+retval
+ringparam
+rlimit
+rmmod
+roadmap
+rootfs
+rply
+rqmts
+rsize
+rsrc
+rsvd
+rsync
+rtecryptodev
+rtemap
+rudimental
+runstate
+runtime
+rvIndex
+rwlock
+rwlocks
+rxbuf
+rxconf
+rxfreet
+rxht
+rxmode
+rxoffload
+rxoffs
+rxonly
+rxpkts
+rxportconf
+rxpt
+rxqs
+rxtx
+rxwt
+sPAPR
+sact
+sadv
+safexcel
+sbin
+scalability
+scalable
+scaleup
+scapy
+sched
+scheduler's
+sctp
+sdap
+secgw
+secpol
+segs
+segsize
+segsz
+seid
+selectable
+selftest
+selinux
+sendemail
+sendmsg
+sendp
+seqn
+sess
+sessionless
+setaffinity
+setcancelstate
+setcanceltype
+setcap
+setpci
+setschedparam
+setspecific
+setspeed
+sfboot
+sfnum
+sgmii
+shaper
+shapers
+shconf
+shmfd
+shortname
+signoff
+simd
+sizeof
+skiplist
+smac
+smallbuild
+smap
+smartNIC
+smartnic
+smtpencryption
+smtpserver
+smtpserverport
+smtpuser
+snat
+snprintf
+socat
+socketid
+socktype
+socs
+softirqs
+softmmu
+softnic
+softrss
+soname
+sonames
+spinlock
+spinlocks
+spoofable
+srTCM
+srcs
+sriov
+srtcm
+srtcmp
+ssopf
+ssovf
+stateful
+statefully
+stderr
+stdin
+stdint
+stdlib
+stdout
+stlist
+stmt
+strace
+strcmp
+strcpy
+strerror
+stripq
+strlen
+stroul
+strscpy
+strtoll
+strtoull
+struct
+structs
+stty
+stype
+subblock
+subdir
+subdirectories
+subdirectory
+subdirs
+subexpression
+subfolder
+sublists
+submode
+submodes
+subnet
+subport
+subports
+substream
+subtuple
+subvariant
+sudo
+sunsetted
+superpages
+svlan
+switchdev
+syncthreads
+sysctl
+sysfile
+sysfs
+syslog
+sysroot
+systemd
+szedata
+szedataII
+tabularcolumns
+taildrop
+tailroom
+tapvm
+taskset
+tcpdump
+tcpv
+teid
+telco
+testapp
+testbbdev
+testcancel
+testcase
+testcases
+testeventdev
+testpmd
+testpmd's
+testregex
+testsuite
+testsuites
+thash
+threadIdx
+threadfence
+thunderx
+timedlock
+timedrdlock
+timedwait
+timedwrlock
+timerdev
+timespec
+timestamping
+timesync
+timvf
+titi
+tmapi
+tmgr
+toctree
+toeplitz
+toolchain
+toolchains
+topologies
+totalvfs
+tpid
+tpmd
+trTCM
+tracebuild
+tracecompass
+tracepoint
+tracepoints
+tradeoff
+transactional
+transceiving
+trie
+trtcm
+trylock
+tryrdlock
+trywrlock
+tshark
+tswap
+ttyAMA
+tunX
+tuntap
+turb
+tuser
+txconf
+txfreet
+txgbe
+txgbevf
+txht
+txmode
+txoffload
+txonly
+txpkts
+txport
+txportconf
+txpt
+txqflags
+txqnum
+txqs
+txqueuelen
+txrate
+txrst
+txsplit
+txtimes
+txwt
+typedef
+typedefs
+ucast
+udata
+udevd
+udpv
+uevent
+uint
+uintXX
+uintptr
+uioX
+ulimit
+umem
+umount
+unack
+unacked
+uname
+uncachable
+uncomment
+uncompiled
+uncompress
+uncompressing
+unencrypted
+unfree
+unicast
+uninit
+uninitialization
+uninitialize
+uninitializes
+unint
+unioned
+uniq
+unittest
+unlink
+unmap
+unmapped
+unmapping
+unmount
+unregister
+unregistering
+unreserve
+unreserving
+unrouted
+unsetting
+untag
+untagged
+untags
+untar
+upgradable
+uplink
+upstreamable
+upstreamed
+uptime
+usec
+userdata
+userland
+userspace
+usertools
+usleep
+usvhost
+uucp
+uuid
+uverbs
+uwire
+vCPE
+vCPU
+vCPUs
+vDPA
+vEth
+vHost
+vIOMMU
+vNIC
+vNICs
+vPMD
+vPro
+vRAN
+vSphere
+vSwitch
+vSwitches
+validator
+vals
+variadic
+vchan
+vcpu
+vcpupin
+vdev
+vdevarg
+vdevs
+vdmq
+vdpa
+vdpadevs
+vdrv
+vect
+vectorization
+vectorize
+vectorized
+vendid
+vendorID
+verwrite
+verylongtypename
+vfio
+vhost
+vhostforce
+vhostuser
+virbr
+virsh
+virt
+virtaddr
+virtenv
+virtio
+virtq
+virtqueue
+virtqueues
+virtualised
+virtualized
+virtualport
+vlan
+vmbus
+vmdq
+vmname
+vmware
+vmxnet
+vnic
+vring
+vrings
+vswitch
+vsym
+vxlan
+wakeup
+webpage
+werror
+werrorbuild
+wget
+whitespace
+wireshark
+wlcore
+wlcores
+workqueue
+workqueues
+workslot
+wred
+writeback
+wrlock
+wrptr
+wthresh
+wwww
+xFEE
+xFFEF
+xFFF
+xFFFD
+xFFFELLU
+xFFFF
+xFFFFEF
+xFFFFFFFF
+xJvf
+xXXXXXXXX
+xbzrle
+xcast
+xcbc
+xdata
+xefff
+xenvirt
+xffff
+xffffff
+xffffffff
+xffffffffffffffff
+xform
+xforms
+xmem
+xmemhuge
+xmeta
+xmit
+xmode
+xoff
+xored
+xstat
+xstats
+xtype
+xxxx
+xxxxxx
+xxxxxxx
+yyyy
+zcat
+zlib
+zmalloc
+zxof
diff --git a/devtools/spell_check_regex.txt b/devtools/spell_check_regex.txt
new file mode 100644
index 0000000000..efa8f63450
--- /dev/null
+++ b/devtools/spell_check_regex.txt
@@ -0,0 +1,2 @@
+# This file is used to exclude regex patterns from being passed to Aspell.
+# Each line is read as a single pattern.
-- 
2.30.2


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-11-12 17:02 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-12 17:01 [PATCH] devtools: spell check Henry Nadeau

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).