Skip to contentSkip to conversation

Undefined symbol sync_dquots_dev() in quota.c

PATCH In review Stephane Ouellette 3 participants 5 messages Apr 23, 2003 VFS

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Undefined symbol sync_dquots_dev() in quota.c

Folks,

the following patch fixes a compile error under 2.4.21-rc1-ac1.
sync_dev_dquots() is undefined if CONFIG_QUOTA is not set.

Stephane Ouellette.

fs/quota.c +4 -0
@@ -197,7 +197,9 @@
 		case Q_SYNC:
 			if (sb)
 				return sb->s_qcop->quota_sync(sb, type);
+#ifdef CONFIG_QUOTA
 			sync_dquots_dev(NODEV, type);
+#endif
 			return 0;
 
 		case Q_XQUOTAON:
@@ -525,7 +527,9 @@
 		case Q_COMP_SYNC:
 			if (sb)
 				return sb->s_qcop->quota_sync(sb, type);
+#ifdef CONFIG_QUOTA
 			sync_dquots_dev(NODEV, type);
+#endif
 			return 0;
 #ifdef CONFIG_QIFACE_V1
 		case Q_V1_RSQUASH: {
#1 lore raw
Quoted 4 lines · Stephane Ouellette

Folks,

the following patch fixes a compile error under 2.4.21-rc1-ac1.
sync_dev_dquots() is undefined if CONFIG_QUOTA is not set.

The right fix would be to make sure a no-op version of sync_dev_dquots exists for that case.

Jeff

#2 lore raw
Quoted 10 lines · Jeff Garzik
Quoted 6 lines · Stephane Ouellette

Folks,

the following patch fixes a compile error under 2.4.21-rc1-ac1.
sync_dev_dquots() is undefined if CONFIG_QUOTA is not set.

Quoted 6 lines

The right fix would be to make sure a no-op version of sync_dev_dquots exists for that case.

Jeff

Jeff,

the file fs/dquot.c is compiled only if CONFIG_QUOTA is set. That
would imply modifying the Makefile and #ifdeffing most of the code inside dquot.c.

Stephane.

Quoted 2 lines
#3 lore raw
Quoted 19 lines · Stephane Ouellette
Quoted 10 lines · Jeff Garzik
Quoted 6 lines · Stephane Ouellette

Folks,

the following patch fixes a compile error under 2.4.21-rc1-ac1. sync_dev_dquots() is undefined if CONFIG_QUOTA is not set.

Quoted 6 lines

The right fix would be to make sure a no-op version of sync_dev_dquots exists for that case.

Jeff

Quoted 5 lines

Jeff,

the file fs/dquot.c is compiled only if CONFIG_QUOTA is set. That
would imply modifying the Makefile and #ifdeffing most of the code inside dquot.c.

So? ;-)

Your patch modified fs/quota.c, which is compiled when CONFIG_QUOTACTL is set, which in turn is set for CONFIG_QUOTA || CONFIG_XFS_QUOTA.

If you are adding CONFIG_QUOTA ifdefs to fs/quota.c, it is clear a non-ifdef solution can be achieved.

Jeff

#4 lore raw

Jeff Garzik <[email protected]> writes:

: On Wed, Apr 23, 2003 at 11:59:16AM -0400, Stephane Ouellette wrote:

: > the file fs/dquot.c is compiled only if CONFIG_QUOTA is set. That
: > would imply modifying the Makefile and #ifdeffing most of the code : > inside dquot.c.
:
: So? ;-)
:
: Your patch modified fs/quota.c, which is compiled when CONFIG_QUOTACTL is : set, which in turn is set for CONFIG_QUOTA || CONFIG_XFS_QUOTA. :
: If you are adding CONFIG_QUOTA ifdefs to fs/quota.c, it is clear a : non-ifdef solution can be achieved.

yep. attached is the patch i made when i compiled the kernel, but forgot to send on:

linux/quotaops.h renamed from linux/quotaops.h.orig +1 -0
@@ -185,6 +185,7 @@
  */
 #define sb_dquot_ops				(NULL)
 #define sb_quotactl_ops				(NULL)
+#define sync_dquots_dev(dev,type)		(NULL)
 #define DQUOT_INIT(inode)			do { } while(0)
 #define DQUOT_DROP(inode)			do { } while(0)
 #define DQUOT_ALLOC_INODE(inode)		(0)