taskTransport Sample Protocol - Tasks: task #7409, Port TSP core for RTEMS OS

 
 

You are not allowed to post comments on this tracker with your current authentification level.

task #7409: Port TSP core for RTEMS OS

Submitted by:  Eric NOULARD <erk>
Submitted on:  Fri 26 Oct 2007 08:07:54 PM UTC  
 
Category: tsp coreShould Start On: Thu 25 Oct 2007 10:00:00 PM UTC
Should be Finished on: Thu 25 Oct 2007 10:00:00 PM UTCPriority: 5 - Normal
Status: In ProgressPrivacy: Public
Percent Complete: 30%Assigned to: Frederik Deweerdt <deweerdt>
Open/Closed: OpenEffort: 0.00

(Jump to the original submission Jump to the original submission)

Tue 25 Mar 2008 10:40:29 PM UTC, comment #10:

Bon les amis j'ai une bonne piste pour le
"mauvais dimensionnement du buffer d'envoi socket".

Stéphane peux-tu "simplement" faire
ce changement dans tsp_const_def.h

remplacer:

par

A priori ça marche chez moi et ça devrait
marcher chez tout le monde mais avant de coller la modif
dans le CVS je vais faire un appel au peuple
pour test.

J'attache un petit fichier texte qui décrit mon cheminement
dans le code (ne le lisez pas :-)

Concernant "la récupération" de la mémoire, je pense
qu'on ne peut pas y faire grand chose le PC et "beaucoup"
plus rapide qu'une cible embarquée quelconque.

Ce que l'on devrait faire c'est être tolérant aux cas
d'erreur d'allocation mémoire.
Je vais ouvrir un bug à ce sujet.

Stéphane, tiens nous au courant de tes tests avec cette nouvelle
valeur magique.

Avec ça tu devrais avoir des buffer d'envoi de 23kB
pour 1 symbole.

Puis tu ajoutes 8kB par symbole 'double' suplémentaire
8kB = 8 * 10 * 100
8 = sizeof(double)
10 = 10 secondes de buffer
100 = 100 Hz

le 10 seconde est arbitraire et on pourrait le changer aussi
c'est
TSP_STREAM_SENDER_RINGBUF_SIZE

qui vaut 10, sauf pour VxWorks ou il vaut 2 aller
savoir pourquoi...

Eric NOULARD <erk>
Project Administrator
Tue 18 Mar 2008 12:24:17 PM UTC, comment #9:

Comme les pbs subsistent lorsque que plus de 'n' symboles
sont demandés c'est qu'il y a probablement un pb
de dimensionnement de buffer,

ce que nous avons déjà eu par le passé:
https://savannah.nongnu.org/bugs/?19008
https://savannah.nongnu.org/bugs/?16629

Je pense qu'il faut examiner dans les cas qui marche
ou qui ne marche pas la taille des différents
buffer calculée par le core TSP:

on le voit principalement dans des traces du genre:

Il faut donc contrôler les règles de calculs
de
TSP_DATA_STREAM_MAX_BUFFER_SIZE
RINGBUF_SIZE
TSP_CONSUMER_RINGBUF_SIZE
TSP_DATA_STREAM_SOCKET_FIFO_SIZE
TSP_STREAM_SENDER_RINGBUF_SIZE
...

Eric NOULARD <erk>
Project Administrator
Wed 12 Mar 2008 05:48:41 PM UTC, comment #8:

Je change l'assignation de la tâche vu que Fred
a commencé le merge :=)

Sinon vis-à-vis des dump binaire je peux les lire
sans pb dans Wireshark ce qui est plus simple à dépouiller.
Dans le premier:
https://savannah.nongnu.org/task/download.php?file_id=15246

on voit bien la connection au provider sur le port 1024.
juste après la requête DNS qui échoue.

dans le second:
pas de connection visible...

Par contre dans les 2 traces mon wireshark me dit qu'il
ne peut vérifier les checksum de certains paquets car la
capture est incomplète...

Est-ce que tu n'aurais pas des pertes de paquets sur ton
lien? (cable ethernet merdique?)
Peux-tu regarder ce que dise les stats de ton interface
côté Linux?

Il se peut que tu n'exécute pas tcpdump avec des droits
suffisants.
Peux-tu exécuter ton tcpdump en root pour qu'il ait
le droit de mettre l'I/F en mode promiscuous?

Eric NOULARD <erk>
Project Administrator
Mon 25 Feb 2008 05:19:24 PM UTC, comment #7:

Voici une version allégée (sans fichiers parasites) et corrigé (s'applique bien sur une 0.8.3).
Ca ne s'applique pas sur le dernier CVS, il y a 18 hunks en conflit.

Stéphane est-ce que tu peux faire la chose suivante:
- Récupérer un TSP 0.8.3 (cvs co <url cvs tsp> -r TSP_0_8_3)
- Appliquer le fichier attaché (patch -p1 < rtems.patch)
- Effectuer les corrections suivantes:
* Ne pas include <sys/types.h> dans les fichiers C, le faire une fois pour toute dans tsp_abs_types.h
* Vérifier que les diffs dûs à WIN32 -> _WIN32 sont inutiles, et les supprimer du fichier diff final
- Renvoyer le résultat en lançant un simple 'cvs diff -u' à la racine de l'arbo

(file #15109)

Frederik Deweerdt <deweerdt>
Project AdministratorIn charge of this item.
Mon 25 Feb 2008 10:47:46 AM UTC, comment #6:

Ok j'ai "nettoyer" un peu ton patch pour qu'il soit
moins gros bien que fonctionnellement équivalent.
Y'a encore quelques cochonneries (fichiers ~ notamment)
mais ça passe en taille.

(file #15108)

Eric NOULARD <erk>
Project Administrator
Mon 25 Feb 2008 08:38:45 AM UTC, comment #5:

Salut Stéphane,

Je ne suis pas sûr que tu ais ajouté ton patch?
Il y avait déjà un patch d'attaché:
https://savannah.nongnu.org/task/download.php?file_id=14244

mais il me semble qu'il date ?
Peux-tu confirmer que ce patch est à jour?

Eric NOULARD <erk>
Project Administrator
Mon 25 Feb 2008 08:07:23 AM UTC, comment #4:

Voici le diff -urN entre mon arbre tsp modifié : tsp-0.8.3-Source-Rtems et tsp-0.8.3.

Stéphane ARQUER <arquers>
Thu 22 Nov 2007 01:30:04 PM UTC, comment #3:

dans init_bb_tsp_rtems.c
tu as un petit problème dans l'affichage
Tata qui utilise en fait Toto[i]
avec un i qui devient supérieur aux bornes
de Toto (dimension 3 et pas 9)

for (i=0;i<9;++i) {
Tata[i] = cos(*Titi/(i+1));
printf("@Tata = 0x%x, Tata[%d] = %d\n",(unsigned int)&Toto[i],i,Toto[i]);
}

Ca ne devrait pas provoquer le pb car
printf ne fait que "lire" Toto[i] mais bon
comme printf est une fonction avec effet de bord
je te suggère de corriger.

Je n'ai pas encore eu le temps d'éplucher le reste
des sources.

Eric NOULARD <erk>
Project Administrator
Tue 13 Nov 2007 04:05:56 PM UTC, comment #2:

Voici le contenu de libbb .

(file #14381)

Stéphane ARQUER <arquers>
Sat 03 Nov 2007 12:12:12 PM UTC, comment #1:

Ok I've tried an integration of the patch
but I think this patch is not acceptable as_is
I did only merge part of it.
My remarks hereafter:

There is too much #ifdef TSP_RTEMS for #include <sys/types.h>
that should only go in a single place

either

tsp_sys_header.h (add #include <sys/types.h> in the file)
or
add
tsp_abs_types.h inclusion since tsp_abs_types.h
already contains the #include <sys/types.h>.

Concerning the RPC with no portmap
I think we need to implement direct_rpc:// url
handling instead of using rpc:// .

There is more work for merging this too.

Eric NOULARD <erk>
Project Administrator
Fri 26 Oct 2007 08:07:54 PM UTC, original submission:

Stephane ARQUER did make TSP work on RTEMS/pc_i386
(http://www.rtems.org).

The objective of the task is to integrate
his work in the main tree.

http://lists.nongnu.org/archive/html/tsp-devel/2007-10/msg00016.html

May be with added support for CMake cross-compile
for RTEMS and adding a
direct_rpc:// command channel that would not use
rpc portmapper but use an application chosen port.

Eric NOULARD <erk>
Project Administrator

 

Attached Files
file #15326:  stub server rtems.zip added by arquers (12kB - application/x-zip-compressed)
file #15246:  tcpdump_stdout.bin added by arquers (18kB - application/octet-stream - fichiers binaires tcpdump client stdout avec s1 et s5)
file #15247:  tcpdump_stdout_s5.bin added by arquers (15kB - application/octet-stream - fichiers binaires tcpdump client stdout avec s1 et s5)
file #15230:  tcpdump.txt added by arquers (24kB - text/plain)
file #15231:  traces clients.txt added by arquers (833B - text/plain)
file #15232:  traces provider.txt added by arquers (7kB - text/plain)
file #15220:  trace stub.txt added by arquers (6kB - text/plain)
file #15192:  Makefile added by arquers (10kB - application/octet-stream - Makefile pour créer les librairies TSP )
file #15188:  rtems.diff added by arquers (40kB - application/octet-stream)
file #15169:  erreurs compilation added by arquers (15kB - application/octet-stream)
file #15168:  rtems.diff added by arquers (41kB - application/octet-stream)
file #15109:  rtems added by deweerdt (33kB - application/octet-stream)
file #15108:  diff_rtems-22feb2008.patch.gz added by erk (106kB - application/x-gzip - Updated (pruned) patch)
file #14458:  init_bb_tsp_rtems.c added by arquers (6kB - application/octet-stream - code de test du BB sur rtems, + traces avec bbdump)
file #14459:  bb_tsp_log_2.TXT added by arquers (9kB - text/plain - code de test du BB sur rtems, + traces avec bbdump)
file #14455:  bb_tsp_log.TXT added by arquers (46kB - text/plain - Traces de TSP)
file #14381:  Libbb_rtems.zip added by arquers (119kB - application/x-zip-compressed)
file #14244:  tsp-0.8.3-rtems.patch added by arquers (447kB - application/octet-stream - Here the patch file containing my modifications)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by deweerdt (Updated the item)
  • -unavailable- added by arquers (Updated the item)
  • -unavailable- added by erk (Submitted the item)
  • -unavailable- added by erk (Initial Port maker)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 25 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Fri 11 Apr 2008 08:45:09 AM UTCarquersAttached File-=>Added traces tsp 110408 - async read et write.txt, #15442
    Thu 10 Apr 2008 08:09:52 AM UTCarquersAttached File-=>Added traces tsp 10-04-08.txt, #15437
    Tue 25 Mar 2008 10:40:28 PM UTCerkPercent Complete20%=>30%
    Mon 24 Mar 2008 08:20:53 PM UTCarquersAttached File-=>Added stub server rtems.zip, #15326
    Wed 12 Mar 2008 05:48:41 PM UTCerkAssigned toerk=>deweerdt
    Wed 12 Mar 2008 07:59:43 AM UTCarquersAttached File-=>Added tcpdump_stdout.bin, #15246
      Attached File-=>Added tcpdump_stdout_s5.bin, #15247
    Tue 11 Mar 2008 10:36:47 AM UTCarquersAttached File-=>Added tcpdump.txt, #15230
      Attached File-=>Added traces clients.txt, #15231
      Attached File-=>Added traces provider.txt, #15232
      Attached File-=>Added traces 5 symboles .txt, #15233
    Mon 10 Mar 2008 03:10:20 PM UTCarquersAttached File-=>Added trace stub.txt, #15220
    Thu 06 Mar 2008 01:06:41 PM UTCarquersAttached File-=>Added Makefile, #15192
    Wed 05 Mar 2008 05:00:58 PM UTCarquersAttached File-=>Added rtems.diff, #15188
    Mon 03 Mar 2008 10:50:01 PM UTCarquersAttached File-=>Added erreurs compilation, #15169
    Mon 03 Mar 2008 10:34:28 PM UTCarquersAttached File-=>Added rtems.diff, #15168
    Mon 25 Feb 2008 05:19:24 PM UTCdeweerdtAttached File-=>Added rtems, #15109
    Mon 25 Feb 2008 10:47:46 AM UTCerkAttached File-=>Added diff_rtems-22feb2008.patch.gz, #15108
    Thu 22 Nov 2007 09:10:43 AM UTCarquersAttached File-=>Added init_bb_tsp_rtems.c, #14458
      Attached File-=>Added bb_tsp_log_2.TXT, #14459
    Wed 21 Nov 2007 05:26:39 PM UTCarquersAttached File-=>Added bb_tsp_log.TXT, #14455
    Tue 13 Nov 2007 04:05:56 PM UTCarquersAttached File-=>Added Libbb_rtems.zip, #14381
    Sat 03 Nov 2007 12:12:12 PM UTCerkAssigned toNone=>erk
    Mon 29 Oct 2007 10:49:11 AM UTCarquersAttached File-=>Added tsp-0.8.3-rtems.patch, #14244
    Fri 26 Oct 2007 08:07:54 PM UTCerkCarbon-Copy-=>Added -unavailable-

    Back to the top


    Powered by Savane 3.1-cleanup