# Scan-At-Field-CLI **Repository Path**: mirrors_intel/Scan-At-Field-CLI ## Basic Information - **Project Name**: Scan-At-Field-CLI - **Description**: No description available - **Primary Language**: Unknown - **License**: BSD-3-Clause - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-05-13 - **Last Updated**: 2026-04-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Scan-At-Field-CLI Reload the scan blob on all scan processors: - sudo echo 1 > /sys/devices/system/cpu/scan/reload Run the scan test on all cpus: - sudo echo 1 > /sys/devices/system/cpu/scan/run_test_all Stop repeating scans on targeted cpus: - sudo echo 1 > ./SAF_User_Files/stop_test_all Load start chunk for cpuX: - sudo echo A > /sys/devices/system/cpu/cpu/scan/start_chunk Load stop chunk for cpuX: - sudo echo Z > /sys/devices/system/cpu/cpu/scan/stop_chunk Run the scan test for a target cpu: - sudo echo 1 > /sys/devices/system/cpu/cpu/scan/scan_start After start, read this file for each cpu result as follows: - cat /sys/devices/system/cpu/cpu/scan/scan_result : -1 = scan is in progress : 0 = scan passed : otherwise scan failed After all scans complete, display string with all failing cpus and all failing sockets. Command line parameters: -h : display usage parameters -r : reload scan blob into each cpu scan processor's memory -q : verbose/quiet mode (0/1 - default = 1) -s : stop all scans and exit app (0/1 - default = 0) -t : thread wait (1-500) - in milliseconds (default = 1) -d : core delay (1-1000) - in milliseconds (default = 1) -w : cycle wait timer (0-1440) - in minutes (default = 0) -p : CSV list of all cpu to test (-1 means all) -f : additional items on failure results (0 to 3) 1 = add clock time, 2 = add iterations, 3 = add both -i : noint (0 = no interrupts during scan, 1 = interrupts ok) -a : start chunk (default = 0) -z : stop chunk (blob dependent - default read from sysfs) -D : display iteration time and count -I : inject random error on random core on each iteration -E : display chunk, core, and error code information -W : display excessive time to complete warning The cycle wait timer is used to automatically repeat the scan(s). - 0 means do only 1 scan (no repeats) - 1440 means repeat the scan(s) at 24 hours intervals Operation: On start, all default parameters are written to the target files, then command line parameters are evaluated and parameter files are updated. Next, the appropriate cpus are signaled to begin scanning and each result file is polled until the result is not busy (not equal to -1). If any scan failures are detected a message is sent to the console (or stderr) showing which cpus and which sockets had failing indications. The application either exits if cycle wait is equal to 0 or stop is requested, otherwise poll every 1 second looking for a stop command. At the next cycle interval a new scan is initiated and the results files are again read and processed.