linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] lib/halfmd4: make build optional
@ 2014-11-06 21:27 Aristeu Rozanski
  2014-11-06 21:32 ` Joe Perches
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Aristeu Rozanski @ 2014-11-06 21:27 UTC (permalink / raw)
  To: linux-kernel
  Cc: Aristeu Rozanski, Jan Kara, Andrew Morton, Andreas Dilger,
	Paul Gortmaker, Josh Triplett

From: Aristeu Rozanski <arozansk@redhat.com>

halfmd4 currently is built unconditionally:
	text    data     bss     dec     hex filename
	 801     176       8     985     3d9 lib/halfmd4.o
	 801     176       8     985     3d9 (TOTALS)

and it's used by ext3 and ext4. This patch is useful for situations
in which memory footprint is a concern and those filesystems aren't
used.

Cc: Jan Kara <jack@suse.cz>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Andreas Dilger <adilger.kernel@dilger.ca>
Cc: Paul Gortmaker <paul.gortmaker@windriver.com>
Cc: Josh Triplett <josh@joshtriplett.org>
Signed-off-by: Aristeu Rozanski <arozansk@redhat.com>
---
 fs/ext3/Kconfig | 1 +
 fs/ext4/Kconfig | 1 +
 lib/Kconfig     | 7 +++++++
 lib/Makefile    | 3 ++-
 4 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/fs/ext3/Kconfig b/fs/ext3/Kconfig
index e8c6ba0..a6ab4e8 100644
--- a/fs/ext3/Kconfig
+++ b/fs/ext3/Kconfig
@@ -1,6 +1,7 @@
 config EXT3_FS
 	tristate "Ext3 journalling file system support"
 	select JBD
+	select HALF_MD4
 	help
 	  This is the journalling version of the Second extended file system
 	  (often called ext3), the de facto standard Linux file system
diff --git a/fs/ext4/Kconfig b/fs/ext4/Kconfig
index efea5d5..cbb56ee 100644
--- a/fs/ext4/Kconfig
+++ b/fs/ext4/Kconfig
@@ -4,6 +4,7 @@ config EXT4_FS
 	select CRC16
 	select CRYPTO
 	select CRYPTO_CRC32C
+	select HALF_MD4
 	help
 	  This is the next generation of the ext3 filesystem.
 
diff --git a/lib/Kconfig b/lib/Kconfig
index 675920b..108196c 100644
--- a/lib/Kconfig
+++ b/lib/Kconfig
@@ -180,6 +180,13 @@ config CRC8
 	  when they need to do cyclic redundancy check according CRC8
 	  algorithm. Module will be called crc8.
 
+config HALF_MD4
+	bool "Half MD4 transform"
+	default y
+	help
+	  This option enables a reduced (32 bit output) version of MD4
+	  transform.
+
 config AUDIT_GENERIC
 	bool
 	depends on AUDIT && !AUDIT_ARCH
diff --git a/lib/Makefile b/lib/Makefile
index 9c12cbc..53fd120 100644
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -22,7 +22,7 @@ lib-$(CONFIG_SMP) += cpumask.o
 lib-y	+= kobject.o klist.o
 obj-y	+= lockref.o
 
-obj-y += bcd.o div64.o sort.o parser.o halfmd4.o debug_locks.o random32.o \
+obj-y += bcd.o div64.o sort.o parser.o debug_locks.o random32.o \
 	 bust_spinlocks.o hexdump.o kasprintf.o bitmap.o scatterlist.o \
 	 gcd.o lcm.o list_sort.o uuid.o iovec.o clz_ctz.o \
 	 bsearch.o find_last_bit.o find_next_bit.o llist.o memweight.o kfifo.o \
@@ -74,6 +74,7 @@ obj-$(CONFIG_CRC7)	+= crc7.o
 obj-$(CONFIG_LIBCRC32C)	+= libcrc32c.o
 obj-$(CONFIG_CRC8)	+= crc8.o
 obj-$(CONFIG_GENERIC_ALLOCATOR) += genalloc.o
+obj-$(CONFIG_HALF_MD4) += halfmd4.o
 
 obj-$(CONFIG_ZLIB_INFLATE) += zlib_inflate/
 obj-$(CONFIG_ZLIB_DEFLATE) += zlib_deflate/
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] lib/halfmd4: make build optional
  2014-11-06 21:27 [PATCH] lib/halfmd4: make build optional Aristeu Rozanski
@ 2014-11-06 21:32 ` Joe Perches
  2014-11-06 21:48   ` Aristeu Rozanski
  2014-11-06 21:55 ` Kyle McMartin
  2014-11-06 21:59 ` josh
  2 siblings, 1 reply; 5+ messages in thread
From: Joe Perches @ 2014-11-06 21:32 UTC (permalink / raw)
  To: Aristeu Rozanski
  Cc: linux-kernel, Aristeu Rozanski, Jan Kara, Andrew Morton,
	Andreas Dilger, Paul Gortmaker, Josh Triplett

On Thu, 2014-11-06 at 16:27 -0500, Aristeu Rozanski wrote:
> From: Aristeu Rozanski <arozansk@redhat.com>
> 
> halfmd4 currently is built unconditionally:
> 	text    data     bss     dec     hex filename
> 	 801     176       8     985     3d9 lib/halfmd4.o
> 	 801     176       8     985     3d9 (TOTALS)
> 
> and it's used by ext3 and ext4. This patch is useful for situations
> in which memory footprint is a concern and those filesystems aren't
> used.
[]
> diff --git a/lib/Kconfig b/lib/Kconfig
[]
> +config HALF_MD4
> +	bool "Half MD4 transform"
> +	default y

why not default n ? (and in the other patch)


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] lib/halfmd4: make build optional
  2014-11-06 21:32 ` Joe Perches
@ 2014-11-06 21:48   ` Aristeu Rozanski
  0 siblings, 0 replies; 5+ messages in thread
From: Aristeu Rozanski @ 2014-11-06 21:48 UTC (permalink / raw)
  To: Joe Perches
  Cc: linux-kernel, Jan Kara, Andrew Morton, Andreas Dilger,
	Paul Gortmaker, Josh Triplett

On Thu, Nov 06, 2014 at 01:32:03PM -0800, Joe Perches wrote:
> why not default n ? (and in the other patch)

As I see, stuff in lib/ can be available by default unless you
specifically ask to disable it. It doesn't really matter in these
patches since most of the time the options will be selected indirectly
anyway.

-- 
Aristeu


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] lib/halfmd4: make build optional
  2014-11-06 21:27 [PATCH] lib/halfmd4: make build optional Aristeu Rozanski
  2014-11-06 21:32 ` Joe Perches
@ 2014-11-06 21:55 ` Kyle McMartin
  2014-11-06 21:59 ` josh
  2 siblings, 0 replies; 5+ messages in thread
From: Kyle McMartin @ 2014-11-06 21:55 UTC (permalink / raw)
  To: Aristeu Rozanski
  Cc: linux-kernel, Aristeu Rozanski, Jan Kara, Andrew Morton,
	Andreas Dilger, Paul Gortmaker, Josh Triplett

On Thu, Nov 06, 2014 at 04:27:33PM -0500, Aristeu Rozanski wrote:
> +config HALF_MD4
> +	bool "Half MD4 transform"
> +	default y
> +	help
> +	  This option enables a reduced (32 bit output) version of MD4
> +	  transform.
> +

i'd suggest just def_bool n, and not have this prompt the user at all...
it only provides a single export_symbol, so a user doesn't really need
to care.

regards, Kyle

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] lib/halfmd4: make build optional
  2014-11-06 21:27 [PATCH] lib/halfmd4: make build optional Aristeu Rozanski
  2014-11-06 21:32 ` Joe Perches
  2014-11-06 21:55 ` Kyle McMartin
@ 2014-11-06 21:59 ` josh
  2 siblings, 0 replies; 5+ messages in thread
From: josh @ 2014-11-06 21:59 UTC (permalink / raw)
  To: Aristeu Rozanski
  Cc: linux-kernel, Aristeu Rozanski, Jan Kara, Andrew Morton,
	Andreas Dilger, Paul Gortmaker

On Thu, Nov 06, 2014 at 04:27:33PM -0500, Aristeu Rozanski wrote:
> From: Aristeu Rozanski <arozansk@redhat.com>
> 
> halfmd4 currently is built unconditionally:
> 	text    data     bss     dec     hex filename
> 	 801     176       8     985     3d9 lib/halfmd4.o
> 	 801     176       8     985     3d9 (TOTALS)
> 
> and it's used by ext3 and ext4. This patch is useful for situations
> in which memory footprint is a concern and those filesystems aren't
> used.
> 
> Cc: Jan Kara <jack@suse.cz>
> Cc: Andrew Morton <akpm@linux-foundation.org>
> Cc: Andreas Dilger <adilger.kernel@dilger.ca>
> Cc: Paul Gortmaker <paul.gortmaker@windriver.com>
> Cc: Josh Triplett <josh@joshtriplett.org>
> Signed-off-by: Aristeu Rozanski <arozansk@redhat.com>

I already have a patch for this in the tiny tree, branch
tiny/no-halfmd4, and it uses an internal hidden Kconfig symbol.

- Josh Triplett

>  fs/ext3/Kconfig | 1 +
>  fs/ext4/Kconfig | 1 +
>  lib/Kconfig     | 7 +++++++
>  lib/Makefile    | 3 ++-
>  4 files changed, 11 insertions(+), 1 deletion(-)
> 
> diff --git a/fs/ext3/Kconfig b/fs/ext3/Kconfig
> index e8c6ba0..a6ab4e8 100644
> --- a/fs/ext3/Kconfig
> +++ b/fs/ext3/Kconfig
> @@ -1,6 +1,7 @@
>  config EXT3_FS
>  	tristate "Ext3 journalling file system support"
>  	select JBD
> +	select HALF_MD4
>  	help
>  	  This is the journalling version of the Second extended file system
>  	  (often called ext3), the de facto standard Linux file system
> diff --git a/fs/ext4/Kconfig b/fs/ext4/Kconfig
> index efea5d5..cbb56ee 100644
> --- a/fs/ext4/Kconfig
> +++ b/fs/ext4/Kconfig
> @@ -4,6 +4,7 @@ config EXT4_FS
>  	select CRC16
>  	select CRYPTO
>  	select CRYPTO_CRC32C
> +	select HALF_MD4
>  	help
>  	  This is the next generation of the ext3 filesystem.
>  
> diff --git a/lib/Kconfig b/lib/Kconfig
> index 675920b..108196c 100644
> --- a/lib/Kconfig
> +++ b/lib/Kconfig
> @@ -180,6 +180,13 @@ config CRC8
>  	  when they need to do cyclic redundancy check according CRC8
>  	  algorithm. Module will be called crc8.
>  
> +config HALF_MD4
> +	bool "Half MD4 transform"
> +	default y
> +	help
> +	  This option enables a reduced (32 bit output) version of MD4
> +	  transform.
> +
>  config AUDIT_GENERIC
>  	bool
>  	depends on AUDIT && !AUDIT_ARCH
> diff --git a/lib/Makefile b/lib/Makefile
> index 9c12cbc..53fd120 100644
> --- a/lib/Makefile
> +++ b/lib/Makefile
> @@ -22,7 +22,7 @@ lib-$(CONFIG_SMP) += cpumask.o
>  lib-y	+= kobject.o klist.o
>  obj-y	+= lockref.o
>  
> -obj-y += bcd.o div64.o sort.o parser.o halfmd4.o debug_locks.o random32.o \
> +obj-y += bcd.o div64.o sort.o parser.o debug_locks.o random32.o \
>  	 bust_spinlocks.o hexdump.o kasprintf.o bitmap.o scatterlist.o \
>  	 gcd.o lcm.o list_sort.o uuid.o iovec.o clz_ctz.o \
>  	 bsearch.o find_last_bit.o find_next_bit.o llist.o memweight.o kfifo.o \
> @@ -74,6 +74,7 @@ obj-$(CONFIG_CRC7)	+= crc7.o
>  obj-$(CONFIG_LIBCRC32C)	+= libcrc32c.o
>  obj-$(CONFIG_CRC8)	+= crc8.o
>  obj-$(CONFIG_GENERIC_ALLOCATOR) += genalloc.o
> +obj-$(CONFIG_HALF_MD4) += halfmd4.o
>  
>  obj-$(CONFIG_ZLIB_INFLATE) += zlib_inflate/
>  obj-$(CONFIG_ZLIB_DEFLATE) += zlib_deflate/
> -- 
> 1.8.3.1
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-11-06 21:59 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-11-06 21:27 [PATCH] lib/halfmd4: make build optional Aristeu Rozanski
2014-11-06 21:32 ` Joe Perches
2014-11-06 21:48   ` Aristeu Rozanski
2014-11-06 21:55 ` Kyle McMartin
2014-11-06 21:59 ` josh

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).