|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Current LibXL Status
On 19/11/15 11:23, Ian Campbell wrote:
> create !
> title it libxl exit() on ENOMEM incompatible with gc'd languages
> thanks
Can this be extended to "should not use exit() in general" ?
andrewcoop@andrewcoop:/local/xen.git/xen$ git grep exit\( --
:/tools/libxl/libxl*
../tools/libxl/libxl.c:1707: _exit(0);
../tools/libxl/libxl.c:1711: _exit(errno);
../tools/libxl/libxl.c:1716: _exit(-1);
../tools/libxl/libxl_aoutils.c:478: if (r) {
LOGE(ERROR,"openpty failed"); _exit(-1); }
../tools/libxl/libxl_aoutils.c:482: if (rc) { LOGE(ERROR,"sendmsg
to parent failed"); _exit(-1); }
../tools/libxl/libxl_aoutils.c:483: _exit(0);
../tools/libxl/libxl_bootloader.c:557: if (r) { LOGE(ERROR,
"login_tty failed"); exit(-1); }
../tools/libxl/libxl_bootloader.c:559: exit(-1);
../tools/libxl/libxl_event.c:1387: exit(-1);
../tools/libxl/libxl_event.h:104: * and call exit(-1).
../tools/libxl/libxl_exec.c:106: _exit(-1);
../tools/libxl/libxl_exec.c:316: exit(255);
../tools/libxl/libxl_exec.c:324: _exit(127);
../tools/libxl/libxl_exec.c:340: _exit(r);
../tools/libxl/libxl_internal.c:28: _exit(-1);
../tools/libxl/libxl_remus_disk_drbd.c:229: _exit(ackwait);
../tools/libxl/libxl_save_callout.c:184: exit(-1);
../tools/libxl/libxl_save_helper.c:64: if (r < 0) { perror("memory
allocation failed during logging"); exit(-1); }
../tools/libxl/libxl_save_helper.c:102: exit(-1);
../tools/libxl/libxl_save_helper.c:122: if (!r) { perror("memory
allocation failed"); exit(-1); }
../tools/libxl/libxl_save_helper.c:189: if (r<0) {
perror("write"); exit(-1); }
../tools/libxl/libxl_save_helper.c:210: if (r<=0) exit(-2);
../tools/libxl/libxl_save_helper.c:230: exit(0);
../tools/libxl/libxlu_cfg_l.c:1763: exit( YY_EXIT_FAILURE );
../tools/libxl/libxlu_disk_l.c:2248: exit( YY_EXIT_FAILURE );
The majority of those are cases are not appropriate uses of exit().
AFAIIR, the *only* valid use of exit() in a library is to clean up in a
child process from a library-initiated fork().
~Andrew
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |