From: Maarten Lankhorst <m.b.lankhorst@gmail.com>
To: Mandeep Singh Baines <msb@chromium.org>
Cc: linux-kernel@vger.kernel.org, linux-nfs@vger.kernel.org,
Tejun Heo <tj@kernel.org>, Jeff Layton <jlayton@redhat.com>,
"Myklebust, Trond" <Trond.Myklebust@netapp.com>,
Oleg Nesterov <oleg@redhat.com>,
Ming Lei <ming.lei@canonical.com>,
"Rafael J. Wysocki" <rjw@sisk.pl>,
Andrew Morton <akpm@linux-foundation.org>,
Ingo Molnar <mingo@redhat.com>
Subject: Re: [PATCH] lockdep: make lock held while freezing check optional
Date: Thu, 07 Mar 2013 13:03:06 +0100 [thread overview]
Message-ID: <513881FA.5090601@gmail.com> (raw)
In-Reply-To: <1362529819-19076-1-git-send-email-msb@chromium.org>
Op 06-03-13 01:30, Mandeep Singh Baines schreef:
> This check is turning up a lot of code paths which need to be
> fixed so while those paths are fixed, let's make this check
> optional so that folks can still use lockdep.
I think the config option should be inverted, and make it more clear that
you're not just not reporting some real bugs by disabling a check that should be on by default.
> CC: Tejun Heo <tj@kernel.org>
> CC: Jeff Layton <jlayton@redhat.com>
> CC: "Myklebust, Trond" <Trond.Myklebust@netapp.com>
> CC: Oleg Nesterov <oleg@redhat.com>
> CC: Ming Lei <ming.lei@canonical.com>
> CC: "Rafael J. Wysocki" <rjw@sisk.pl>
> CC: Andrew Morton <akpm@linux-foundation.org>
> CC: Ingo Molnar <mingo@redhat.com>
> ---
> include/linux/freezer.h | 2 ++
> lib/Kconfig.debug | 12 ++++++++++++
> 2 files changed, 14 insertions(+)
>
> diff --git a/include/linux/freezer.h b/include/linux/freezer.h
> index 043a5cf..03bdc54 100644
> --- a/include/linux/freezer.h
> +++ b/include/linux/freezer.h
> @@ -49,8 +49,10 @@ extern void thaw_kernel_threads(void);
>
> static inline bool try_to_freeze(void)
> {
> +#ifdef CONFIG_DEBUG_LOCK_HELD_FREEZING
> if (!(current->flags & PF_NOFREEZE))
> debug_check_no_locks_held();
> +#endif
> might_sleep();
> if (likely(!freezing(current)))
> return false;
> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
> index 28be08c..bddda5f 100644
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -547,6 +547,18 @@ config DEBUG_MUTEXES
> This feature allows mutex semantics violations to be detected and
> reported.
>
> +config DEBUG_LOCK_HELD_FREEZING
> + bool "Lock debugging: detect when locks are held during freeze"
> + depends on DEBUG_KERNEL && TRACE_IRQFLAGS_SUPPORT && STACKTRACE_SUPPORT && LOCKDEP_SUPPORT
> + select DEBUG_SPINLOCK
> + select DEBUG_MUTEXES
> + select LOCKDEP
> + help
> + This feature will check whether any lock is incorrectly held
> + while freezing. If a task freezes with a lock held it will
> + block any other task that is waiting on that lock from freezing.
> + In the case of cgroup_freezer, this can cause a deadlock.
> +
> config DEBUG_LOCK_ALLOC
> bool "Lock debugging: detect incorrect freeing of live locks"
> depends on DEBUG_KERNEL && TRACE_IRQFLAGS_SUPPORT && STACKTRACE_SUPPORT && LOCKDEP_SUPPORT
next prev parent reply other threads:[~2013-03-07 12:03 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-04 13:57 LOCKDEP: 3.9-rc1: mount.nfs/4272 still has locks held! Ming Lei
2013-03-04 14:14 ` Myklebust, Trond
2013-03-04 14:23 ` Jeff Layton
2013-03-04 19:55 ` Mandeep Singh Baines
2013-03-04 20:53 ` Oleg Nesterov
2013-03-04 22:08 ` Myklebust, Trond
2013-03-05 13:23 ` Jeff Layton
2013-03-05 17:46 ` Tejun Heo
2013-03-05 17:49 ` Tejun Heo
2013-03-05 19:03 ` Jeff Layton
2013-03-05 19:09 ` Tejun Heo
2013-03-05 23:39 ` Jeff Layton
2013-03-05 23:47 ` Tejun Heo
2013-03-06 18:16 ` Oleg Nesterov
2013-03-06 18:53 ` Tejun Heo
2013-03-06 21:00 ` Linus Torvalds
2013-03-06 21:24 ` Tejun Heo
2013-03-06 21:31 ` Linus Torvalds
2013-03-06 21:36 ` Tejun Heo
2013-03-06 21:40 ` Tejun Heo
2013-03-13 15:17 ` Jeff Layton
2013-03-31 0:07 ` Paul Walmsley
2013-03-07 11:41 ` Jeff Layton
2013-03-07 15:25 ` Tejun Heo
2013-03-07 15:55 ` Linus Torvalds
2013-03-07 15:59 ` Myklebust, Trond
2013-03-07 16:25 ` Linus Torvalds
2013-03-07 16:45 ` Myklebust, Trond
2013-03-07 17:03 ` Linus Torvalds
2013-03-07 17:16 ` Myklebust, Trond
2013-03-07 21:43 ` Jeff Layton
2013-03-08 14:01 ` Ingo Molnar
2013-03-07 20:55 ` Rafael J. Wysocki
2013-03-07 16:00 ` Tejun Heo
2013-03-06 18:17 ` Oleg Nesterov
2013-03-06 18:40 ` Jeff Layton
2013-03-06 18:45 ` Tejun Heo
2013-03-06 1:10 ` Myklebust, Trond
2013-03-06 1:14 ` Tejun Heo
2013-03-06 1:28 ` Tejun Heo
2013-03-06 12:00 ` Jeff Layton
2013-03-05 23:11 ` J. Bruce Fields
2013-03-06 0:02 ` Rafael J. Wysocki
2013-03-06 0:30 ` [PATCH] lockdep: make lock held while freezing check optional Mandeep Singh Baines
2013-03-07 12:03 ` Maarten Lankhorst [this message]
2013-03-06 0:59 ` LOCKDEP: 3.9-rc1: mount.nfs/4272 still has locks held! Mandeep Singh Baines
2013-03-06 1:05 ` J. Bruce Fields
2013-03-06 1:16 ` Tejun Heo
2013-03-06 3:11 ` Mandeep Singh Baines
2013-03-06 9:09 ` Ingo Molnar
2013-03-06 12:06 ` Jeff Layton
2013-03-06 15:59 ` Mandeep Singh Baines
2013-03-06 18:23 ` Jeff Layton
2013-03-06 18:37 ` Myklebust, Trond
2013-03-06 20:15 ` Mandeep Singh Baines
2013-03-04 14:40 ` Ming Lei
2013-03-04 15:04 ` Jeff Layton
2013-03-04 15:33 ` Ming Lei
2013-03-04 15:53 ` Myklebust, Trond
2013-03-04 20:09 ` Mandeep Singh Baines
2013-03-04 20:10 ` Mandeep Singh Baines
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=513881FA.5090601@gmail.com \
--to=m.b.lankhorst@gmail.com \
--cc=Trond.Myklebust@netapp.com \
--cc=akpm@linux-foundation.org \
--cc=jlayton@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nfs@vger.kernel.org \
--cc=ming.lei@canonical.com \
--cc=mingo@redhat.com \
--cc=msb@chromium.org \
--cc=oleg@redhat.com \
--cc=rjw@sisk.pl \
--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.