diff -NurpP --minimal linux-2.6.14.2-vs2.1.0-rc8/fs/quota.c linux-2.6.14.2-vs2.1.0-rc8.1/fs/quota.c --- linux-2.6.14.2-vs2.1.0-rc8/fs/quota.c 2005-11-20 22:04:16 +0100 +++ linux-2.6.14.2-vs2.1.0-rc8.1/fs/quota.c 2005-11-22 01:28:58 +0100 @@ -398,13 +398,16 @@ asmlinkage long sys_quotactl(unsigned in putname(tmp); if (IS_ERR(bdev)) return PTR_ERR(bdev); -#ifdef CONFIG_BLK_DEV_VROOT - if (bdev && bdev->bd_inode && vroot_get_real_bdev && +#if defined(CONFIG_BLK_DEV_VROOT) || defined(CONFIG_BLK_DEV_VROOT_MODULE) + if (bdev && bdev->bd_inode && imajor(bdev->bd_inode) == VROOT_MAJOR) { struct block_device *bdnew = (void *)-EINVAL; if (vroot_get_real_bdev) bdnew = vroot_get_real_bdev(bdev); + else + vxdprintk(VXD_CBIT(misc, 0), + "vroot_get_real_bdev not set"); bdput(bdev); if (IS_ERR(bdnew))