mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Jan Kara <jack@suse.cz>
To: Tejun Heo <tj@kernel.org>
Cc: axboe@kernel.dk, akpm@linux-foundation.org, jack@suse.cz,
	david@fromorbit.com, linux-kernel@vger.kernel.org
Subject: Re: [PATCHSET v2] workqueue, writeback: better worker information in task dumps
Date: Wed, 3 Apr 2013 21:47:33 +0200	[thread overview]
Message-ID: <20130403194733.GA21037@quack.suse.cz> (raw)
In-Reply-To: <1365017072-32213-1-git-send-email-tj@kernel.org>

On Wed 03-04-13 12:24:29, Tejun Heo wrote:
> Hello,
> 
> Andrew, this one depends on the debug info unification patch and
> should be routed through -mm too.  The writeback folks seem to be okay
> with the proposed changes although nobody explicitly acked it yet
> (please do so).  Please route these together with the previous set
> through -mm.  Thanks.
  Ah, I didn't really feel confident enough about the kthread magic to give
my Reviewed-by but feel free to add

  Acked-by: Jan Kara <jack@suse.cz>

to these patches.

								Honza
> 
> This is v2.  Changes from v1 are,
> 
> * Rebased on top of the v2 of "arch: unify task dump debug info"
>   patchset.
> 
> One of the problems that arise when converting dedicated custom
> threadpool to workqueue is that the shared worker pool used by
> workqueue anonimizes each worker making it more difficult to identify
> what the worker was doing on which target from the output of sysrq-t
> or debug dump from oops, BUG() and friends.
> 
> For example, after writeback is converted to use workqueue instead of
> priviate thread pool, there's no easy to tell which backing device a
> writeback work item was working on at the time of task dump, which,
> according to our writeback brethren, is important in tracking down
> issues with a lot of mounted file systems on a lot of different
> devices.
> 
> This patchset implements a way for a work function to mark its
> execution instance so that task dump of the worker task includes
> information to indicate what the work item was doing.
> 
> An example WARN dump would look like the following.
> 
>  WARNING: at /work/os/work/fs/fs-writeback.c:1015 bdi_writeback_workfn+0x2b4/0x3c0()
>  Modules linked in:
>  CPU: 0 Pid: 28 Comm: kworker/u18:0 Not tainted 3.9.0-rc1-work+ #24
>  Hardware name: empty empty/S3992, BIOS 080011  10/26/2007
>  Workqueue: writeback bdi_writeback_workfn (flush-8:16)
>   ffffffff820a3a98 ffff88015b927cb8 ffffffff81c61855 ffff88015b927cf8
>   ffffffff8108f500 0000000000000000 ffff88007a171948 ffff88007a1716b0
>   ffff88015b49df00 ffff88015b8d3940 0000000000000000 ffff88015b927d08
>  Call Trace:
>   [<ffffffff81c61855>] dump_stack+0x19/0x1b
>   [<ffffffff8108f500>] warn_slowpath_common+0x70/0xa0
>   ...
> 
> This patchset contains the following three patches.
> 
>  0001-kthread-implement-probe_kthread_data.patch
>  0002-workqueue-include-workqueue-info-when-printing-debug.patch
>  0003-writeback-set-worker-desc-to-identify-writeback-work.patch
> 
> 0001 adds a speculative accessor for kthread_data.
> 
> 0002 implements worker description.
> 
> 0003 updates writeback to set its flusher name as worker description.
> 
> This patchset is on top of
> 
>   akpm as of 2013/04/03
> + [PATCHSET v2] arch: unify task dump debug info
> 
> and available in the following git branch.
> 
>  git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git review-wb-better-dbg
> 
> diffstat follows.  Thanks.
> 
>  fs/fs-writeback.c           |    1 
>  include/linux/kthread.h     |    1 
>  include/linux/workqueue.h   |    5 ++
>  kernel/kthread.c            |   19 ++++++++++
>  kernel/printk.c             |    2 +
>  kernel/sched/core.c         |    1 
>  kernel/workqueue.c          |   79 ++++++++++++++++++++++++++++++++++++++++++++
>  kernel/workqueue_internal.h |   12 ++++++
>  8 files changed, 119 insertions(+), 1 deletion(-)
> 
> --
> tejun
-- 
Jan Kara <jack@suse.cz>
SUSE Labs, CR

      parent reply	other threads:[~2013-04-03 19:47 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-03 19:24 Tejun Heo
2013-04-03 19:24 ` [PATCH 1/3] kthread: implement probe_kthread_data() Tejun Heo
2013-04-03 19:24 ` [PATCH 2/3] workqueue: include workqueue info when printing debug dump of a worker task Tejun Heo
2013-04-03 19:24 ` [PATCH 3/3] writeback: set worker desc to identify writeback workers in task dumps Tejun Heo
2013-04-03 19:47 ` Jan Kara [this message]

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=20130403194733.GA21037@quack.suse.cz \
    --to=jack@suse.cz \
    --cc=akpm@linux-foundation.org \
    --cc=axboe@kernel.dk \
    --cc=david@fromorbit.com \
    --cc=linux-kernel@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome