[PATCH 2/6] vfs: Fix fs_context logging when there's no log

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



If an fs_context-based mount is called from mount(2) or some other place
that doesn't set up the logging-through-fd, then under some circumstances
an oops will occur due to the log being unconditionally accessed in
logfc().

Fix this by checking whether there is a log structure before attempting to
access it

Fixes: 06b830edff9f ("vfs: Implement logging through fs_context")
Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
---

 fs/fs_context.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/fs_context.c b/fs/fs_context.c
index 14921b2c1e42..053b8d0f11ea 100644
--- a/fs/fs_context.c
+++ b/fs/fs_context.c
@@ -416,7 +416,7 @@ void logfc(struct fs_context *fc, const char *fmt, ...)
 	if ((unsigned long)p >= (unsigned long)__start_rodata &&
 	    (unsigned long)p <  (unsigned long)__end_rodata)
 		goto const_string;
-	if (within_module_core((unsigned long)p, log->owner))
+	if (log && within_module_core((unsigned long)p, log->owner))
 		goto const_string;
 	q = kstrdup(p, GFP_KERNEL);
 	goto copied_string;




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux