X-Git-Url: http://git.samba.org/samba.git/?a=blobdiff_plain;f=arch%2Fum%2Fdrivers%2Fubd_user.c;h=48fc7452bc1d11e3f3aad9c40c6983dac8526fc9;hb=4fd3670eb1d3c33e8952cf1e79edbb2d517dcfb5;hp=4707b3f14c2fcf45029a0c4ae65d84bfad5004e8;hpb=9b6a51746ffe8d619f1097675d2dc5e303470024;p=sfrench%2Fcifs-2.6.git diff --git a/arch/um/drivers/ubd_user.c b/arch/um/drivers/ubd_user.c index 4707b3f14c2f..48fc7452bc1d 100644 --- a/arch/um/drivers/ubd_user.c +++ b/arch/um/drivers/ubd_user.c @@ -43,8 +43,13 @@ int start_io_thread(unsigned long sp, int *fd_out) kernel_fd = fds[0]; *fd_out = fds[1]; - pid = clone(io_thread, (void *) sp, CLONE_FILES | CLONE_VM | SIGCHLD, - NULL); + err = os_set_fd_block(*fd_out, 0); + if (err) { + printk("start_io_thread - failed to set nonblocking I/O.\n"); + goto out_close; + } + + pid = clone(io_thread, (void *) sp, CLONE_FILES | CLONE_VM, NULL); if(pid < 0){ err = -errno; printk("start_io_thread - clone failed : errno = %d\n", errno);