All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sam Ravnborg <sam@ravnborg.org>
To: Babu Moger <babu.moger@oracle.com>
Cc: peterz@infradead.org, mingo@redhat.com,
	akpm@linux-foundation.org, keescook@chromium.org,
	dan.j.williams@intel.com, aryabinin@virtuozzo.com, tj@kernel.org,
	linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org
Subject: Re: [PATCH v2 1/2] config: Add new CONFIG_PROVE_LOCKING_SMALL
Date: Tue, 27 Sep 2016 04:46:25 +0000	[thread overview]
Message-ID: <20160927044625.GA13264@ravnborg.org> (raw)
In-Reply-To: <1474929098-68914-2-git-send-email-babu.moger@oracle.com>

Hi Babu.

On Mon, Sep 26, 2016 at 03:31:37PM -0700, Babu Moger wrote:
> Adding the new config parameter CONFIG_PROVE_LOCKING_SMALL for sparc.
> 
> This feature limits the space used for "Lock debugging: prove locking
> correctness" by about 4MB. The current sparc systms have the limitation of
> 32MB size for kernel size including .text, .data and .bss sections. With
> PROVE_LOCKING feature, the kernel size could grow beyond this limit and
> causing system bootup issues. With this option, kernel limits the size
> of the entries of lock_chains, stack_trace etc. so that kernel fits in
> required size limit.  This is only visible for sparc.
> 
> Signed-off-by: Babu Moger <babu.moger@oracle.com>
> ---
>  lib/Kconfig.debug |   17 +++++++++++++++++
>  1 files changed, 17 insertions(+), 0 deletions(-)
> 
> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
> index b9cfdbf..c79de25 100644
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -1035,6 +1035,7 @@ config PROVE_LOCKING
>  	select DEBUG_MUTEXES
>  	select DEBUG_LOCK_ALLOC
>  	select TRACE_IRQFLAGS
> +	select PROVE_LOCKING_SMALL if SPARC
>  	default n
>  	help
>  	 This feature enables the kernel to prove that all locking
> @@ -1070,6 +1071,22 @@ config PROVE_LOCKING
>  
>  	 For more details, see Documentation/locking/lockdep-design.txt.
>  
> +config PROVE_LOCKING_SMALL
> +	bool "Limit the space for prove locking correctness"
> +	depends on PROVE_LOCKING && SPARC
> +	help
> +	 This feature limits the space used for "Lock debugging: prove
> +	 locking correctness" by about 4MB. In sparc system, all the
> +	 kernel's code, data, and bss, must have locked translations in
> +	 the TLB so that it does not hit TLB misses. The current sparc
> +	 chips have 8 TLB entries available that may be locked down, and
> +	 with a 4mb page size, this gives a maximum of 32mb of memory for
> +	 the kernel size. With PROVE_LOCKING feature, the kernel size could
> +	 grow beyond this limit and causing system bootup issues. With
> +	 this option, kernel limits the size of the entries of lock_chains,
> +	 stack_trace etc. to debug PROVE_LOCKING so that kernel size fits
> +	 in 32MB. This is only visible for SPARC.

Since this is only relevant for sparc, and for sparc this is "select"ed,
then there is limited/no gain having this as a visible menu config option.

How about adding just a simple non-visible config symbol:

config PROVE_LOCKING_SMALL
	bool

The nice help text can be added to the H file, and the select
can be move to the sparc/Kconfig file where it really belongs.

	Sam

WARNING: multiple messages have this Message-ID (diff)
From: Sam Ravnborg <sam@ravnborg.org>
To: Babu Moger <babu.moger@oracle.com>
Cc: peterz@infradead.org, mingo@redhat.com,
	akpm@linux-foundation.org, keescook@chromium.org,
	dan.j.williams@intel.com, aryabinin@virtuozzo.com, tj@kernel.org,
	linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org
Subject: Re: [PATCH v2 1/2] config: Add new CONFIG_PROVE_LOCKING_SMALL
Date: Tue, 27 Sep 2016 06:46:25 +0200	[thread overview]
Message-ID: <20160927044625.GA13264@ravnborg.org> (raw)
In-Reply-To: <1474929098-68914-2-git-send-email-babu.moger@oracle.com>

Hi Babu.

On Mon, Sep 26, 2016 at 03:31:37PM -0700, Babu Moger wrote:
> Adding the new config parameter CONFIG_PROVE_LOCKING_SMALL for sparc.
> 
> This feature limits the space used for "Lock debugging: prove locking
> correctness" by about 4MB. The current sparc systms have the limitation of
> 32MB size for kernel size including .text, .data and .bss sections. With
> PROVE_LOCKING feature, the kernel size could grow beyond this limit and
> causing system bootup issues. With this option, kernel limits the size
> of the entries of lock_chains, stack_trace etc. so that kernel fits in
> required size limit.  This is only visible for sparc.
> 
> Signed-off-by: Babu Moger <babu.moger@oracle.com>
> ---
>  lib/Kconfig.debug |   17 +++++++++++++++++
>  1 files changed, 17 insertions(+), 0 deletions(-)
> 
> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
> index b9cfdbf..c79de25 100644
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -1035,6 +1035,7 @@ config PROVE_LOCKING
>  	select DEBUG_MUTEXES
>  	select DEBUG_LOCK_ALLOC
>  	select TRACE_IRQFLAGS
> +	select PROVE_LOCKING_SMALL if SPARC
>  	default n
>  	help
>  	 This feature enables the kernel to prove that all locking
> @@ -1070,6 +1071,22 @@ config PROVE_LOCKING
>  
>  	 For more details, see Documentation/locking/lockdep-design.txt.
>  
> +config PROVE_LOCKING_SMALL
> +	bool "Limit the space for prove locking correctness"
> +	depends on PROVE_LOCKING && SPARC
> +	help
> +	 This feature limits the space used for "Lock debugging: prove
> +	 locking correctness" by about 4MB. In sparc system, all the
> +	 kernel's code, data, and bss, must have locked translations in
> +	 the TLB so that it does not hit TLB misses. The current sparc
> +	 chips have 8 TLB entries available that may be locked down, and
> +	 with a 4mb page size, this gives a maximum of 32mb of memory for
> +	 the kernel size. With PROVE_LOCKING feature, the kernel size could
> +	 grow beyond this limit and causing system bootup issues. With
> +	 this option, kernel limits the size of the entries of lock_chains,
> +	 stack_trace etc. to debug PROVE_LOCKING so that kernel size fits
> +	 in 32MB. This is only visible for SPARC.

Since this is only relevant for sparc, and for sparc this is "select"ed,
then there is limited/no gain having this as a visible menu config option.

How about adding just a simple non-visible config symbol:

config PROVE_LOCKING_SMALL
	bool

The nice help text can be added to the H file, and the select
can be move to the sparc/Kconfig file where it really belongs.

	Sam

  reply	other threads:[~2016-09-27  4:46 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-26 22:31 [PATCH v2 0/2] Ajust lockdep static allocations for sparc Babu Moger
2016-09-26 22:31 ` Babu Moger
2016-09-26 22:31 ` [PATCH v2 1/2] config: Add new CONFIG_PROVE_LOCKING_SMALL Babu Moger
2016-09-26 22:31   ` Babu Moger
2016-09-27  4:46   ` Sam Ravnborg [this message]
2016-09-27  4:46     ` Sam Ravnborg
2016-09-27 11:40     ` Peter Zijlstra
2016-09-27 11:40       ` Peter Zijlstra
2016-09-27 14:51       ` Babu Moger
2016-09-27 14:51         ` Babu Moger
2016-09-27 15:43         ` Sam Ravnborg
2016-09-27 15:43           ` Sam Ravnborg
2016-09-27 16:26           ` Babu Moger
2016-09-27 16:26             ` Babu Moger
2016-09-26 22:31 ` [PATCH v2 2/2] lockdep: Keep the static allocations small for PROVE_LOCKING_SMALL Babu Moger
2016-09-26 22:31   ` Babu Moger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160927044625.GA13264@ravnborg.org \
    --to=sam@ravnborg.org \
    --cc=akpm@linux-foundation.org \
    --cc=aryabinin@virtuozzo.com \
    --cc=babu.moger@oracle.com \
    --cc=dan.j.williams@intel.com \
    --cc=keescook@chromium.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=sparclinux@vger.kernel.org \
    --cc=tj@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.