On 2018-05-22 10:24:22 [+0200], Mike Galbraith wrote: > On Tue, 2018-05-22 at 08:50 +0200, Sebastian Andrzej Siewior wrote: > > > > Regarding the preempt_disable() in the original patch in uv_read_rtc(): > > This looks essential for PREEMPT configs. Is it possible to get this > > tested by someone or else get rid of the UV code? It looks broken for > > "uv_get_min_hub_revision_id() != 1". > > I suspect SGI cares not one whit about PREEMPT.
so it is broken then. I leave it to the x86 maintainers but on the very least it should depend on !PREEMPT (if not server). > > Why does PREEMPT_RT require migrate_disable() but PREEMPT only is fine > > as-is? This does not look right. > > UV is not ok with a PREEMPT config, it's just that for RT it's dirt > simple to shut it up, whereas for PREEMPT, preempt_disable() across > uv_bau_init() doesn't cut it due to allocations, and whatever else I > would have met before ending the whack-a-mole game. > > If I were in your shoes, I think I'd just stop caring about UV until a > real user appears. AFAIK, I'm the only guy who ever ran RT on UV, and > I only did so because SUSE asked me to look into it.. years ago now. Okay. The problem I have with this patch is that it remains RT only while the problem it addresses is not RT-only and PREEMPT kernels are very much affected. The thing is that *you* are my only UV user :) If you suggest that I should stop caring about UV than I do so. Please post a patch that adds a dependency to UV on PREEMPT so that part of the architecture is documented. > -Mike Sebastian