From: Robin Holt <holt@sgi.com>
To: Corrado Zoccolo <czoccolo@gmail.com>
Cc: Linux-Kernel <linux-kernel@vger.kernel.org>,
Arjan van de Ven <arjan@linux.intel.com>
Subject: Re: What is swapper, and why it is causing so many wakeups?
Date: Thu, 25 Jun 2009 06:20:13 -0500 [thread overview]
Message-ID: <20090625112013.GB6878@sgi.com> (raw)
In-Reply-To: <4e5e476b0906240716q6638a0eevad790c439f5bdae6@mail.gmail.com>
Search include/linux/init_task.h for swapper. It defines the task
that each processor executes when their runqueue is empty. All you
are seeing is task-wise idle cpu that is servicing interrupts, etc and
completing work.
Good Luck,
Robin
On Wed, Jun 24, 2009 at 04:16:19PM +0200, Corrado Zoccolo wrote:
> Hi,
> my /proc/timer_stats shows a lot of activity due to 'swapper'.
> It is currently the main cause of wakeups on my netbook, an acer
> aspire one with Atom N270 cpu.
> The funny thing is that I have no swap partition, so I don't think
> swapper should have so much work to do.
> Is there a way to reduce its activity?
>
> Timer Stats Version: v0.2
> Sample period: 298.025 s
> 23207, 0 swapper hrtimer_start_range_ns (tick_sched_timer)
> 23806, 0 swapper hrtimer_start_range_ns (tick_sched_timer)
> 651, 2615 lxterminal hrtimer_start_range_ns (hrtimer_wakeup)
> 3275D, 1520 S50cpufreq cpufreq_governor_dbs (delayed_work_timer_fn)
> 3373D, 1520 S50cpufreq cpufreq_governor_dbs (delayed_work_timer_fn)
> 60, 0 swapper page_writeback_init (wb_timer_fn)
> 60, 2582 xscreensaver hrtimer_start_range_ns (hrtimer_wakeup)
> 21, 2139 X hrtimer_start (it_real_fn)
> 1684, 0 swapper hrtimer_start (tick_sched_timer)
> 279, 2139 X queue_delayed_work (delayed_work_timer_fn)
> 297, 2585 lxpanel hrtimer_start_range_ns (hrtimer_wakeup)
> 298, 2272 ifplugd hrtimer_start_range_ns (hrtimer_wakeup)
> 149, 2156 ifplugd hrtimer_start_range_ns (hrtimer_wakeup)
> 37, 2139 X hrtimer_start_range_ns (hrtimer_wakeup)
> 30, 2221 ip ath5k_start (ath5k_calibrate)
> 1040, 0 swapper hrtimer_start (tick_sched_timer)
> 38, 1 swapper neigh_table_init_no_netlink (neigh_periodic_timer)
> 50, 2156 ifplugd __netdev_watchdog_up (dev_watchdog)
> 75, 1 swapper neigh_table_init_no_netlink (neigh_periodic_timer)
> 284D, 1 swapper schedule_delayed_work_on (delayed_work_timer_fn)
> 273D, 1 swapper schedule_delayed_work_on (delayed_work_timer_fn)
> 149, 2545 net_applet hrtimer_start_range_ns (hrtimer_wakeup)
> 149, 1 swapper schedule_delayed_work_on (delayed_work_timer_fn)
> 149, 1 swapper schedule_delayed_work_on (delayed_work_timer_fn)
> 60, 1 init hrtimer_start_range_ns (hrtimer_wakeup)
> 24, 1321 btrfs-transacti schedule_timeout (process_timeout)
> 137, 1 swapper enqueue_task_rt (sched_rt_period_timer)
> 74, 2594 menu-cached hrtimer_start_range_ns (hrtimer_wakeup)
> 48, 2269 wpa_supplicant hrtimer_start_range_ns (hrtimer_wakeup)
> 1296, 484 phy0 queue_delayed_work (delayed_work_timer_fn)
> 30, 1 swapper sta_info_start (sta_info_cleanup)
> 2, 0 swapper neigh_add_timer (neigh_timer_handler)
> 3, 1276 mount start_this_handle (commit_timeout)
> 1, 2998 iwgetid do_acct_process (acct_timeout)
> 5, 1 swapper queue_delayed_work (delayed_work_timer_fn)
> 2, 479 async/1 scsi_request_fn (blk_rq_timed_out_timer)
> 5, 1708 crond hrtimer_start_range_ns (hrtimer_wakeup)
> 10, 1564 syslogd hrtimer_start (it_real_fn)
> 9, 1756 hald hrtimer_start_range_ns (hrtimer_wakeup)
> 1, 1 swapper inet_init (inet_frag_secret_rebuild)
> 1, 1 swapper flow_cache_init (flow_cache_new_hashrnd)
> 1, 1 swapper ipv6_frag_init (inet_frag_secret_rebuild)
> 3, 0 swapper addrconf_verify (addrconf_verify)
> 1, 1 swapper queue_delayed_work (delayed_work_timer_fn)
> 1, 3017 modprobe do_acct_process (acct_timeout)
> 1, 252 ksuspend_usbd schedule_timeout (process_timeout)
> 1, 252 ksuspend_usbd schedule_timeout (process_timeout)
> 1, 252 ksuspend_usbd schedule_timeout (process_timeout)
> 8, 258 khubd schedule_timeout (process_timeout)
> 110, 0 swapper ehci_work (ehci_watchdog)
> 2, 258 khubd schedule_timeout (process_timeout)
> 2, 258 khubd schedule_timeout (process_timeout)
> 1, 3044 usb-stor-scan schedule_timeout (process_timeout)
> 1, 3058 scsi_scan_2 scsi_request_fn (blk_rq_timed_out_timer)
> 4, 3043 usb-storage schedule_timeout (process_timeout)
> 1, 3043 usb-storage schedule_timeout (process_timeout)
> 1, 3043 usb-storage schedule_timeout (process_timeout)
> 1, 258 khubd schedule_timeout (process_timeout)
> 1, 3070 usb-stor-scan schedule_timeout (process_timeout)
> 1, 3086 async/0 schedule_timeout (process_timeout)
> 1, 3084 scsi_scan_3 scsi_request_fn (blk_rq_timed_out_timer)
> 1, 3042 pam_console_app do_acct_process (acct_timeout)
> 2, 1 swapper inet_initpeers (peer_check_expire)
> 1, 3144 iwgetid do_acct_process (acct_timeout)
> 1, 1312 btrfs-endio-met schedule_timeout (process_timeout)
> 1, 3151 modprobe do_acct_process (acct_timeout)
> 9, 2139 X vt_ioctl (kd_nosound)
> 1, 3176 modprobe do_acct_process (acct_timeout)
> 10, 3235 iwlist hrtimer_start_range_ns (hrtimer_wakeup)
> 8, 2615 lxterminal hrtimer_start_range_ns (hrtimer_wakeup)
> 1, 3003 less do_acct_process (acct_timeout)
> 61320 total events, 205.994 events/sec
>
> --
> __________________________________________________________________________
>
> dott. Corrado Zoccolo mailto:czoccolo@gmail.com
> PhD - Department of Computer Science - University of Pisa, Italy
> --------------------------------------------------------------------------
prev parent reply other threads:[~2009-06-25 11:20 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-24 14:16 What is swapper, and why it is causing so many wakeups? Corrado Zoccolo
2009-06-25 11:20 ` Robin Holt [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=20090625112013.GB6878@sgi.com \
--to=holt@sgi.com \
--cc=arjan@linux.intel.com \
--cc=czoccolo@gmail.com \
--cc=linux-kernel@vger.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.