162306a36Sopenharmony_ciperf-buildid-cache(1) 262306a36Sopenharmony_ci===================== 362306a36Sopenharmony_ci 462306a36Sopenharmony_ciNAME 562306a36Sopenharmony_ci---- 662306a36Sopenharmony_ciperf-buildid-cache - Manage build-id cache. 762306a36Sopenharmony_ci 862306a36Sopenharmony_ciSYNOPSIS 962306a36Sopenharmony_ci-------- 1062306a36Sopenharmony_ci[verse] 1162306a36Sopenharmony_ci'perf buildid-cache <options>' 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ciDESCRIPTION 1462306a36Sopenharmony_ci----------- 1562306a36Sopenharmony_ciThis command manages the build-id cache. It can add, remove, update and purge 1662306a36Sopenharmony_cifiles to/from the cache. In the future it should as well set upper limits for 1762306a36Sopenharmony_cithe space used by the cache, etc. 1862306a36Sopenharmony_ciThis also scans the target binary for SDT (Statically Defined Tracing) and 1962306a36Sopenharmony_cirecord it along with the buildid-cache, which will be used by perf-probe. 2062306a36Sopenharmony_ciFor more details, see linkperf:perf-probe[1]. 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ciOPTIONS 2362306a36Sopenharmony_ci------- 2462306a36Sopenharmony_ci-a:: 2562306a36Sopenharmony_ci--add=:: 2662306a36Sopenharmony_ci Add specified file to the cache. 2762306a36Sopenharmony_ci-f:: 2862306a36Sopenharmony_ci--force:: 2962306a36Sopenharmony_ci Don't complain, do it. 3062306a36Sopenharmony_ci-k:: 3162306a36Sopenharmony_ci--kcore:: 3262306a36Sopenharmony_ci Add specified kcore file to the cache. For the current host that is 3362306a36Sopenharmony_ci /proc/kcore which requires root permissions to read. Be aware that 3462306a36Sopenharmony_ci running 'perf buildid-cache' as root may update root's build-id cache 3562306a36Sopenharmony_ci not the user's. Use the -v option to see where the file is created. 3662306a36Sopenharmony_ci Note that the copied file contains only code sections not the whole core 3762306a36Sopenharmony_ci image. Note also that files "kallsyms" and "modules" must also be in the 3862306a36Sopenharmony_ci same directory and are also copied. All 3 files are created with read 3962306a36Sopenharmony_ci permissions for root only. kcore will not be added if there is already a 4062306a36Sopenharmony_ci kcore in the cache (with the same build-id) that has the same modules at 4162306a36Sopenharmony_ci the same addresses. Use the -v option to see if a copy of kcore is 4262306a36Sopenharmony_ci actually made. 4362306a36Sopenharmony_ci-r:: 4462306a36Sopenharmony_ci--remove=:: 4562306a36Sopenharmony_ci Remove a cached binary which has same build-id of specified file 4662306a36Sopenharmony_ci from the cache. 4762306a36Sopenharmony_ci-p:: 4862306a36Sopenharmony_ci--purge=:: 4962306a36Sopenharmony_ci Purge all cached binaries including older caches which have specified 5062306a36Sopenharmony_ci path from the cache. 5162306a36Sopenharmony_ci-P:: 5262306a36Sopenharmony_ci--purge-all:: 5362306a36Sopenharmony_ci Purge all cached binaries. This will flush out entire cache. 5462306a36Sopenharmony_ci-M:: 5562306a36Sopenharmony_ci--missing=:: 5662306a36Sopenharmony_ci List missing build ids in the cache for the specified file. 5762306a36Sopenharmony_ci-u:: 5862306a36Sopenharmony_ci--update=:: 5962306a36Sopenharmony_ci Update specified file of the cache. Note that this doesn't remove 6062306a36Sopenharmony_ci older entries since those may be still needed for annotating old 6162306a36Sopenharmony_ci (or remote) perf.data. Only if there is already a cache which has 6262306a36Sopenharmony_ci exactly same build-id, that is replaced by new one. It can be used 6362306a36Sopenharmony_ci to update kallsyms and kernel dso to vmlinux in order to support 6462306a36Sopenharmony_ci annotation. 6562306a36Sopenharmony_ci-l:: 6662306a36Sopenharmony_ci--list:: 6762306a36Sopenharmony_ci List all valid binaries from cache. 6862306a36Sopenharmony_ci-v:: 6962306a36Sopenharmony_ci--verbose:: 7062306a36Sopenharmony_ci Be more verbose. 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_ci--target-ns=PID: 7362306a36Sopenharmony_ci Obtain mount namespace information from the target pid. This is 7462306a36Sopenharmony_ci used when creating a uprobe for a process that resides in a 7562306a36Sopenharmony_ci different mount namespace from the perf(1) utility. 7662306a36Sopenharmony_ci 7762306a36Sopenharmony_ci--debuginfod[=URLs]:: 7862306a36Sopenharmony_ci Specify debuginfod URL to be used when retrieving perf.data binaries, 7962306a36Sopenharmony_ci it follows the same syntax as the DEBUGINFOD_URLS variable, like: 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci buildid-cache.debuginfod=http://192.168.122.174:8002 8262306a36Sopenharmony_ci 8362306a36Sopenharmony_ci If the URLs is not specified, the value of DEBUGINFOD_URLS 8462306a36Sopenharmony_ci system environment variable is used. 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ciSEE ALSO 8762306a36Sopenharmony_ci-------- 8862306a36Sopenharmony_cilinkperf:perf-record[1], linkperf:perf-report[1], linkperf:perf-buildid-list[1] 89