xineliboutput Plugin: Permission denied

  • Hallo,


    ich benutzte xinelibout 1.0.0pre5 mit vdr 1.4.2 auf einem Debian System.


    Beim Start vom xinelibout-Plugin ist mir aufgefallen, dass es dort Stellen gibt, wo "Permission denied" steht (rot markiert). Kann mir jemand erklären woher das kommt und wie ich das abstellen kann?


    jerryct


    Sep 21 14:02:32 localhost vdr: [6254] VDR version 1.4.2 started
    Sep 21 14:02:32 localhost vdr: [6254] switched to user 'vdr'
    Sep 21 14:02:32 localhost vdr: [6254] loading plugin: /usr/lib/vdr/plugins/libvdr-xineliboutput.so.1.4.2
    Sep 21 14:02:32 localhost vdr: [6254] loading plugin: /usr/lib/vdr/plugins/libvdr-femon.so.1.4.2
    Sep 21 14:02:32 localhost vdr: [6254] loading /var/lib/vdr/setup.conf
    Sep 21 14:02:32 localhost vdr: [6254] loading /var/lib/vdr/sources.conf
    Sep 21 14:02:32 localhost vdr: [6254] loading /var/lib/vdr/diseqc.conf
    Sep 21 14:02:32 localhost vdr: [6254] loading /var/lib/vdr/channels.conf
    Sep 21 14:02:32 localhost vdr: [6254] loading /var/lib/vdr/timers.conf
    Sep 21 14:02:32 localhost vdr: [6254] loading /var/lib/vdr/commands.conf
    Sep 21 14:02:32 localhost vdr: [6254] loading /var/lib/vdr/reccmds.conf
    Sep 21 14:02:32 localhost vdr: [6254] loading /var/lib/vdr/svdrphosts.conf
    Sep 21 14:02:32 localhost vdr: [6254] loading /var/lib/vdr/remote.conf
    Sep 21 14:02:32 localhost vdr: [6254] loading /var/lib/vdr/keymacros.conf
    Sep 21 14:02:32 localhost vdr: [6256] video directory scanner thread started (pid=6256, tid=6256)
    Sep 21 14:02:32 localhost vdr: [6256] video directory scanner thread ended (pid=6256, tid=6256)
    Sep 21 14:02:32 localhost vdr: [6257] video directory scanner thread started (pid=6257, tid=6257)
    Sep 21 14:02:32 localhost vdr: [6257] video directory scanner thread ended (pid=6257, tid=6257)
    Sep 21 14:02:32 localhost vdr: [6254] reading EPG data from /var/cache/vdr/epg.data
    Sep 21 14:02:32 localhost vdr: [6254] probing /dev/dvb/adapter0/frontend0
    Sep 21 14:02:32 localhost vdr: [6254] ERROR: can't open DVB device 0
    Sep 21 14:02:32 localhost vdr: [6258] section handler thread started (pid=6258, tid=6258)
    Sep 21 14:02:32 localhost vdr: [6254] probing /dev/dvb/adapter1/frontend
    Sep 21 14:02:32 localhost vdr: [6254] found 1 video device
    Sep 21 14:02:32 localhost vdr: [6254] initializing plugin: xineliboutput (1.0.0pre5): X11/xine-lib output plugin
    Sep 21 14:02:32 localhost vdr: [6254] [xine..put] RTP SSRC: 0x6a6c0ea9
    Sep 21 14:02:32 localhost vdr: [6259] ERROR (thread.c,224): Permission denied
    Sep 21 14:02:32 localhost vdr: [6254] initializing plugin: femon (1.0.1): DVB Signal Information Monitor (OSD)
    Sep 21 14:02:32 localhost vdr: [6254] setting primary device to 2
    Sep 21 14:02:32 localhost vdr: [6254] SVDRP listening on port 2001
    Sep 21 14:02:32 localhost vdr: [6254] setting current skin to "classic"
    Sep 21 14:02:32 localhost vdr: [6254] loading /var/lib/vdr/themes/classic-default.theme
    Sep 21 14:02:32 localhost vdr: [6254] starting plugin: xineliboutput
    Sep 21 14:02:32 localhost vdr: [6260] Remote decoder/display server (cXinelibServer) thread started (pid=6260, tid=6260)
    Sep 21 14:02:32 localhost vdr: [6260] ERROR (thread.c,224): Permission denied
    Sep 21 14:02:32 localhost last message repeated 2 times
    Sep 21 14:02:32 localhost vdr: [6260] [xine..put] cXinelibServer: Can't set priority to SCHED_RR 2 [1,99]
    Sep 21 14:02:32 localhost vdr: [6260] [xine..put] Listening on port 10000
    Sep 21 14:02:32 localhost vdr: [6254] [xine..put] cXinelibDevice::StartDevice(): Device started
    Sep 21 14:02:32 localhost vdr: [6254] starting plugin: femon
    Sep 21 14:02:32 localhost vdr: [6254] ERROR: /dev/lircd: No such file or directory
    Sep 21 14:02:32 localhost vdr: [6254] ERROR: remote control LIRC not ready!

  • Die ersten Fehlermeldungen kommen von VDR's cThread::SetPriority(), wobei xineliboutput versucht, eine höhere Priorität als 0 (die Normalpriorität) zu setzen, was aber unter Linux nur root vorbehalten ist.


    Die letzte Meldung kommt von Versuch, mit pthread_setschedparam die Multitasking-Zeitzuteilung auf SCHED_RR (Round Robin) umzuschalten, was ebenfalls root vorbehalten ist.


    Die Meldungen sind nicht kritisch, die Funktion dürfte davon nicht wesentlich betroffen sein. Wenn du sie los werden willst, kannst du entweder VDR als root laufen lassen, oder du musst an xineliboutput rumpatchen, um die entsprechenden Aufrufe zu entfernen. Oder du ignorierst die Meldungen einfach.


    Gruß,


    Udo

  • Besseres Vorgehen (falls möglich):


    In der Datei vdr.c nach folgendem suchen:


    Code
    cap_t caps = cap_from_text("= cap_sys_time=ep");


    und durch folgendes ersetzen:


    Code
    cap_t caps = cap_from_text("= cap_sys_nice,cap_sys_time=ep");


    VDR neu kompilieren, fertig. Keine thread.c und priority-Fehler mehr.


    Gruß


    Joe_D

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!