Funktioniert "sectionsdcontrol --freemem"?

Das Original Benutzerinterface Neutrino-SD incl. zapit, sectionsd, yWeb etc...
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Funktioniert "sectionsdcontrol --freemem"?

Beitrag von seife »

Kurze Frage: funktioniert "sectionsdcontrol --freemem" bei irgendjemand? Mein sectionsd ist hinterher laut top und ps genau gleich groß wie vorher.
Nachdem ich da ja dran rumgepatched habe, will ich nicht ausschließen, daß es daran liegt, deshalb die Frage :-)

Danke.
flasher
Developer
Beiträge: 467
Registriert: Dienstag 15. Juli 2003, 10:58

Beitrag von flasher »

Hi

Gleiche Größe 39524 vor- & nachher!

Code: Alles auswählen

/var # ps -aux | grep sectionsd && sectionsdcontrol --freemem && ps -aux | grep sectionsd
  223 root      39524 S   sectionsd
  224 root      39524 S   sectionsd
  226 root      39524 S   sectionsd
  227 root      39524 S   sectionsd
  228 root      39524 S   sectionsd
  231 root      39524 S   sectionsd
  232 root      39524 S   sectionsd
  233 root      39524 S   sectionsd
 3798 root       1908 S   grep sectionsd
freeMemory
  223 root      39524 S   sectionsd
  224 root      39524 S   sectionsd
  226 root      39524 S   sectionsd
  227 root      39524 S   sectionsd
  228 root      39524 S   sectionsd
  231 root      39524 S   sectionsd
  232 root      39524 S   sectionsd
  233 root      39524 S   sectionsd
 3803 root       1908 S   grep sectionsd
/var #
Gruß
kroki
Einsteiger
Einsteiger
Beiträge: 166
Registriert: Dienstag 22. Juni 2004, 22:12

Beitrag von kroki »

Also die EPG-Daten scheinen gelöscht zu werden, aber irgendwie wird kein Speicher frei gegeben ....

Kroki
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Beitrag von mb405 »

/var # free
total used free shared buffers
Mem: 30616 29532 1084 0 1592
Swap: 32756 248 32508
Total: 63372 29780 33592
/var # sectionsdcontrol --freemem
freeMemory
/var # free
total used free shared buffers
Mem: 30616 29192 1424 0 1616
Swap: 32756 248 32508
Total: 63372 29440 33932
bisle was macht der nur nicht viel, und epg fehlt dann überall.
is aber schon lange so
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

Warum ich gefragt habe: nach 5 Tagen belegt der sectionsd bei mir 15MB, und damit ist dann kein Speicher mehr für irgendwas da :-). Meine Einstellungen für Events etc. sind unter den defaults.

Wenn "--freemem" nicht funktioniert, funktioniert halt vermutlich auch das housekeeping nicht korrekt (vermute ich mal), daran wird das liegen. Dummerweise kenne ich mich mit der Speicherverwaltung von C++ nicht aus, aber ich schau mal, ob ich einen "Wissenden" dazu bringen kann, sich das anzuschauen. Immerhin ist sectionsd nicht ganz so schlimm wie Movieplayer. :-)
Nirvana
Erleuchteter
Erleuchteter
Beiträge: 646
Registriert: Mittwoch 16. April 2003, 14:12

Beitrag von Nirvana »

Das vermute ich schon immer, aber so tief im code wollte ich auch nicht wühlen.
ThulsaDoom
Interessierter
Interessierter
Beiträge: 86
Registriert: Montag 18. Dezember 2006, 10:28

Beitrag von ThulsaDoom »

Ich kann hier mal von meinem letzten Langzeittest berichten:

Die Box (internes HDD-IF) mit JTG-Image lief 14 Tage am Stück und hat eigentlich jeden Tag bzw. Nacht Aufnahmen zu stemmen gehabt.

Der swap-file füllt sich beispielsweise nach der ersten Aufnahme auf ca. 2-3 MB, dann bei der zweiten Aufnahmen auf 9 MB, dann 14 MB, dann 17 MB dann 23 MB und dann bleibt er tagelang so...Grössenveränderung nur noch im kb-Bereich. Das Ganze bei moderaten EPG-Einstellungen (7 Tage, 7000 Events, 24 Std. Vorschau, Verwerfen nach 1 Std.)

Nur Aufnahmen füllen den swap-File, das normale Bedienen und Abspielen der Moviedateien ändern nix. Der RAM wird nur zögerlich durch das Verwerfen der EPG-Events wieder frei (das dürfte aber hinlänglich bekannt sein!).

Die Bedienung der Box bleibt eigentlich problemlos bis auf die Tatsache, dass halt die HDD ab und zu mal anspringt um vom swap zu lesen, was beim Umschalten zu kurzen Verzögerungen führt.

freemem macht (wie hier schon beschrieben) nix, um den Speicher wieder freizukriegen. Das ist schon lange so - ich teste die Langzeitstabilität schon seit ca. 8 Monaten, da es sich aufgrund unsere Fernsehverhaltens im Haushalt nicht lohnt die Box in den Deep-Standby zu schicken! Daher bin ich bestrebt, die optimalen Einstellungen für den Dauerbetrieb zu finden.

Soweit läuft bei mir dahigehend auch alles ganz gut - den swap auf eine cf-Karte o.Ä. auszulagern wäre noch ne Option, die mich reizen würde (habe wg. der Bastelei aber bislang davor zurückgeschreckt)

Eine Lösung, um den Speicher wieder freizubekommen und den swap zu leeren wäre klasse, so könnte eine Box mit script oder Tastendruck wie frisch gebootet laufen.


Gruß
ThulsaDoom
PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Beitrag von PT-1 »

ThulsaDoom hat geschrieben:Eine Lösung, um den Speicher wieder freizubekommen und den swap zu leeren wäre klasse, so könnte eine Box mit script oder Tastendruck wie frisch gebootet laufen.


Gruß
ThulsaDoom
Ich hatte ja mal im Feature Request nachgefragt ob man nicht einen Timer setzen kann der die Box Rebooted.... Via plugin geht das zwar auch aber ein fester Timer im Menue waere schoen um die neu gescannten Sender z.B. auf 28.2 schoen einzusortieren.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

Ok. Vielleicht leaked er ja nicht wirklich, aber belegt bei mir halt irgendwann > 15MB, und das ist ohne swap tödlich.

"Was tun, sprach Zeus..." - vielleicht stecke ich doch mal ne Speichererweiterung in die SAGEM - bei der Philips wird's schwieriger :-)

Ich kann das nicht fixen, dazu sind meine C++-Kenntnisse einfach zu schlecht, ich schau aber mal ob ich das "beauftragen" kann.

Dummerweise kann man momentan den sectionsd auch nicht wirklich neu starten, ohne neu zu booten, da er die Konfiguration von neutrino nur beim neutrino-Start übermittelt bekommt, ansonsten läuft er mit einer default-Konfiguration, z.B. ohne sectionsd-Scan. Das kann ich evtl. fixen. Dann könnte man noch eine "starte dich selbst neu"-Funktion in sectionsd einbauen und wir haben wieder einen neuen, peinlichen Hack :-)

@PT1: um die Sender einzusortieren mußt du nicht neu booten. "pzapit -esb; pzapit -lsb" sollte da reichen.
PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Beitrag von PT-1 »

@Seife

liest der dann die currentservices.xml und currentbouquets.xml aus dem /TMP ein ???

Gruss

PT-1
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

Ja. Zumindest sollte er :-) Es müßte sogar reichen, einen Film im Movieplayer abzuspielen...
dwilx

Beitrag von dwilx »

etwas OT aber könnte man bei pzapit nicht eine Ausgabe für EPG-ID machen, wie's auch bei TSId, ChannelID usw. der Fall ist, oder gibt's das schon. Auf dem ersten Blick finde ich nichts :-?
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

Zapit hat nichts mit EPG zu tun. Das ist sectionsd.
dwilx

Beitrag von dwilx »

Ist soweit klar, deshalb ja "etwas OT", aber geht das irgendwie?