Hi, I am using sparse 0.5.0 release. I am getting several context check errors on my code. I reduced a routine that was being flagged to the minimum, and I still get the error: /nfs/causers2/sfranco/projects/cnnic70xx_rearch/host/driver/src/linux/cavium/octeon_poll.c:130:5: warning: context imbalance in 'octeon_register_poll_fn' - wrong count at exit The routine now is: static spinlock_t mylock = SPIN_LOCK_UNLOCKED; int octeon_register_poll_fn(int oct_id, octeon_poll_ops_t * ops) { spin_lock(&mylock); spin_unlock(&mylock); return 0; } Ie., stripped to the bare minimum. My understanding from reading the docs and mails on the subject is that a function that does not enter with the lock, acquires and releases it inside the function and exits with the lock unlocked, does not need annotation with __acquires or __releases. Any hints you can give me? Machine: x64, Scientific Linux (RHEL). Thanks, Scott Franco Cavium Networks -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html