Re: [vdr] lirc key reading to slow ? Buffer overflow ?

2011-01-02 Thread Steffen Barszus
On Wed, 29 Dec 2010 12:14:48 +0100
Klaus Schmidinger  wrote:

> On 04.12.2010 12:13, Steffen Barszus wrote:
> > Hi !
> > 
> > i get these errors, once my remote is doing key repeats:
> > 
> > Dec  3 23:33:13 vdr vdr: [24629] ERROR: unparseable lirc command:
> > gy_Receiver-event-kbd#012b-Gyration_Gyration_RF_Technology_Receiver-event-kbd#01272
> > 0 KEY_VOLUMEDOWN usb-Gyration_Gyration_RF_TechnoloKEY_VOLUMEDOWN
> > Dec  3 23:34:14 vdr vdr: last message repeated 583 times
> > 
> > especially note the 
> > usb-Gyration_Gyration_RF_TechnoloKEY_VOLUMEDOWN
> > and ...kbd#012b- (this should read usb-...) 
> > 
> > is there anything forgot to reset ? A buffer to small ? 
> > Just wrong how it is read ? In irw and xbmc there
> > seems no such issue, means the repeat just works. 
> > 
> > i increased the buffers to:
> > 
> > private:
> >   enum { LIRC_KEY_BUF = 500, LIRC_BUFFER_SIZE = 4096 };
> > 
> > which seems to make the error disappear, but its still incredible
> > slow (compared to other applications) in accept the keys. Can this
> > be improved ? 
> 
> You may want to add some debug outputs to cLircRemote::Action() to
> see what's going on. From the (garbled ;-) log entry you posted I
> guess there is some buffer overflow.

i missed also the sscanf string size - after changing this its better,
the rest is i guess bad interaction with repeat delays (not sure what 
#define REPEATDELAY 350 // ms
#define REPEATFREQ 100 // ms
#define REPEATTIMEOUT 500 // ms
do) 

isn't lirc suppose to handle repeats instead of vdr ? Anyway after
commenting that part out ( if (count == 0) { in Action) vdr seems a lot
snappier. 


___
vdr mailing list
vdr@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr


Re: [vdr] lirc key reading to slow ? Buffer overflow ?

2010-12-29 Thread Klaus Schmidinger
On 04.12.2010 12:13, Steffen Barszus wrote:
> Hi !
> 
> i get these errors, once my remote is doing key repeats:
> 
> Dec  3 23:33:13 vdr vdr: [24629] ERROR: unparseable lirc command:
> gy_Receiver-event-kbd#012b-Gyration_Gyration_RF_Technology_Receiver-event-kbd#01272
> 0 KEY_VOLUMEDOWN usb-Gyration_Gyration_RF_TechnoloKEY_VOLUMEDOWN Dec  3
> 23:34:14 vdr vdr: last message repeated 583 times
> 
> especially note the 
> usb-Gyration_Gyration_RF_TechnoloKEY_VOLUMEDOWN
> and ...kbd#012b- (this should read usb-...) 
> 
> is there anything forgot to reset ? A buffer to small ? 
> Just wrong how it is read ? In irw and xbmc there
> seems no such issue, means the repeat just works. 
> 
> i increased the buffers to:
> 
> private:
>   enum { LIRC_KEY_BUF = 500, LIRC_BUFFER_SIZE = 4096 };
> 
> which seems to make the error disappear, but its still incredible slow
> (compared to other applications) in accept the keys. Can this be
> improved ? 

You may want to add some debug outputs to cLircRemote::Action() to
see what's going on. From the (garbled ;-) log entry you posted I
guess there is some buffer overflow.

Klaus

___
vdr mailing list
vdr@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr