Hi I used launchpad to start a hello_client and hello_server.I closed hello_server and expected the call from hello_client could cause an ipc error ,because the target is not exist .
I modify the l4_ipc_call function in file ipc-l42-gcc-nopic.h
L4_INLINE l4_msgtag_t l4_ipc_call(l4_cap_idx_t dest, l4_utcb_t *u, l4_msgtag_t snd_tag, l4_timeout_t timeout) L4_NOTHROW { l4_umword_t dummy1, dummy2, dummy3; l4_msgtag_t rtag;
(void)u; __asm__ __volatile__ (L4_ENTER_KERNEL : "=d" (dummy3), "=D" (dummy1), "=c" (timeout), "=S" (dummy2), "=a" (rtag.raw) : "S" (0), "c" (timeout), "d" (dest | L4_SYSF_CALL), "a" (snd_tag.raw) : "memory", "cc" L4S_PIC_CLOBBER ); // add by wyq int ipc_error = l4_ipc_error(rtag,u);
if(ipc_error==L4_IPC_ENOT_EXISTENT ||ipc_error==L4_IPC_RECANCELED) { outstring("Ipc not exist or canceled "); } // end
return rtag; }
outstring is defined in <l4/sys/kdebug.h>,i am sure it can be used here.
I can not get the output and i don't know why.
Thanks & Regards