最近我參加了幾個採訪。在所有被問到的核心問題中,有一個具體問題我找不到令人信服的答案。用戶空間進程和中斷上下文代碼之間的同步
在用戶空間進程和中斷上下文函數之間共享數據時,您將如何使用不同的同步技術?我有說服力的回答是:
在中斷上下文代碼:
1. do *spin_lock_irqsave*
2. access data buffer which is shared between user space app and kernel
3. do *spin_lock_irqrestore*
那麼這是不能令人信服的答案。在所有數據訪問實例中,我必須執行irqsave
和irqrestore
嗎?