#linuxcnc-devel | Logs for 2013-02-23

Back
[00:04:24] -!- rob_h has quit [Ping timeout: 264 seconds]
[00:07:44] -!- mhaberler [mhaberler!~mhaberler@macbook.stiwoll.mah.priv.at] has joined #linuxcnc-devel
[00:08:47] -!- zzolo has quit [Quit: zzolo]
[00:14:12] -!- mattions has quit [Ping timeout: 248 seconds]
[00:23:58] -!- micges has quit [Quit: Leaving]
[00:39:45] -!- Youdaman has quit []
[00:41:04] -!- JesusAlos has quit [Quit: ChatZilla 0.9.90 [Firefox 18.0.2/20130201065344]]
[00:56:18] -!- sumpfralle1 has quit [Read error: No route to host]
[01:01:53] -!- sumpfralle has quit [Ping timeout: 255 seconds]
[01:06:28] -!- sumpfralle1 has quit [Ping timeout: 248 seconds]
[01:15:02] -!- jst has quit [Remote host closed the connection]
[01:16:59] -!- jst has quit [Remote host closed the connection]
[01:28:50] -!- Gene34 has quit []
[01:43:18] -!- tmcw has quit [Remote host closed the connection]
[01:52:00] -!- adb has quit [Ping timeout: 276 seconds]
[02:10:13] -!- wildbilldonovan has quit [Quit: EOT]
[02:13:03] -!- Tom_itx has quit [Disconnected by services]
[02:13:08] Tom_sbc is now known as Tom_itx
[02:16:12] -!- atom1 has quit [Client Quit]
[02:18:18] -!- sumpfralle has quit [Read error: Operation timed out]
[02:34:29] -!- asdfasd has quit [Ping timeout: 256 seconds]
[02:37:09] -!- Wildhoney has quit [Ping timeout: 256 seconds]
[02:57:40] -!- tmcw has quit [Remote host closed the connection]
[03:07:48] -!- skunkworks has quit [Remote host closed the connection]
[03:09:57] -!- skunkworks [skunkworks!~chatzilla@str-broadband-ccmts-ws-26.dsl.airstreamcomm.net] has joined #linuxcnc-devel
[03:11:17] -!- ravenlock has quit [Ping timeout: 252 seconds]
[03:17:38] -!- skorasaurus has quit [Ping timeout: 245 seconds]
[03:22:35] -!- JesusAlos has quit [Quit: ChatZilla 0.9.90 [Firefox 19.0/20130215130331]]
[03:28:06] -!- zzolo has quit [Read error: Connection reset by peer]
[03:28:06] zzolo_ is now known as zzolo
[03:32:03] -!- Valen has quit [Quit: Leaving.]
[03:34:58] <gene77> Thanks Chris. So precise is sim only.... Hummm.
[03:34:59] -!- zzolo has quit [Quit: zzolo]
[03:35:34] -!- mhaberler has quit [Quit: mhaberler]
[03:38:47] -!- [1]DaveB has quit [Quit: I love my HydraIRC -> http://www.hydrairc.com <-]
[03:44:09] -!- tomp has quit [Client Quit]
[03:45:31] -!- racycle has quit [Quit: racycle]
[03:50:17] -!- KimK has quit [Quit: Leaving]
[04:12:36] -!- tmcw has quit [Ping timeout: 248 seconds]
[04:26:06] -!- KimK [KimK!~Kim__@wsip-184-176-200-171.ks.ks.cox.net] has joined #linuxcnc-devel
[05:06:00] -!- sparr has quit [Ping timeout: 256 seconds]
[05:08:27] -!- sparr has quit [Changing host]
[05:13:32] -!- AR_ has quit [Ping timeout: 255 seconds]
[05:18:02] -!- sparr has quit [Ping timeout: 252 seconds]
[05:26:19] -!- psha [psha!~psha@213.208.162.67] has joined #linuxcnc-devel
[05:34:05] -!- Keknom has quit [Quit: Leaving.]
[05:44:51] <seb_kuzm1nsky> it hurts my brain that both emcTaskPlan() and emcTaskExecute() call emcTaskIssueCommand()
[05:44:53] -!- jfire has quit [Quit: Leaving.]
[06:02:04] -!- Fox_Muldr has quit [Ping timeout: 246 seconds]
[06:15:40] -!- sparr has quit [Changing host]
[06:21:19] -!- dhoovie has quit [Ping timeout: 246 seconds]
[06:37:09] -!- kwallace [kwallace!~kwallace@smb-200.sonnet.com] has parted #linuxcnc-devel
[06:42:27] -!- mhaberler [mhaberler!~mhaberler@macbook.stiwoll.mah.priv.at] has joined #linuxcnc-devel
[06:47:17] -!- tmcw has quit [Remote host closed the connection]
[07:01:10] -!- zzolo has quit [Quit: zzolo]
[07:18:45] -!- psha has quit [Read error: Connection reset by peer]
[07:23:36] -!- FinboySlick has quit [Quit: Leaving.]
[07:28:47] -!- Tecan has quit [Quit: Ex-Chat]
[08:05:41] -!- Tecan has quit [Changing host]
[08:14:45] -!- Gene34 has quit [Ping timeout: 252 seconds]
[08:32:20] -!- e-ndy has quit [Quit: ZNC - http://znc.sourceforge.net]
[08:35:09] -!- racycle has quit [Quit: racycle]
[08:39:56] -!- e-ndy [e-ndy!~e-ndy@fantomas.bestit.cz] has joined #linuxcnc-devel
[08:40:20] -!- rob_h [rob_h!~rob_h@5e0473f7.bb.sky.com] has joined #linuxcnc-devel
[08:48:53] -!- e-ndy has quit [Remote host closed the connection]
[09:01:16] -!- DJ9DJ has quit [Quit: brb]
[09:33:12] <KGB-linuxcnc> 03seb 052.5-mdi-queue-test 6f08d27 06emc2 10tests/ 10(7 files in 2 dirs) * add an MDI queueing test
[09:33:12] <KGB-linuxcnc> 03seb 052.5-mdi-queue-test 6490829 06emc2 10src/emc/task/emctaskmain.cc * task: fix an MDI queueing bug
[09:33:14] <KGB-linuxcnc> 03seb 052.5-mdi-queue-test 20f2a00 06emc2 10src/emc/task/emctaskmain.cc * remove a snippet of old incorrect mdi queueing code
[09:33:21] <KGB-linuxcnc> 03seb 052.5-mdi-queue-test d18c91c 06emc2 10src/emc/ 10(5 files in 3 dirs) * some useful debug printing for the mdi queue bug
[09:33:35] -!- bedah has quit [Quit: Ex-Chat]
[09:35:29] <seb_kuzm1nsky> ok
[09:35:36] <seb_kuzm1nsky> maybe?
[09:37:00] <seb_kuzm1nsky> i wish pavel shramov would review this branch...
[09:53:00] -!- mhaberler has quit [Ping timeout: 276 seconds]
[10:02:04] -!- jdh has quit [Read error: Operation timed out]
[10:06:38] -!- JT-Shop has quit [Read error: Connection timed out]
[10:07:34] -!- JT-Shop [JT-Shop!~John@184-63-140-99.cust.wildblue.net] has joined #linuxcnc-devel
[10:43:04] -!- dhoovie has quit [Read error: Connection reset by peer]
[10:57:17] -!- mhaberler [mhaberler!~mhaberler@089144206078.atnat0015.highway.a1.net] has joined #linuxcnc-devel
[11:08:21] -!- JesusAlos has quit [Quit: ChatZilla 0.9.90 [Firefox 11.0/20120310193829]]
[11:15:07] -!- mhaberler has quit [Remote host closed the connection]
[11:15:21] -!- mhaberler [mhaberler!~mhaberler@macbook.stiwoll.mah.priv.at] has joined #linuxcnc-devel
[11:34:52] -!- ttuner has quit []
[11:41:43] -!- Wildhoney has quit [Ping timeout: 256 seconds]
[11:45:06] -!- syyl_ has quit [Ping timeout: 264 seconds]
[12:00:18] -!- Thetawaves has quit [Remote host closed the connection]
[12:00:52] -!- R2E4_ has quit [Ping timeout: 248 seconds]
[12:00:52] -!- R2E4 has quit [Ping timeout: 248 seconds]
[12:38:12] -!- adb has quit [Ping timeout: 256 seconds]
[13:10:39] -!- Icekiller has quit [Read error: No route to host]
[13:24:40] -!- skorasaurus has quit [Quit: left the building.]
[13:39:52] -!- theorbtwo has quit [Read error: Connection reset by peer]
[14:01:29] <skunkworks> seb_kuzm1nsky: Yay!
[14:01:41] * skunkworks cheers and claps
[14:07:52] -!- mattions has quit [Ping timeout: 252 seconds]
[14:09:56] -!- taf has quit [Ping timeout: 248 seconds]
[14:26:56] -!- gmag has quit [Ping timeout: 255 seconds]
[14:27:00] -!- Tom_itx has quit [Ping timeout: 256 seconds]
[14:30:34] -!- b_b has quit [Changing host]
[14:57:23] -!- zzolo has quit [Quit: zzolo]
[15:16:06] <skunkworks> I have not run into that. I know that the K&T has its max velocity as sqr(x^2+y^2+z^2)
[15:16:38] <skunkworks> heh
[15:19:25] quiron is now known as Guest94875
[16:03:51] -!- zlog has quit [Remote host closed the connection]
[16:03:56] -!- Tom_itx has quit []
[16:08:15] -!- kwallace [kwallace!~kwallace@smb-138.sonnet.com] has joined #linuxcnc-devel
[16:40:41] -!- Brandonian has quit [Quit: Brandonian]
[16:48:42] -!- ktchk has quit [Read error: Connection reset by peer]
[16:48:43] -!- motioncontrol has quit [Read error: Connection reset by peer]
[16:51:30] -!- taf has quit [Ping timeout: 260 seconds]
[17:02:23] -!- mhaberler has quit [Quit: mhaberler]
[17:18:06] -!- jpk has quit [Ping timeout: 264 seconds]
[17:21:12] <seb_kuzm1nsky> skunkworks: i'd cheer too, if i had any confidence that this fix doesn't break something else :-/
[17:23:15] -!- Oo_BIGeye has quit [Ping timeout: 244 seconds]
[17:25:13] <seb_kuzm1nsky> the test that's the first commit in that branch fails almost every time when run against 2.5, but i have not yet seen it fail after the fix (2nd commit) and cleanup (3rd commit) are applied
[17:25:41] <seb_kuzm1nsky> i've run it nonstop on my dev machine overnight
[17:26:56] <seb_kuzm1nsky> the theory behind the bugfix is this:
[17:27:18] <seb_kuzm1nsky> task gets commands from the UI via the NML Command channel
[17:27:34] <seb_kuzm1nsky> these commands are read and processed first by emcTaskPlan
[17:28:25] <seb_kuzm1nsky> for most things, emcTaskPlan immediately hands the incoming commands to emcTaskIssueCommand, which changes the state of Task and/or sends commands to Motion and/or sends commands to IO
[17:28:31] <seb_kuzm1nsky> those are the easy commands :-)
[17:28:43] <seb_kuzm1nsky> for mdi, things are more complicated
[17:30:01] <seb_kuzm1nsky> mdi commands are passed to interp.execute()
[17:30:52] <seb_kuzm1nsky> interp runs the gcode in the mdi, and might make calls into canon, and might add commands to interp_list
[17:31:19] <seb_kuzm1nsky> when interp returns back to the main task code, task continues
[17:33:48] <seb_kuzm1nsky> that's the main flow, but wait, there's more!
[17:34:46] <seb_kuzm1nsky> if there's stuff on interp_list (ie, if interp ran some gcode and now wants to do stuff based on it), then task runs those in addition to running stuff from the UI
[17:36:38] <seb_kuzm1nsky> if incoming commands from the UI are of the instantaneous kind (i just made that term up, i don't know the right word for it, things like spindle on/off, feed override, etc), then those UI commands are issued ahead of the commands in interp_list
[17:37:57] <seb_kuzm1nsky> if the incoming commands from the UI are of the sequential kind (ie, mdi), then they get passed to interp, which again runs the gcode and appends the resultant nml commands to interp_list, so they get run after the interp_list commands of the previous mdi command
[17:38:53] <seb_kuzm1nsky> this was the state of affairs back in august 2010
[17:39:34] <seb_kuzm1nsky> then there was a bug that i never paid any attention to and have since forgotten about completely:
[17:39:51] <seb_kuzm1nsky> apparently the bug is this:
[17:41:41] <seb_kuzm1nsky> if the UI sends many mdi commands in rapid succession, task runs each one (in order) through interp, but some of the effects in interp can bypass the interp_list, and take effect before the full effects of earlier mdi commands have taken effect?
[17:41:45] <seb_kuzm1nsky> i'm not really sure
[17:42:09] <seb_kuzm1nsky> mhaberler and psha would know
[17:42:17] <seb_kuzm1nsky> see commit 5deb9dcb69e23ceaf7f0ad8d1f15977ed665b714
[17:42:47] <seb_kuzm1nsky> that commit adds another linked list of commands to task, this one called mdi_execute_queue
[17:43:24] <seb_kuzm1nsky> i think its intent was to hold back incoming mdi commands if we're still handling earlier interp_list commands from interp
[17:43:41] <seb_kuzm1nsky> and that's the part that's buggy, that i'm trying to fix
[17:45:00] <seb_kuzm1nsky> if the UI sends a "slow" mdi command, one that's not immediately executed and completed inline with the task execution flow, then incoming mdi commands get queued
[17:45:35] <seb_kuzm1nsky> an example of a "slow" mdi command is "Tx M6", which has to do two round-trip handshakes with other processes via hal (one for T and one for M6)
[17:48:06] <seb_kuzm1nsky> while these slow nml commands are stalling the interp_list, incoming mdi commands go on the mdi queue, and the mdi queue is also stalled
[17:48:31] <seb_kuzm1nsky> once interp_list drains, we start running mdi commands from the mdi queue, and any instant commands from the NML Command channel from the UI
[17:49:10] <seb_kuzm1nsky> the bug i ran into was this:
[17:49:58] <seb_kuzm1nsky> incoming mdi commands on the NML Command queue weren't properly being queued, they'd be issued ahead of the queue in some situations
[17:50:39] <seb_kuzm1nsky> the code that i removed in the fixup commit (20f2a0036a9342a6fbeee6e33698f09c925c2bff) tried to order the mdi commands but failed
[17:51:02] <seb_kuzm1nsky> the code that i added in the bugfix commit (6490829f72f7f278a4784560e0e04d6ef1b573bc) does it right (i think!)
[17:51:34] <seb_kuzm1nsky> it says, if there's any outgoing commands from interp in the interp_list, or if there's any queued mdi commands in the mdi_execute_queue, then queue the incoming mdi command
[17:51:49] <seb_kuzm1nsky> otherwise (if there's nothing in either of those queued), then just run the mdi command now
[17:52:00] <seb_kuzm1nsky> whew, that's quite a wall of words
[17:52:21] <seb_kuzm1nsky> i hope someone reads back and tells me if i've fucked this up
[17:52:44] <seb_kuzm1nsky> because the structure of task is hairy enough that i have very low confidence i did this right
[17:53:09] <seb_kuzm1nsky> and we have basically no regression tests for it :-(
[17:53:20] -!- taf has quit [Ping timeout: 260 seconds]
[17:53:33] <seb_kuzm1nsky> and i'd hate to break 2.5 just before 2.5.2 :-(
[17:53:35] taf_ is now known as taf
[17:56:03] -!- motioncontrol has quit [Quit: Sto andando via]
[17:58:45] emk_ is now known as emk
[18:10:32] -!- jfire has quit [Quit: Leaving.]
[18:24:48] -!- Loetmichel has quit [Ping timeout: 264 seconds]
[18:24:56] <skunkworks> wow - you have really dug into it
[18:25:40] <seb_kuzm1nsky> i've spent days staring at it, but i feel like i've only scratched the surface
[18:26:07] -!- b_b has quit [Changing host]
[18:26:13] <seb_kuzm1nsky> there are a *lot* of interconnected dependencies and unstated invariants
[18:26:28] <seb_kuzm1nsky> the architecture and the implementation both are showing their age...
[18:26:46] <seb_kuzm1nsky> and my brain is too i guess, because i'm not really grokking it!
[18:29:20] -!- zzolo has quit [Client Quit]
[18:34:33] -!- kwallace1 [kwallace1!~kwallace@smb-106.sonnet.com] has joined #linuxcnc-devel
[18:36:20] -!- stsydow has quit [Ping timeout: 255 seconds]
[18:36:20] -!- kwallace has quit [Ping timeout: 255 seconds]
[18:36:57] -!- mhaberler [mhaberler!~mhaberler@macbook.stiwoll.mah.priv.at] has joined #linuxcnc-devel
[18:53:52] -!- IchGuckLive has quit [Quit: ChatZilla 0.9.87 [Firefox 18.0/20130108033621]]
[18:58:48] Cylly is now known as Loetmichel
[19:01:20] -!- sumpfralle has quit [Ping timeout: 256 seconds]
[19:05:24] -!- Tecan has quit [Ping timeout: 252 seconds]
[19:13:14] -!- taf has quit [Ping timeout: 255 seconds]
[19:13:26] taf_ is now known as taf
[19:23:55] -!- stsydow has quit [Ping timeout: 246 seconds]
[19:39:47] -!- jfire has quit [Quit: Leaving.]
[19:47:10] <awallin> some problems with stepconf on xenomai (last comment on page): http://www.anderswallin.net/2012/12/linuxcnc-on-ubuntu-12-04lts/
[19:47:42] -!- r00t4rd3d has quit [Quit: Leaving]
[20:01:57] -!- Thetawaves_ has quit [Quit: This computer has gone to sleep]
[20:05:06] -!- AR_ has quit [Read error: Connection reset by peer]
[20:07:22] <seb_kuzm1nsky> mhaberler: i pushed a new version of the 2.5-mdi-queue-test branch, it fixes the mdi reordering bug i saw on 2.5, i'm interested if you have any thoughts on it
[20:07:58] <mhaberler> wow, you're really digging into it
[20:08:37] <mhaberler> I'll review it but I'm in the middle of something else - later tomorrow for sure
[20:09:56] <mhaberler> awallin: I think I smell the rat on that one.. an assumption of kernel threads; thanks!
[20:10:08] -!- taf has quit [Ping timeout: 252 seconds]
[20:10:09] taf_ is now known as taf
[20:11:37] <mhaberler> awallin - I hesitate to 'fix' this one because for userland threads builds the kernel version is actually irrelevant and not considered a build variable
[20:12:08] <mhaberler> I think the using code must remove that assumption; who's doing stepconf? cmorley?
[20:12:39] -!- Brandonian has quit [Quit: Brandonian]
[20:25:11] -!- jfire has quit [Quit: Leaving.]
[20:29:42] -!- syyl_ws has quit [Quit: Verlassend]
[20:46:06] <skunkworks> yes
[20:47:01] <mhaberler> thanks, I'll bug him
[20:47:13] -!- zzolo has quit [Quit: zzolo]
[20:51:13] -!- taf has quit [Ping timeout: 256 seconds]
[20:58:24] -!- mattions has quit [Quit: Leaving]
[21:01:30] -!- zlog has quit [Read error: Connection reset by peer]
[21:01:30] -!- Tom_itx has quit [Read error: Connection reset by peer]
[21:01:39] -!- linlin has quit [Remote host closed the connection]
[21:06:01] <mhaberler> sebkuzm1nsky: it could be this fixes the same bug I fixed in master with the second MDI queue; this looks suspiciously like it
[21:07:31] <mhaberler> watch out - the mdi_execute_queue code is super-fickle; it was mainly brought in to support oword calls from MDI
[21:07:31] -!- skunkworks has quit [Read error: Connection reset by peer]
[21:08:17] <mhaberler> a scenario I'd suggest to test thoroughly is an MDI oword call followed by another command; make sure the oword call has some queue buster and gets stuck at it when the second MDI command comes in
[21:14:22] <mhaberler> here is a python-scripted MDI runtest which is less pain than linuxcncrsh: http://git.mah.priv.at/gitweb?p=emc2-dev.git;a=commitdiff;h=4ca5778fb2ef1b29a471e26fd3cae8a8ea8e28c0
[21:20:32] <mhaberler> this might be useful for Python scripting: http://www.linuxcnc.org/docs/devel/html/common/python-interface.html
[21:27:15] -!- skunkworks [skunkworks!~chatzilla@str-broadband-ccmts-ws-26.dsl.airstreamcomm.net] has joined #linuxcnc-devel
[21:29:44] -!- mhaberler has quit [Quit: mhaberler]
[21:32:36] -!- R2E4 has quit [Ping timeout: 264 seconds]
[21:42:08] -!- Guest94875 has quit [Ping timeout: 245 seconds]
[21:46:51] -!- jeremyrieck has quit [Client Quit]
[21:58:05] -!- kwallace1 has quit [Ping timeout: 256 seconds]
[21:58:17] -!- kwallace [kwallace!~kwallace@tmb-228.sonnet.com] has joined #linuxcnc-devel
[22:03:04] -!- syyl has quit [Ping timeout: 252 seconds]
[22:05:37] -!- DJ9DJ has quit [Quit: bye]
[22:07:16] -!- gmag has quit [Ping timeout: 248 seconds]
[22:35:41] -!- zzolo has quit [Quit: zzolo]
[22:39:36] -!- motioncontrol has quit [Read error: Connection reset by peer]
[22:44:10] -!- andypugh [andypugh!~andy2@cpc16-basl9-2-0-cust685.20-1.cable.virginmedia.com] has joined #linuxcnc-devel
[22:50:40] -!- bradsimantel has quit [Client Quit]
[22:51:10] <seb_kuzm1nsky> mhaberler: that commit is lacking test.sh?
[22:54:12] -!- sumpfralle has quit [Ping timeout: 264 seconds]
[23:01:31] -!- JesusAlos has quit [Ping timeout: 260 seconds]
[23:08:47] -!- sparr has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
[23:14:28] -!- ravenlock has quit [Ping timeout: 248 seconds]
[23:21:39] <andypugh> It's interesting seeing the new registrants on the forum. Bob Warfield just subscribed.
[23:30:34] <skunkworks> heh - he said he was going to try linuxcnc
[23:34:23] -!- johnyoutsider has quit [Quit: Leaving]
[23:41:54] <skunkworks> heh - virtualbox of linuxcnc 10.04 - after running latency test the VM becomes un-responsvie
[23:42:08] -!- rizo has quit [Remote host closed the connection]
[23:51:46] -!- jensor has quit [Quit: Page closed]
[23:57:26] -!- stsydow has quit [Quit: Leaving]