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]
Message-ID: <20141006092529.GB7526@quack.suse.cz>
Date:	Mon, 6 Oct 2014 11:25:29 +0200
From:	Jan Kara <jack@...e.cz>
To:	Uwe Kleine-König 
	<u.kleine-koenig@...gutronix.de>
Cc:	Jan Kara <jack@...e.cz>, Theodore Ts'o <tytso@....edu>,
	kernel@...gutronix.de, linux-fsdevel@...r.kernel.org,
	linux-mm@...ck.org, linux-ext4@...r.kernel.org
Subject: Re: [PATCH] vfs: fix compilation for no-MMU configurations

On Sun 05-10-14 10:58:36, Uwe Kleine-König wrote:
> Commit ac4dd23b76ce introduced a new function pagecache_isize_extended.
> In <linux/mm.h> it was declared static inline and empty for no-MMU and
> defined unconditionally in mm/truncate.c which results a compiler
> error:
> 
> 	  CC      mm/truncate.o
> 	mm/truncate.c:751:6: error: redefinition of 'pagecache_isize_extended'
> 	 void pagecache_isize_extended(struct inode *inode, loff_t from, loff_t to)
> 	      ^
> 	In file included from mm/truncate.c:13:0:
> 	include/linux/mm.h:1161:91: note: previous definition of 'pagecache_isize_extended' was here
> 	 static inline void pagecache_isize_extended(struct inode *inode, loff_t from,
> 												   ^
> 	scripts/Makefile.build:257: recipe for target 'mm/truncate.o' failed
> 
> (tested with ARCH=arm efm32_defconfig).
> 
> Fixes: ac4dd23b76ce ("vfs: fix data corruption when blocksize < pagesize for mmaped data")
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@...gutronix.de>
  Yeah, sorry for the breakage. It should be already fixed in Ted's tree.
I've actually chosen to just remove the inline definition. It is true that
currently the function doesn't need to do anything for systems not
supporting mmap but that may change in future and the functions is
reasonably cheap anyway...

								Honza
> ---
> Hello,
> 
> the bad commit sits in
> 
> git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git#dev
> 
> and is included in next.
> 
> Best regards
> Uwe
> 
>  mm/truncate.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/mm/truncate.c b/mm/truncate.c
> index 261eaf6e5a19..0d9c4ebd5ecc 100644
> --- a/mm/truncate.c
> +++ b/mm/truncate.c
> @@ -729,6 +729,7 @@ void truncate_setsize(struct inode *inode, loff_t newsize)
>  }
>  EXPORT_SYMBOL(truncate_setsize);
>  
> +#ifdef CONFIG_MMU
>  /**
>   * pagecache_isize_extended - update pagecache after extension of i_size
>   * @inode:	inode for which i_size was extended
> @@ -780,6 +781,7 @@ void pagecache_isize_extended(struct inode *inode, loff_t from, loff_t to)
>  	page_cache_release(page);
>  }
>  EXPORT_SYMBOL(pagecache_isize_extended);
> +#endif
>  
>  /**
>   * truncate_pagecache_range - unmap and remove pagecache that is hole-punched
> -- 
> 2.1.0
> 
-- 
Jan Kara <jack@...e.cz>
SUSE Labs, CR
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ