* [dpdk-dev] segmentation fault in lthread_run() on ARM64 processor - regarding
@ 2020-02-11 10:16 hema sai chandra
0 siblings, 0 replies; only message in thread
From: hema sai chandra @ 2020-02-11 10:16 UTC (permalink / raw)
To: tomaszx.kulasek, ian.betts; +Cc: users, dev
Hi,
I am trying to launch a function called lthread_init(), on a logical
core using rte_eal_remote_launch from main (), then creating an lthread
which has only lthread_exit() in the thread body and lthread_run() in the
lthread_init() and then calling a function lthread_main_spawner() from
main(), which creates an lthread (lthread_spawner ) and a scheduler
lthread_run (), this lthread_spawner() creates three more lthreads, you can
see the code below
main ()
{
/** rte_eal_init () and other necessary initialisations */
....
rte_eal_remote_launch ( lthread_init, NULL, 2);
lthread_main_spawner(NULL);
}
static int lthread_init ( void *arg )
{
struct lthread *lt;
lthread_create ( <, -1, lthread_start, NULL );
lthread_run();
return 0;
}
static void *lthread_start ( void *args )
{
....
lthread_exit( NULL );
return NULL;
}
static int lthread_main_spawner ( void *arg )
{
struct lthread *lt;
lthread_create ( <, -1, lthread_spawner, NULL );
lthread_run();
return 0;
}
static void *lthread_spawner ( void )
{
struct lthread *lt1, *lt2, *lt3;
lthread_create ( <1, -1, fun1, NULL );
lthread_create ( <2, -1, fun2, NULL );
lthread_create ( <3, -1, fun3, NULL );
lthread_sleep ( 1000 );
lthread_join ( lt1, NULL );
lthread_join ( lt2, NULL );
lthread_join ( lt3, NULL );
return NULL;
}
void fun1 ()
{
while ( 1)
{
printf (" in lthread 1 \n");
lthread_yield();
}
}
void fun2 ()
{
while ( 1)
{
printf (" in lthread 2 \n");
lthread_yield();
}
}
void fun3 ()
{
while ( 1)
{
printf (" in lthread 3 \n");
lthread_yield();
}
}
the code is working fine in x86 systems but it is getting segmentation
fault on ARM64 processor with 4 logical cores at ctx_switch () function in
_lthread_resume() which is called from lthread_run() function.
I even tried just creating an lthread in a function called from
rte_eal_remote_launch(), but i am getting the same issue
Can you please help me in debugging the issue, is there any implementation
changes need to be done ?
Thanks and Regards,
Hemasai.
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2020-02-12 18:42 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-11 10:16 [dpdk-dev] segmentation fault in lthread_run() on ARM64 processor - regarding hema sai chandra
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).