Handbrake Crash on Intel board if GPU is turned off

HandBrake for Windows support
Forum rules
An Activity Log is required for support requests. Please read How-to get an activity log? for details on how and why this should be provided.
mam
Posts: 32
Joined: Wed Jan 04, 2017 7:29 am

Re: Handbrake Crash on Intel board if GPU is turned off

Post by mam »

SUCCESSSSS!!! :-=))))))

Handbrake itself was a piece of cake, done in just 2mins:30 :-)
Transfered the HandbrakeCli.Exe + hb.dll to the windowsbox, tried a testfile (with Card turned on): IT WORKED!
Turned off the card, did the same test as before: CRASH!!!

D:\Incoming>HandBrakeCLI.exe -i "Great British Railway Journeys 8x04.ts" -o Test.mp4
[21:41:03] hb_init: starting libhb thread
[21:41:03] thread 2170b9d0 started ("libhb")
HandBrake 20170105091458-62f25f9-master (2017010601) - MinGW x86_64 - https://handbrake.fr
8 CPUs detected
Opening Great British Railway Journeys 8x04.ts...
[21:41:03] CPU: Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz
[21:41:03] - Intel microarchitecture Skylake
[21:41:03] - logical processor count: 8
(and pooof, he went away!)

Now, if I only had a gdb for windows.... tell me where I can find one!
User avatar
s55
HandBrake Team
Posts: 10350
Joined: Sun Dec 24, 2006 1:05 pm

Re: Handbrake Crash on Intel board if GPU is turned off

Post by s55 »

Your going to hate me now, see my last post ;)


p.s. I *think* http://www.equation.com/servlet/equation.cmd?fa=gdb is the one I used last time.
mam
Posts: 32
Joined: Wed Jan 04, 2017 7:29 am

Re: Handbrake Crash on Intel board if GPU is turned off

Post by mam »

naah, no hate, dont worry. I'm glad that we did not end up chasing ghosts. I was not really sure if I found a bug or not, so its better there was one instead I made trouble without reason. Usually I have more evidences before I complain, but this one was hidden quite far away and beyond my normal scope.

Also, it has the advantage that I now have a working compiling version :-) If my builtin lazyness is overcome somedays I can start looking for the audio changes that I like to see incorporated. As far as I guess now, its not in the gui but somewhere in the hb.dll scan routine... I will take a look the next days...

But I dont understand why you have so big troubles with your Nvidea Driver? I can turn any card on or off on the fly, no problem. (of course the monitor that is attached to that card goes blank and the desktop maybe moved over to the other one, but thats all)
mam
Posts: 32
Joined: Wed Jan 04, 2017 7:29 am

Re: Handbrake Crash on Intel board if GPU is turned off

Post by mam »

Final Words: here we can see, it calls the Intel QSync DLL although it is turned off or not installed at all:

(gdb) run -i G.ts -o t.mp4
Starting program: D:\Incoming\HandBrakeCLI.exe -i G.ts -o t.mp4
[New Thread 7480.0x4f8]
[New Thread 7480.0x1ec4]
[New Thread 7480.0x21a4]
[New Thread 7480.0x1560]
[New Thread 7480.0x1ab8]
[New Thread 7480.0x1154]
[21:59:43] hb_init: starting libhb thread
[New Thread 7480.0x1ec8]
[21:59:43] thread 223dc6d0 started ("libhb")
HandBrake 20170105091458-62f25f9-master (2017010601) - MinGW x86_64 - https://handbrake.fr
8 CPUs detected
Opening G.ts...
[21:59:43] CPU: Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz
[21:59:43] - Intel microarchitecture Skylake
[21:59:43] - logical processor count: 8

Program received signal SIGSEGV, Segmentation fault.
0x00007ffbbfb2dcf6 in igdrcl64!clGetCLObjectInfoINTEL () from C:\Windows\SYSTEM32\igdrcl64.dll

Case closed, thanks!
User avatar
s55
HandBrake Team
Posts: 10350
Joined: Sun Dec 24, 2006 1:05 pm

Re: Handbrake Crash on Intel board if GPU is turned off

Post by s55 »

It's not Nvidia, it's an AMD 7850. Not sure why but the AMD driver kept throwing flashing the scene on/off on the login screen followed by a BSOD. Few reboots later and it's all fine with itself again.

Not a clue. Windows 10 has never sat well on this box. I can't boot the damn thing half the time when my Logitech Wireless USB mouse receiver is connected also.

Probably just a combination of Driver Issues I have :(. Lack of motivation to track them all down.




Also interesting that clGetCLObjectInfoINTEL crashed. I'm not 100% sure if my Fix is going to work for you or not. Please do let me know as I may need to conditionals more code.

By rights that shouldn't crash, so I guess there is also a bug in their driver too.
mam
Posts: 32
Joined: Wed Jan 04, 2017 7:29 am

Re: Handbrake Crash on Intel board if GPU is turned off

Post by mam »

hmm, I have an 7850 myself too in this box. So far it was the "nicest" vcard I had for ages. The only thing you should strictly avoid is to install the nagging driver updates each month. I only use the basedriver that comes with windows and never install that gaming-crap (aaah. addon :-))) ) or something.
User avatar
s55
HandBrake Team
Posts: 10350
Joined: Sun Dec 24, 2006 1:05 pm

Re: Handbrake Crash on Intel board if GPU is turned off

Post by s55 »

Can you type. "bt" on that crash for me so I can see the call stack?
mam
Posts: 32
Joined: Wed Jan 04, 2017 7:29 am

Re: Handbrake Crash on Intel board if GPU is turned off

Post by mam »

ooops, sorry, currently not. Now that I thought we were done, I've loaded today's recordings onto Handbrake, the queue is full currently.
And if I turn off the card in the middle... POOOF (I assume).
So this may take an hour or so until the queue is done
but I can pause it after this mo...

OOOPS, HB just crashed..., I DID NOTHING... [Censored]
so you will get your stack trace faster
User avatar
s55
HandBrake Team
Posts: 10350
Joined: Sun Dec 24, 2006 1:05 pm

Re: Handbrake Crash on Intel board if GPU is turned off

Post by s55 »

Goan :)

I think we have a crash in the OpenCL info code as well :(
mam
Posts: 32
Joined: Wed Jan 04, 2017 7:29 am

Re: Handbrake Crash on Intel board if GPU is turned off

Post by mam »

uh, where is my posting from before the reboot?
[Censored]! eaten by the board-gru I think, the stack trace showed IntelCL DLL and ended it "stack mangled" or something.
mam
Posts: 32
Joined: Wed Jan 04, 2017 7:29 am

Re: Handbrake Crash on Intel board if GPU is turned off

Post by mam »

LOOOL! [censored]!!!! Cute board :-)))
I will go to bed soon, I will encorporate your change tomorrow and retry It looked sane to me, so i hope it will at least ship around the bug.

Sorry, but no stack trace today anymore. Its getting very chilly up here on the rooftop where my "office" is. And because its -12° outside and the heating went off already, I have to flee soon unless I do not want to be frozen to the chair)

good night, I will report back tomorrow...
MAM
User avatar
s55
HandBrake Team
Posts: 10350
Joined: Sun Dec 24, 2006 1:05 pm

Re: Handbrake Crash on Intel board if GPU is turned off

Post by s55 »

OK, so I'm going to get some sleep now, but FYI, I've trakced down a crash in the OpenCL code too:

https://github.com/HandBrake/HandBrake/issues/496

Looks like certain Intel Drivers behave incorrectly when clGetPlatformIDs is called which causes a SegFault as well.
"0x00007ffbf541a74a in igdrcl64!clGetCLObjectInfoINTEL () from C:\WINDOWS\SYSTEM32\igdrcl64.dll"

Apparntly changing the driver works, but I'm looking for a work-around. Seems to be a known issue: http://stackoverflow.com/questions/1908 ... 2#20033042
mam
Posts: 32
Joined: Wed Jan 04, 2017 7:29 am

Re: Handbrake Crash on Intel board if GPU is turned off

Post by mam »

Maybe even more complicated Problem :-(
Last night, when I wanted to go to bed, I've filled the queue with some vids and (wanted to) went off. But then I noticed a HB Crash (with the normal release version) on the 1st file. I was too sleepy to investigate, reran the remaining queue after a reboot and added the file to the end of the queue again.
Then I went to bed and guess what meets me this morning? HB Crash on the same file again. "Mangled Stack Exception". Debugger was not able to produce a stack trace at all this time (yesterday we had at least a bit of trace before the mangle happened.).
Seems that he now gets killed whilest encoding, HB already did ~600mb of output before the crash. So it cannot be the info call alone.

I will now rerun the file with the debug HB.DLL and HBcli in gdb to (hopefully) see where it goes off to never-neverland...
stay tuned :-)

Update: Murphy strikes again: the debug run went through without any crash. (not with the same settings like from the gui, too bad there is no view for the needed commandline anymore so I could run it with identical settings)
mam
Posts: 32
Joined: Wed Jan 04, 2017 7:29 am

Re: Handbrake Crash on Intel board if GPU is turned off

Post by mam »

hmm, still am a bit puzzled... (your nightly update did not make it tonight already...),

see here: http://mamsmail1.is-very-nice.org/HBCrash.jpg (btw:why does this forum not allow screenshots to be uploaded?)

this is a gdbrun inside of Visual Studio. It breaks inside the intel DLL, thats ok for me.
But what makes me scratch my head is the stack trace, or, I better should say, the no-stack trace ?!?!?!?
No calling function???
How did the program then ever get here?
User avatar
s55
HandBrake Team
Posts: 10350
Joined: Sun Dec 24, 2006 1:05 pm

Re: Handbrake Crash on Intel board if GPU is turned off

Post by s55 »

Some versions of GDB seem to flake out with MinGW DLL files. That's why I use the one from the website I pointed out yesterday as it tends ot be more reliable.

Interestinly, while I get a stack trace going through the Intel Libraries, it doesn't show where it got called from HB.

Fortunatly, I was scanning the code and found scan.c line 1024 title->opencl_support = !!hb_opencl_available();
Following from there i can find where it goes and crashes.

I've tried a few differnet things and it seems no matter what I do, the Intel Driver refuses to behave itself. Not even sure why it's called. Maybe it's the last installed OpenCL files that take effect. Will need to investigate.

I'm looking at adding an option right now, to just outright disable this code to prevent it from being called.
mam
Posts: 32
Joined: Wed Jan 04, 2017 7:29 am

Re: Handbrake Crash on Intel board if GPU is turned off

Post by mam »

don't spend too much time on this. Not many people will ever go and disable this stuff. Either they dont even know about it, either they dont care.
I only did this because I wanted to compare the Time HB needs for a job with either pure software, or with hardware support. From the AMD I knew, that Hardware also could mean a lot slower, obviously the Intel thingys are much better with this.
(that is, because of the crashes I still have not done real comparison now :-))) )

Maybe the crashing part is never directly called by HB at all?
Could be an internal thread that is triggered indirectly by a simple and harmless query or enumeration function. Or it is an internal problem of the driver because one guy at Intel's never thought about (and therefore never checked) this feature could be deactivated ?
User avatar
s55
HandBrake Team
Posts: 10350
Joined: Sun Dec 24, 2006 1:05 pm

Re: Handbrake Crash on Intel board if GPU is turned off

Post by s55 »

The OpenCL detection crash Is from one of our calls. I'm not sure why it didn't show up on the callstack but some "hb_log("Got Here") old school debugging traced it down.

There will be more people affected by this, so I've opened a pull request with a change that will allow us to at the very least allow normal operation under software.

I can't seem to stop the Intel Driver crashing. It insists on trying to read an invalid memory pointer. So my change will be the next best thing.
mam
Posts: 32
Joined: Wed Jan 04, 2017 7:29 am

Re: Handbrake Crash on Intel board if GPU is turned off

Post by mam »

maybe its time then to inform Intel?

btw, your'e right, "your" gdb produces more stacktrace (not really more informative, but at least longer :-))) )

C:\SysGCC\mingw64\bin\gdb.exe --interpreter mi --args "D:\Git\HandBrake-1.0.1\win\CS\HandBrakeWPF\bin\x64\Debug\HandBrake.exe"
bt
&"bt\n"
#0 0x00007ff9b05adcf6 in igdrcl64!clGetCLObjectInfoINTEL () from C:\Windows\SYSTEM32\igdrcl64.dll
#1 0x00007ff9b0563b79 in igdrcl64!clGetCLObjectInfoINTEL () from C:\Windows\SYSTEM32\igdrcl64.dll
#2 0x00007ff9b055f455 in igdrcl64!clCreateFromGLTexture3D () from C:\Windows\SYSTEM32\igdrcl64.dll
#3 0x00007ff9b0f12983 in clGetDeviceIDsFromDX9MediaAdapterKHR () from C:\Windows\SYSTEM32\IntelOpenCL64.dll
#4 0x00007ff9b0ef112b in clGetPlatformIDs () from C:\Windows\SYSTEM32\IntelOpenCL64.dll
#5 0x00007ff9b77810ba in ?? () from C:\Windows\SYSTEM32\OpenCL.dll
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
OK

(i just copied it over the existing one and now can use it from visual studio. so I can debug the lib and the gui at the same time)
mam
Posts: 32
Joined: Wed Jan 04, 2017 7:29 am

Re: Handbrake Crash on Intel board if GPU is turned off

Post by mam »

hmmmmmm, I just made a rather strange and puzzling revelation:
if your turn the card "off", it still works like a normal (unenhanced) VGA card!
I did not notice before because I've placed the intel Monitor to my left but use the amd monitor as the main one for windows. So I have to move the mouse left of the desktop icons to place it onto the intel monitor.
After switching off the card this (of course) does not work. Desktop ends at the icons, no further left of them anymore.
BUT, accidentally, not planned, my mouse just moved out of the desktop to the RIGHT SIDE! and guess, what? it appeared on the turned off intel card!!!
I can move over windows, work there as if nothing has ever been switched off!!!
Its just now on the other side!
Windows only shows me that one monitor is attached, I cannot configure the intel one. But it still works!!!

I guess this means that even windows is fooled by the driver and there is always something running that is using this card, even maybe only the basic features.

This is really.... hmmm... not normal...
Post Reply