[LinuxCNC/linuxcnc PR#165] Fix race condition executing MDI during queue busters

未分类 bolang 4个月前 (10-15) 26次浏览

Issue #165 | 状态: 已关闭 | 作者: zultron | 创建时间: 2016-09-21


An MDI command that happens to be executed when another MDI command is
waiting on INTERPEXECUTEFINISH will be directly issued instead of
queued up for later. This causes a lot of bad stuff to happen later.


评论 (4)

#1 – jepler 于 2016-09-21

Is this problem only exposed by “Enable remap of M62-M68”? Or is that just making it easier to demonstrate? (I’m trying to understand why 4110e41e5f35b37496f42fad7b7ffaa6adf21457 is in this PR)


#2 – zultron 于 2016-09-21

@jepler, I discovered it while running that test. It was just convenient to trim it down. Also, the timing seems to be pretty picky, and I wasn’t able to get it working even that reliably with other scripts.

I’ll try just switching out the M66 remap for M400. I think that should work, and should eliminate the question about the other PR.


#3 – zultron 于 2016-09-22

Failure without the M66 recursive remap:
https://travis-ci.org/LinuxCNC/linuxcnc/builds/161786792


#4 – zultron 于 2016-09-22

This one looks like it’s on its way to success. PR title & description edited. Thanks!


原始Issue: https://github.com/LinuxCNC/linuxcnc/pull/165

喜欢 (0)