Re: volatile question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> call_data is neither local nor static to the function, so the modification
> of the storage location would seem to be mandatory for the compiler
> before the call to core_send_ipi(),

Ah, yes. call_data is static but is scoped in the file, not the function.

And if you add OOO to the mix, I guess that the wb() becomes
necessary.

> I take it that you've observed a problem with this on your system?:

No. I had a bug that was freezing one of my cpus, so the other one was
eventually getting stuck in an endless loop in smp_call_function(). I
added a little debugging so it prink()ed when that happens, and then I
got to thinking about how smp_call_function() worked...

Personally, I think the kernel ought to not go into endless loops
without saying something useful on the console. Hanging in
smp_call_function() is always the symptom, not the bug, but still,
it's nice to print what is known instead of being silent.
Unfortunately, I see quite a few opportunities for endless loops in
device drivers (grrr). Makes you wonder how Windows works at all with
all those shitty but closed-source drivers.

-- greg



[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux