-
Notifications
You must be signed in to change notification settings - Fork 758
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Win XP only: TempoClock scheduling crashes sclang #547
Comments
Tried again, running sclang.exe from the commandline. The TempoClock example crashes immediately. So I guess the Windows pop-up warning that the language crashed is suppressed or delayed when using sc-ide, but the crash is right away. Also retested 3.5.4 from the command line -- no problem. So I guess this is something I could "git bisect," when I have a couple of free hours (ha!). |
James, could you try getting a backtrace using gdb?
|
Just gdb'ed a full debug build and (I don't suppose anyone will be surprised to hear) the problem does not occur when the build type is Debug. (That seems to be the case with a really quite startling percentage of sc crashing issues, doesn't it?) So I'm rebuilding as RelWithDebInfo+ and will try again...
|
Maybe because "ease" was also omitted? |
The stack trace is not useful. The sum total of the output from "where" is:
I also did thread apply all bt. There isn't much of that, so I'll just paste it all here. Thread 6 (Thread 3176.0x12c4): warning: (Internal error: pc 0x7df in read in psymtab, but not in symtab.) #3 0x000007e0 in ?? () #4 0x00000000 in ?? () Thread 5 (Thread 3176.0xde0): Thread 4 (Thread 3176.0xc64): Thread 2 (Thread 3176.0xc78): Thread 1 (Thread 3176.0x13dc): |
Just FYI, I've started bisecting, going back to the Version-3.5.4 tag (since that's known to work). I probably won't finish tonight. |
It turns out, something is wrong with my build system, causing the crash to occur in every sc version I tested, going all the way back to 3.5.0. So... we have a crash where gdb revealed nothing useful, and which I can't "git bisect" because I can't find any "good" commit, and which Jakob can't troubleshoot because the issue doesn't happen in Windows 7. My next best guess is that one of the dependent libraries (pthread, maybe?) might be a version that is good for win7 but not XP. But, if it's the same library version that Jakob used when building the 3.5.4 release (which doesn't have the tempoclock problem in XP), then it doesn't make sense why his 3.5.4 build would be okay while mine is broken. I have no idea what to do next. But I don't want to let the issue go -- we really should try to get XP working. I'm willing to do a fair amount of legwork but I'm out of my depth here. |
Failing all else, I browsed a bit of the source code and found that a significant difference between SystemClock (no XP crash) and TempoClock (crashes in XP) is that SystemClock's queue is a global one (accessible in the language by So maybe there is some bizarro issue with accessing the member variable that only occurs in XP? Other than that, ediff-buffers didn't turn up anything significantly different between schedRunFunc() and TempoClock::Run(). Also, I started a thread on mingw-user: http://comments.gmane.org/gmane.comp.gnu.mingw.user/40438 |
Couple of responses from the mingw list:
I can try that. But: how to customize the gcc flags in cmake? I've no idea. Second:
The link is about a ruby issue which may be the result of an improperly compiled instruction. |
On Mon, Oct 1, 2012 at 4:06 AM, jamshark70 notifications@github.com wrote:
set(CMAKE_C_FLAGS ...) |
Beg pardon for being inexperienced with cmake, but where would these go in the cmake scripts? |
On Mon, Oct 1, 2012 at 9:21 AM, jamshark70 notifications@github.com wrote:
For testing it doesn't matter much, just somewhere in whatever file the set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} ...) |
I just finished a Win-build of SC3.7alpha with MinGW64/gcc4.8 where this is not the case anymore. I did nothing relevant to the source and used no special compiler flags. So this must either be due to low level changes in my toolchain or to various recent changes/fixes to the tempo-clock implementation. |
Is Win XP support still an issue? I vote for no. |
Windows XP is older than SuperCollier 3 itself. So, I vote no too. :) |
XP-specific so closed. |
In win XP (3.6 dev), this example causes sclang to stop responding. Sometime after that, the language will crash.
Use SystemClock or AppClock instead, and all is well.
In win7, all clocks behave properly.
My XP build, using Jakob's copies of the dlls, doesn't resolve this problem.
3.5 did not have this problem - hence, it's a regression.
The text was updated successfully, but these errors were encountered: