X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Flvfs%2Flvfs_linux.c;h=63d29926846d7f3893a9bce34f00d99c1dbee54b;hb=c65b502fe9feda61c7ad7137f5022c654c6ba501;hp=eac9f9cba35f0c5dce5d31c38ad5fd19263fb395;hpb=f40891396a460b6b73d2ff9ea55629e4065ef349;p=fs%2Flustre-release.git diff --git a/lustre/lvfs/lvfs_linux.c b/lustre/lvfs/lvfs_linux.c index eac9f9c..63d2992 100644 --- a/lustre/lvfs/lvfs_linux.c +++ b/lustre/lvfs/lvfs_linux.c @@ -28,6 +28,8 @@ /* * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. * Use is subject to license terms. + * + * Copyright (c) 2011, 2012, Whamcloud, Inc. */ /* * This file is part of Lustre, http://www.lustre.org/ @@ -487,14 +489,9 @@ out: EXPORT_SYMBOL(simple_truncate); #ifdef LUSTRE_KERNEL_VERSION -#ifndef HAVE_CLEAR_RDONLY_ON_PUT -#error rdonly patchset must be updated [cfs bz11248] -#endif -void dev_set_rdonly(lvfs_sbdev_type dev); -int dev_check_rdonly(lvfs_sbdev_type dev); - -void __lvfs_set_rdonly(lvfs_sbdev_type dev, lvfs_sbdev_type jdev) +int __lvfs_set_rdonly(lvfs_sbdev_type dev, lvfs_sbdev_type jdev) { +#ifdef HAVE_DEV_SET_RDONLY if (jdev && (jdev != dev)) { CDEBUG(D_IOCTL | D_HA, "set journal dev %lx rdonly\n", (long)jdev); @@ -502,14 +499,24 @@ void __lvfs_set_rdonly(lvfs_sbdev_type dev, lvfs_sbdev_type jdev) } CDEBUG(D_IOCTL | D_HA, "set dev %lx rdonly\n", (long)dev); dev_set_rdonly(dev); + + return 0; +#else + CERROR("DEV %lx CANNOT BE SET READONLY\n", (long)dev); + + return -EOPNOTSUPP; +#endif } +EXPORT_SYMBOL(__lvfs_set_rdonly); int lvfs_check_rdonly(lvfs_sbdev_type dev) { +#ifdef HAVE_DEV_SET_RDONLY return dev_check_rdonly(dev); +#else + return 0; +#endif } - -EXPORT_SYMBOL(__lvfs_set_rdonly); EXPORT_SYMBOL(lvfs_check_rdonly); int lvfs_check_io_health(struct obd_device *obd, struct file *file)