Commit d8cd90a8 authored by Adam Wujek's avatar Adam Wujek 💬

userspace/tools: improve opening of shmem in wrs_vlans

Try to open shmem for 10 seconds.
Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
parent 3b0932a5
...@@ -135,6 +135,8 @@ int main(int argc, char *argv[]) ...@@ -135,6 +135,8 @@ int main(int argc, char *argv[])
int c, i, arg; int c, i, arg;
unsigned long conf_pmask = 0; //current '--ep' port mask unsigned long conf_pmask = 0; //current '--ep' port mask
struct rtu_shmem_header *rtu_hdr; struct rtu_shmem_header *rtu_hdr;
int n_wait = 0;
int ret;
prgname = argv[0]; prgname = argv[0];
...@@ -156,13 +158,22 @@ int main(int argc, char *argv[]) ...@@ -156,13 +158,22 @@ int main(int argc, char *argv[])
} }
/* open rtu shm */ /* open rtu shm */
rtu_port_shmem = wrs_shm_get(wrs_shm_rtu, "", WRS_SHM_READ); while ((ret = wrs_shm_get_and_check(wrs_shm_rtu, &rtu_port_shmem)) != 0) {
if (!rtu_port_shmem) { n_wait++;
fprintf(stderr, "%s: Can't join RTU's shmem\n", if (n_wait > 10) {
prgname); if (ret == 1) {
exit(1); fprintf(stderr, "%s: Unable to open RTUd's "
"shmem!\n", prgname);
}
if (ret == 2) {
fprintf(stderr, "%s: Unable to read RTUd's "
"version!\n", prgname);
}
exit(1);
}
sleep(1);
} }
/* FIXME: Wait for rtud to fill shmem */
/* check rtu shm version */ /* check rtu shm version */
if (rtu_port_shmem->version != RTU_SHMEM_VERSION) { if (rtu_port_shmem->version != RTU_SHMEM_VERSION) {
fprintf(stderr, "%s: unknown version %i (known is %i)\n", fprintf(stderr, "%s: unknown version %i (known is %i)\n",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment