[vlc-devel] [RFC] http vs luahttp

Rob rob at hobbyistsoftware.com
Sun Mar 27 20:19:57 CEST 2011


On Sun, 27 Mar 2011 13:27:43 -0000, Rémi Denis-Courmont <remi at remlab.net>  
wrote:

> (-) I am not aware of Rob's claimed stability issues. There may be some  
> race
> conditions in the LUA/HTTPd glue. Indeed HTTPd runs in a different  
> thread than
> the LUA interface. If I recall correctly, getting event handling and
> synchronization (mostly?) right in the RPN interface occupied me quite a
> while. I have absolutely no intentions of going through this painful  
> process
> on my free time again. Then again, it might just be a problem with LUA on
> MacOS?

I just did some testing on mac (vlc 1.18) windows (vlc 1.18) interface and  
ubuntu (vlc 1.20)

The test is
1) turn on luahttp interface
2) connect with my vlc remote iPhone app and open the 'advanced controls'  
tab. (this essentially sends hotkey commands like aspect ratio, dvd  
control, etc)
3) tap randomly on commands

windows:
pretty stable. I did get a couple of crashes, but for the most part it was  
stable

mac:
about every 10th command causes a crash. I wasn't able to detect any  
pattern based on what command, how many times sent, etc.

ubuntu:
same as mac crashes about every 10th command.


I have copied the crashed thread reports for three mac cases below (and  
sent them by the vlc report system).

so, the windows luahttp is looking pretty good except for the lack of  
pl_delete and the issues with state reporting.
luahttp is still problematic on mac and ubuntu though.

oldhttp works well for them all.

Rob



Thread 5 Crashed:
0   libvlccore.4.dylib            	0x0000000100091e77 varcmp + 7
1   libSystem.B.dylib             	0x00007fff840a9dd1 tfind + 38
2   libvlccore.4.dylib            	0x0000000100092270 var_Type + 64
3   liblua_plugin.dylib           	0x0000000100794cb4 vlclua_var_set + 68
4   liblua_plugin.dylib           	0x000000010079bf42 luaD_precall + 322
5   liblua_plugin.dylib           	0x00000001007a6a15 luaV_execute + 3925
6   liblua_plugin.dylib           	0x000000010079c3dd luaD_call + 173



Thread 5 Crashed:
0   libSystem.B.dylib             	0x00007fff8401d7b7 pthread_mutex_lock +  
31
1   liblua_plugin.dylib           	0x0000000100793395  
vlclua_playlist_status + 37
2   liblua_plugin.dylib           	0x000000010079bf42 luaD_precall + 322
3   liblua_plugin.dylib           	0x00000001007a6a15 luaV_execute + 3925
4   liblua_plugin.dylib           	0x000000010079c3dd luaD_call + 173
5   liblua_plugin.dylib           	0x000000010079ba87 luaD_rawrunprotected  
+ 103
6   liblua_plugin.dylib           	0x000000010079bb00 luaD_pcall + 80


Thread 5 Crashed:
0   libvlccore.4.dylib            	0x0000000100091e77 varcmp + 7
1   libSystem.B.dylib             	0x00007fff840a9dd1 tfind + 38
2   libvlccore.4.dylib            	0x0000000100092270 var_Type + 64
3   liblua_plugin.dylib           	0x0000000100794cb4 vlclua_var_set + 68
4   liblua_plugin.dylib           	0x000000010079bf42 luaD_precall + 322
5   liblua_plugin.dylib           	0x00000001007a6a15 luaV_execute + 3925
6   liblua_plugin.dylib           	0x000000010079c3dd luaD_call + 173



More information about the vlc-devel mailing list