diff -NurpP --minimal /src/MORTON/linux-2.6.16-vs2.1.1-rc14.4/drivers/block/loop.c /src/MORTON/linux-2.6.16-vs2.1.1-rc14.5/drivers/block/loop.c --- /src/MORTON/linux-2.6.16-vs2.1.1-rc14.4/drivers/block/loop.c 2006-03-25 02:30:37 +0100 +++ /src/MORTON/linux-2.6.16-vs2.1.1-rc14.5/drivers/block/loop.c 2006-03-25 02:53:26 +0100 @@ -74,6 +74,7 @@ #include #include #include +#include #include @@ -743,6 +744,7 @@ static int loop_set_fd(struct loop_devic struct file *file, *f; struct inode *inode; struct address_space *mapping; + struct vx_info_save vxis; unsigned lo_blocksize; int lo_flags = 0; int error; @@ -840,7 +842,9 @@ static int loop_set_fd(struct loop_devic set_blocksize(bdev, lo_blocksize); + __enter_vx_admin(&vxis); pid = kernel_thread(loop_thread, lo, CLONE_KERNEL); + __leave_vx_admin(&vxis); if (pid < 0) goto out_err; wait_for_completion(&lo->lo_done);