Oscam StreamRelay Delay Mod

Ich habe einen fehler drin, so geht es, unlock ist im Patch noch 2x drin.
C:
void streamrelaybuf_readFromThreadDone(streamrelaybuf_t *buf)
{
    atomic_store(&buf->readPos, buf->readPosNext);
    //pthread_mutex_unlock(&buf->lock);
    SAFE_MUTEX_UNLOCK(&buf->lock);
}
Ich hatte das auf SAFE_MUTEX_UNLOCK geändert, weil es so überall in Oscam ist. Und vergessen das alte zu löschen.

Die Bin habe ich schon neu gemacht. v9,1 im Log
 
Zuletzt bearbeitet:
kannst du auch mal den patch in post 1 stellen
 
die V9 habe ich entfernt und eine V10 Source hinzugefügt.
  1. doppelten pthread_mutex_unlock(&buf->lock); entfernt
  2. LogTiming max 10 je s (sollte nur bei Fehlern auftreten)
  3. ohne TCP wait, noch mal packetcount > 0 abgefragt
  4. 1000ms nach erstem EcmRequest noch kein AddDelay, aber Daten schon mal im buffer sammeln (steht dann im Log)
  5. Ecm OddEven nur dann schreiben wenn vorher ein EcmRequest OddEven. Wenn mal kein Half ECM sondern Fuell ECM kommt, wird der key nicht überschrieben (steht dann im Log)
Sie müssen registriert sein, um angehängte Bilder zu sehen
 

Anhänge

Sie müssen registriert sein, um die Liste der Anhänge zu sehen
Zuletzt bearbeitet:
Beim kompilieren mit der 10 kommen Warnings. Läuft aber problemlos durch. Anbei ein Screenshot.

10B funktioniert jetzt
 

Anhänge

Sie müssen registriert sein, um die Liste der Anhänge zu sehen
Zuletzt bearbeitet:
Hat ganz normal gebaut, hier auch keine Probleme
 
Code:
    BUILD ------> module-serial.c
    BUILD ------> module-streamrelaybuf.c
    BUILD ------> module-webif-tpl.c
    BUILD ------> webif/pages.c
    BUILD ------> webif/pages_wiki.c
    In file included from globals.h:2685,
                     from module-streamrelay.c:3:
    module-streamrelay.c: In function 'writer_func':
    module-streamrelay.c:1029:48: warning: too many arguments for format [-Wformat-extra-args]
     1029 |                                         cs_log("%i wait for first EcmRequest", conndata->connid, diff_ms);
    |                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    oscam-log.h:17:75: note: in definition of macro 'cs_log'
       17 | #define cs_log(fmt, params...)              cs_log_txt(MODULE_LOG_PREFIX, fmt, ##params)
    |                                                                           ^~~
    module-streamrelay.c:1042:48: warning: too many arguments for format [-Wformat-extra-args]
     1042 |                                         cs_log("%i wait for first Ecm", conndata->connid, diff_ms);
    |                                                ^~~~~~~~~~~~~~~~~~~~~~~
    oscam-log.h:17:75: note: in definition of macro 'cs_log'
       17 | #define cs_log(fmt, params...)              cs_log_txt(MODULE_LOG_PREFIX, fmt, ##params)
    |                                                                           ^~~
    BUILD ------> reader-common.c
  ......................................................
    BUILD ------> oscam-aes.c
    module-streamrelay.c: In function 'logTiming':
    module-streamrelay.c:939:79: warning: 'snprintf' output truncated before the last format character [-Wformat-truncation=]
      939 |                 snprintf(maxLogText, sizeof(maxLogText), "max Lines LogTiming ");
    |                                                                               ^
    module-streamrelay.c:939:17: note: 'snprintf' output 21 bytes into a destination of size 20
      939 |                 snprintf(maxLogText, sizeof(maxLogText), "max Lines LogTiming ");
    |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    BUILD ------> oscam-hashtable.c
    BUILD ------> oscam-array.c
    BUILD ------> oscam-conf.c
    module-streamrelay.c: In function 'writer_func':
    oscam-log.h:17:45: warning: 'diff_ms' may be used uninitialized [-Wmaybe-uninitialized]
       17 | #define cs_log(fmt, params...)              cs_log_txt(MODULE_LOG_PREFIX, fmt, ##params)
    |                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    module-streamrelay.c:1042:41: note: in expansion of macro 'cs_log'
     1042 |                                         cs_log("%i wait for first Ecm", conndata->connid, diff_ms);
    |                                         ^~~~~~
    module-streamrelay.c:992:18: note: 'diff_ms' was declared here
      992 |         uint64_t diff_ms;
    |                  ^~~~~~~
    BUILD ------> oscam-chk.c
    BUILD ------> oscam-cache.c
    BUILD ------> oscam-conf-mk.c
    BUILD ------> oscam-client.c
    BUILD ------> oscam-conf-chk.c
 
Zuletzt bearbeitet:
Die Warnung ist im Patch angepasst.
Es wurde ein Leerzeichen abgeschnitten und 2 nicht verwendete variablen sind gelöscht.

Bei S4 muss man für die Warnungen die erstellte Logdatei öffnen. In der Logausgabe im Fenster stehen die Warnungen nicht mit drin.

mit
stream_tcp_waitall = 0
hatte ich noch einen fehler, default ist das ja "1" da läuft es normal
 
Zuletzt bearbeitet:
zur info wegen dem fehler

EXTRA LDFLAGS "-latomic" sonst gibt es "undefined reference to `__atomic_store_8'"

ich hatte die dream toolchains
arm , aarch , mipsel
arm und mipsel hatten den fehler

jetzt habe ich die generic genommen
und da kann man alle 3 bauen ohne fehler

habe probiert wo der eintrag ist aber nicht gefunden
 
hatte dir doch geschrieben, das du es für s3 in deiner Toolchain.conf mit übergeben könntest. (kannst du mit USE_EXTRA enablen)

z.Bsp.
Code:
default_use="USE_LIBCRYPTO USE_EXTRA";
extra_ld="-latomic";
Sie müssen registriert sein, um angehängte Bilder zu sehen
 

Anhänge

Sie müssen registriert sein, um die Liste der Anhänge zu sehen
Zuletzt bearbeitet:
Ich bräuchte mal die neuste Version für den Oktogon SF 8008
 
Was stört dich an diesen Versionen?


Ansonsten Fix WSL einrichten mit Ubuntu / Simplebuild4 und selbst bauen.
 
Diese ?
oscam-git11965@dd703725-default-armv7_universal-dvbapi-icam-ipv6-libdvbcsa-webif-static
 
Für die Nutzung dieser Website sind Cookies erforderlich. Du musst diese akzeptieren, um die Website weiter nutzen zu können. Erfahre mehr…