twopass.tcl:
+ support personalities
~ load userspace components on pass0, until loading them before RT
components is implemented (some RT components need uspace comps for
loading their configuration: linuxcnc-ethercat i.e.)
Signed-off-by: Florian Kerle flo.kerle@gmx.at
评论 (3)
#2 – jepler 于 2016-06-28
On first glance, I think the change regarding personality= is probably uncontroversial.
I am more concerned about the change to loadusr. I believe that other cases of paired components, such as sampler and streamer, require loadrt first and loadusr second.
$ halrun
halcmd: loadrt sampler cfg=b depth=350
halcmd: loadusr halsampler
halcmd: show comp
Loaded HAL Components:
ID Type Name PID State
8 User halsampler20890 20890 ready
6 User halcmd20784 20784 ready
4 RT sampler ready
vs
$ halrun
halcmd: loadusr halsampler
halstreamattach: Invalid argument
halcmd: show comp
Loaded HAL Components:
ID Type Name PID State
2 User halcmd21695 21695 ready
(except that in current branches the non-error message ‘halstreamattach: Success’ will be printed due to a bug in halsampler, halstreamer, and panelui that prevents showing the actual error string for the halstreamattach API call; in that case you can still see by calling show comp that the component did not actually load)
Can you please prepare two separate commits, one for the loadusr change and one for the personality change, so we can consider them separately?
Thank you.
#3 – ikcalB 于 2016-06-28
I didn’t know about the sampler, my fault. That’s why I should have made 2 seperate pull requests beforehand.
After your explanation I can well understand that this is not ideal – impromptu I cannot think of an easy way to resolve this. Maybe twopass should remember the first occurrences order, and add subsequent load{usr,rt}s to preserve that order?
#1 – ikcalB 于 2016-06-28
Doh! I sent the pull request against master, but this is applicable to 2.7 at least, probably even 2.6.
What actions shall I take to resolve?
(pls be kind, this is my 2nd pull request…)