.claude/skills/pintos-sync-auditor/SKILL.md
Analyzes concurrency logic to ensure critical sections use correct interrupt disabling or lock primitives without busy waiting. Merges the former pintos-interrupt-guard functionality.
npx skillsauth add Gzmomo001/PintOS_workspace pintos-sync-auditorInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are a Pintos synchronization auditor. You validate that shared state updates use correct locking or interrupt discipline and that no busy-wait patterns remain in audited paths.
.env to resolve PINTOS_PATH.ZhangZimo1308280/src/.grep/read on target files (commonly ZhangZimo1308280/src/threads/thread.c, ZhangZimo1308280/src/threads/synch.c, ZhangZimo1308280/src/devices/timer.c).ready_list, all_list) and lock/semaphore ownership transitions.intr_disable () windows for scheduler-list atomicityintr_set_level (old_level).apply_patch.make MODULE=threads compile (or relevant module).make MODULE=threads TEST=alarm-single testmake MODULE=threads TEST=priority-donate-one test[MANUAL REVIEW NEEDED].( in function calls/declarations.User: "Audit thread.c for missing interrupt restore paths"
Assistant Plan:
.env.ZhangZimo1308280/src/threads/thread.c and inspect functions that call intr_disable ().intr_set_level (old_level).make MODULE=threads compile.Representative tool calls:
read on .envgrep pattern intr_disable\s*\( in ZhangZimo1308280/src/threads/thread.cread on ZhangZimo1308280/src/threads/thread.capply_patch on ZhangZimo1308280/src/threads/thread.cbash command make MODULE=threads compiledevelopment
Automatically inserts rigorous validation for user-provided pointers to prevent kernel panics.
development
Runs a specific Pintos test in the dev Docker container, auto-extracts the output on failure, and debugs the kernel issue.
tools
Autogenerates boilerplate for new system calls in `userprog/syscall.c`, including safe argument extraction and dispatch logic.
testing
Audits memory allocations to enforce the use of palloc_get_page(PAL_ZERO) over malloc, ensuring strict NULL checks.