[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] xen 4.3 -> 4.4.0 API change / spurious file handle closure
I have an application which works when compiled against Xen 4.3 but when compiled against Xen 4.4.0 causes a spurious file handle closure. Specifically fd 0 is closed when it has nothing to do with Xen. This happens with a simple call to libxl_ctx_alloc / libxl_ctx_free. This can be seen from the snippet below which simply lists the open fds. In the 'before' call, the 'ls' command (run from system) opens fd 3 for the directory. In the 'after' call, the alloc/free has closed fd 0, so fd 0 is reused for the 'ls' command. This worked fine under Xen 4.3. The addition of #define LIBXL_API_VERSION 0x040200 does not appear to affect things. Any idea what's up here? -- Alex Bligh #include <stdio.h> #include <stdlib.h> #include <libxl.h> /* compile with: * gcc -g -O0 xentest.c -o xentest -lxenlight */ void test () { libxl_ctx *ctx = NULL; if (libxl_ctx_alloc (&ctx, LIBXL_VERSION, XTL_NONE, NULL)) { fprintf (stderr, "libxl_ctx_alloc failed"); exit (1); } libxl_ctx_free (ctx); } int main (int argc, char **argv) { printf ("Before:\n"); system ("ls -la /proc/self/fd"); test (); printf ("\nAfter:\n"); system ("ls -la /proc/self/fd"); exit (0); } Output: root@node-10-157-128-19:~# ./xentest Before: total 0 dr-x------ 2 root root 0 Aug 18 12:14 . dr-xr-xr-x 9 root root 0 Aug 18 12:14 .. lrwx------ 1 root root 64 Aug 18 12:14 0 -> /dev/pts/4 lrwx------ 1 root root 64 Aug 18 12:14 1 -> /dev/pts/4 lrwx------ 1 root root 64 Aug 18 12:14 2 -> /dev/pts/4 lr-x------ 1 root root 64 Aug 18 12:14 3 -> /proc/31986/fd After: total 0 dr-x------ 2 root root 0 Aug 18 12:14 . dr-xr-xr-x 9 root root 0 Aug 18 12:14 .. lr-x------ 1 root root 64 Aug 18 12:14 0 -> /proc/31988/fd lrwx------ 1 root root 64 Aug 18 12:14 1 -> /dev/pts/4 lrwx------ 1 root root 64 Aug 18 12:14 2 -> /dev/pts/4 root@node-10-157-128-19:~# _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |