lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Tue, 27 Apr 2010 22:50:46 +0200 (CEST)
From:	Thomas Gleixner <tglx@...utronix.de>
To:	John Kacur <jkacur@...il.com>
cc:	Nick Piggin <npiggin@...e.de>, jstultz@...il.com,
	LKML <linux-kernel@...r.kernel.org>,
	linux-rt-users <linux-rt-users@...r.kernel.org>
Subject: Re: 2.6.33.3-rt16 compile failure in fs/ecryptfs/inode.o

On Tue, 27 Apr 2010, John Kacur wrote:
> make O=/bld/2.6.33.3-rt16/ fs/ecryptfs/inode.o
>   Using /home/jkacur/jk-2.6 as source for kernel
>   GEN     /bld/2.6.33.3-rt16/Makefile
>   CHK     include/linux/version.h
>   CHK     include/generated/utsrelease.h
>   CALL    /home/jkacur/jk-2.6/scripts/checksyscalls.sh
>   CC [M]  fs/ecryptfs/inode.o
> /home/jkacur/jk-2.6/fs/ecryptfs/inode.c: In function 
> ‘ecryptfs_lookup_and_interpose_lower’:
> /home/jkacur/jk-2.6/fs/ecryptfs/inode.c:266: error: wrong type argument to 
> unary exclamation mark
> make[2]: *** [fs/ecryptfs/inode.o] Error 1
> make[1]: *** [fs/ecryptfs/inode.o] Error 2
> make: *** [sub-make] Error 2
> 
> The above comes from: 
> commit 5c0eb5cec064ce26ffcd0cdd684c9b6dd7c9074e
> Author: Nick Piggin <npiggin@...e.de>
> Date:   Fri Jan 29 15:38:21 2010 -0800

Half the truth :) It got not fixed up in a later patch which made
d_count atomic_t again. Fix below.

Thanks,

	tglx
---
diff --git a/fs/ecryptfs/inode.c b/fs/ecryptfs/inode.c
index 2fb8fd1..23dc2af 100644
--- a/fs/ecryptfs/inode.c
+++ b/fs/ecryptfs/inode.c
@@ -263,7 +263,7 @@ int ecryptfs_lookup_and_interpose_lower(struct dentry *ecryptfs_dentry,
 				   ecryptfs_dentry->d_parent));
 	lower_inode = lower_dentry->d_inode;
 	fsstack_copy_attr_atime(ecryptfs_dir_inode, lower_dir_dentry->d_inode);
-	BUG_ON(!lower_dentry->d_count);
+	BUG_ON(!atomic_read(&lower_dentry->d_count));
 	ecryptfs_set_dentry_private(ecryptfs_dentry,
 				    kmem_cache_alloc(ecryptfs_dentry_info_cache,
 						     GFP_KERNEL));

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ