diff --git a/lustre/utils/lconf b/lustre/utils/lconf
index ac5dc22a83b9f9ec01e49f54b775bb5a4fcab318..858450b70d03d7332ad8aae6e0dec499290f3468 100755
--- a/lustre/utils/lconf
+++ b/lustre/utils/lconf
@@ -1602,6 +1602,12 @@ class MDSDEV(Module):
         if self.fstype == 'smfs':
             self.add_lustre_module('lvfs', 'fsfilt_%s' % (self.backfstype))
 
+	for options in string.split(self.mountfsoptions, ','):
+	    if options == 'snap':
+		if not self.fstype == 'smfs':
+		    panic("mountoptions with snap, but fstype is not smfs\n")
+		self.add_lustre_module('lvfs', 'fsfilt_snap_%s' % (self.fstype))
+		self.add_lustre_module('lvfs', 'fsfilt_snap_%s' % (self.backfstype))
     def load_module(self):
         if self.active:
             Module.load_module(self)
@@ -1914,6 +1920,13 @@ class OSD(Module):
         if self.fstype == 'smfs':
             self.add_lustre_module('lvfs' , 'fsfilt_%s' % (self.backfstype))
 
+	for options in self.mountfsoptions:
+	    if options == 'snap':
+		if not self.fstype == 'smfs':
+		    panic("mountoptions with snap, but fstype is not smfs\n")
+		self.add_lustre_module('lvfs', 'fsfilt_snap_%s' % (self.fstype))
+		self.add_lustre_module('lvfs', 'fsfilt_snap_%s' % (self.backfstype))
+
         self.add_lustre_module(self.osdtype, self.osdtype)
 
     def load_module(self):