You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
120: deprecate NVIC.{clear,set}_pending in favor of NVIC::{un,}pend r=therealprof a=japaric
NVIC::{un,}pend are static methods that don't require an instance of NVIC to be
invoked.
Rationale: These operations perform writes to stateless registers so they can
*not* result in data races.
More tricky is the question of whether letting the user call these from any
execution context without any critical section or other means of synchronization
can result in memory unsafety when used in conjunction with methods like
NVIC.{get,set}_priority that do require an instance of NVIC. I can't foresee any
trouble given that these methods (e.g. pend and set_priority) operate on
different registers.
Co-authored-by: Jorge Aparicio <[email protected]>
0 commit comments