[so2] spin-locks pe mai multe procesoare

Alexandru Preda alexandru.preda91 at gmail.com
Tue Jul 15 14:28:38 EEST 2014


On Jul 15, 2014 12:22 PM, "Costash" <costashsrc at gmail.com> wrote:
>
> 2014-07-15 11:15 GMT+02:00 Catalin Vasile <catalinvasile92 at gmail.com>:
> > Salut,
> >
> > Din documentatie nu reiese foarte clar daca 2 intreruperi, care ruleaza
> > (sunt tratate) pe procesoare diferite (si folosesc un spin-lock comun),
se
> > vor executa intr-o ordine oarecare secventiala.
> > Pana la urma un spin-lock imi asigura atomicitate si in cadru
intreruperilor
> > care se executa pe procesoare diferite?
>
> Din documentația de la [1] mie mi se pare că spune clar că e SMP safe.
>
> Citez o observație importantă:
> "NOTE! The spin-lock is safe only when you _also_ use the lock itself
>    to do locking across CPU's, which implies that EVERYTHING that
>    touches a shared variable has to agree about the spinlock they want
>    to use."

Salut,

Eu zic ca nu e suficient. Daca am inteles bine si vrea sa partajeze,
ipotetic, date intre doua intre doua handlere, atunci vor trebui
dezactivate si intreruperile (eg spin_lock_irqsave)) deoarece doar
intreruperea curenta e mascata.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so2/attachments/20140715/5321fd6d/attachment.html>


More information about the so2 mailing list