aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2007-10-19 02:57:01 -0400
committerTim Shimmin <tes@sgi.com>2007-10-19 03:14:45 -0400
commitc8fcfac5a257f8a04f7ba3d397dedccffef19be2 (patch)
tree38dba94d1b3a81f56ee93dbf35b2cf1408f58620
parent4fa4d23fa20de67df919030c1216295664866ad7 (diff)
[XFS] fixups after behavior removal merge into mainline git
Fixup for lack of dmapi support and no quota module support. SGI-PV: 969985 Signed-off-by: Christoph Hellwig <hch@infradead.org> Signed-off-by: Tim Shimmin <tes@sgi.com>
-rw-r--r--fs/xfs/xfs_dmops.c21
-rw-r--r--fs/xfs/xfs_qmops.c22
2 files changed, 11 insertions, 32 deletions
diff --git a/fs/xfs/xfs_dmops.c b/fs/xfs/xfs_dmops.c
index 6cd5704258a2..a1e55fb9d5dd 100644
--- a/fs/xfs/xfs_dmops.c
+++ b/fs/xfs/xfs_dmops.c
@@ -41,29 +41,16 @@ int
41xfs_dmops_get(struct xfs_mount *mp, struct xfs_mount_args *args) 41xfs_dmops_get(struct xfs_mount *mp, struct xfs_mount_args *args)
42{ 42{
43 if (args->flags & XFSMNT_DMAPI) { 43 if (args->flags & XFSMNT_DMAPI) {
44 struct xfs_dmops *ops; 44 cmn_err(CE_WARN,
45 45 "XFS: dmapi support not available in this kernel.");
46 ops = symbol_get(xfs_dmcore_xfs); 46 return EINVAL;
47 if (!ops) {
48 request_module("xfs_dmapi");
49 ops = symbol_get(xfs_dmcore_xfs);
50 }
51
52 if (!ops) {
53 cmn_err(CE_WARN, "XFS: no dmapi support available.");
54 return EINVAL;
55 }
56 mp->m_dm_ops = ops;
57 } else {
58 mp->m_dm_ops = &xfs_dmcore_stub;
59 } 47 }
60 48
49 mp->m_dm_ops = &xfs_dmcore_stub;
61 return 0; 50 return 0;
62} 51}
63 52
64void 53void
65xfs_dmops_put(struct xfs_mount *mp) 54xfs_dmops_put(struct xfs_mount *mp)
66{ 55{
67 if (mp->m_dm_ops != &xfs_dmcore_stub)
68 symbol_put(xfs_dmcore_xfs);
69} 56}
diff --git a/fs/xfs/xfs_qmops.c b/fs/xfs/xfs_qmops.c
index c266a0184b42..2ec1d8a27352 100644
--- a/fs/xfs/xfs_qmops.c
+++ b/fs/xfs/xfs_qmops.c
@@ -135,19 +135,13 @@ int
135xfs_qmops_get(struct xfs_mount *mp, struct xfs_mount_args *args) 135xfs_qmops_get(struct xfs_mount *mp, struct xfs_mount_args *args)
136{ 136{
137 if (args->flags & (XFSMNT_UQUOTA | XFSMNT_PQUOTA | XFSMNT_GQUOTA)) { 137 if (args->flags & (XFSMNT_UQUOTA | XFSMNT_PQUOTA | XFSMNT_GQUOTA)) {
138 struct xfs_qmops *ops; 138#ifdef CONFIG_XFS_QUOTA
139 139 mp->m_qm_ops = &xfs_qmcore_xfs;
140 ops = symbol_get(xfs_qmcore_xfs); 140#else
141 if (!ops) { 141 cmn_err(CE_WARN,
142 request_module("xfs_quota"); 142 "XFS: qouta support not available in this kernel.");
143 ops = symbol_get(xfs_qmcore_xfs); 143 return EINVAL;
144 } 144#endif
145
146 if (!ops) {
147 cmn_err(CE_WARN, "XFS: no quota support available.");
148 return EINVAL;
149 }
150 mp->m_qm_ops = ops;
151 } else { 145 } else {
152 mp->m_qm_ops = &xfs_qmcore_stub; 146 mp->m_qm_ops = &xfs_qmcore_stub;
153 } 147 }
@@ -158,6 +152,4 @@ xfs_qmops_get(struct xfs_mount *mp, struct xfs_mount_args *args)
158void 152void
159xfs_qmops_put(struct xfs_mount *mp) 153xfs_qmops_put(struct xfs_mount *mp)
160{ 154{
161 if (mp->m_qm_ops != &xfs_qmcore_stub)
162 symbol_put(xfs_qmcore_xfs);
163} 155}