All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yong Zhang <yong.zhang0@gmail.com>
To: Maciej Rutecki <maciej.rutecki@gmail.com>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	"Rafael J. Wysocki" <rjw@sisk.pl>,
	clemens@ladisch.de, venkatesh.pallipadi@intel.com,
	gregkh@suse.de
Subject: Re: [2.6.31-git17] WARNING: at kernel/hrtimer.c:648  hres_timers_resume+0x40/0x50()/WARNING: at drivers/base/sys.c:353  __sysdev_resume+0xc3/0xe0()
Date: Sun, 27 Sep 2009 16:27:36 +0800	[thread overview]
Message-ID: <2674af740909270127s464a3cb2xef5e7f4cd61b0eb7@mail.gmail.com> (raw)
In-Reply-To: <8db1092f0909270105x4b49daf8k268e453d2379020c@mail.gmail.com>

On Sun, Sep 27, 2009 at 4:05 PM, Maciej Rutecki
<maciej.rutecki@gmail.com> wrote:
> Kernel: 2.6.31-git17
>
> During suspend to disk & resume I got it in dmesg:
>
> [  587.940010] ------------[ cut here ]------------
> [  587.940010] WARNING: at kernel/hrtimer.c:648 hres_timers_resume+0x40/0x50()
> [  587.940010] Hardware name: HP Compaq nx6310 (EY501ES#AKD)
> [  587.940010] hres_timers_resume() called with IRQs enabled!
> [  587.940010] Modules linked in: btusb i915 drm_kms_helper drm
> i2c_algo_bit i2c_core sco bnep rfcomm l2cap crc16 bluetooth xt_tcpudp
> xt_limit xt_state iptable_filter nf_conntrack_ipv4 nf_conntrack
> nf_defrag_ipv4 ip_tables x_tables aes_i586 aes_generic cbc dm_crypt
> dm_snapshot dm_mirror dm_region_hash dm_log dm_mod hp_wmi fuse sbp2
> loop snd_hda_codec_si3054 snd_hda_codec_analog snd_hda_intel
> snd_hda_codec arc4 snd_pcm_oss snd_mixer_oss snd_pcm ecb snd_seq_dummy
> snd_seq_oss snd_seq_midi iwl3945 iwlcore snd_rawmidi
> snd_seq_midi_event snd_seq firmware_class pcmcia snd_timer
> snd_seq_device mac80211 b44 snd rtc_cmos video led_class ohci1394
> uhci_hcd yenta_socket intel_agp ssb soundcore rsrc_nonstatic backlight
> rtc_core ehci_hcd cfg80211 agpgart rtc_lib pcmcia_core mii
> snd_page_alloc ieee1394 rfkill sg output psmouse fan button ac usbcore
> battery serio_raw evdev
> [  587.940010] Pid: 4761, comm: pm-hibernate Not tainted 2.6.31-git17 #1
> [  587.940010] Call Trace:
> [  587.940010]  [<c015b340>] ? hres_timers_resume+0x40/0x50
> [  587.940010]  [<c015b340>] ? hres_timers_resume+0x40/0x50
> [  587.940010]  [<c013c3a1>] warn_slowpath_common+0x71/0xc0
> [  587.940010]  [<c015b340>] ? hres_timers_resume+0x40/0x50
> [  587.940010]  [<c013c43b>] warn_slowpath_fmt+0x2b/0x30
> [  587.940010]  [<c015b340>] hres_timers_resume+0x40/0x50
> [  587.940010]  [<c015f9b7>] timekeeping_resume+0x1a7/0x1c0
> [  587.940010]  [<c030f3fc>] __sysdev_resume+0x1c/0xe0
> [  587.940010]  [<c030f50f>] sysdev_resume+0x4f/0xc0
> [  587.940010]  [<c0176909>] ? hibernate_nvs_restore+0x19/0x60
> [  587.940010]  [<c0172ac1>] hibernation_snapshot+0x1d1/0x210
> [  587.940010]  [<c0171b54>] ? freeze_processes+0x44/0xa0
> [  587.940010]  [<c0172bef>] hibernate+0xef/0x190
> [  587.940010]  [<c0171590>] ? state_store+0x0/0xc0
> [  587.940010]  [<c017163b>] state_store+0xab/0xc0
> [  587.940010]  [<c0171590>] ? state_store+0x0/0xc0
> [  587.940010]  [<c0285e04>] kobj_attr_store+0x24/0x30
> [  587.940010]  [<c0223d82>] sysfs_write_file+0xa2/0x100
> [  587.940010]  [<c01d880c>] vfs_write+0x9c/0x150
> [  587.940010]  [<c0223ce0>] ? sysfs_write_file+0x0/0x100
> [  587.940010]  [<c01d8982>] sys_write+0x42/0x70
> [  587.940010]  [<c0102f04>] sysenter_do_call+0x12/0x22
> [  587.940010] ---[ end trace d928cdf192623f0f ]---
> [  587.940010] ------------[ cut here ]------------
> [  587.940010] WARNING: at drivers/base/sys.c:353 __sysdev_resume+0xc3/0xe0()
> [  587.940010] Hardware name: HP Compaq nx6310 (EY501ES#AKD)
> [  587.940010] Interrupts enabled after timekeeping_resume+0x0/0x1c0
> [  587.940010] Modules linked in: btusb i915 drm_kms_helper drm
> i2c_algo_bit i2c_core sco bnep rfcomm l2cap crc16 bluetooth xt_tcpudp
> xt_limit xt_state iptable_filter nf_conntrack_ipv4 nf_conntrack
> nf_defrag_ipv4 ip_tables x_tables aes_i586 aes_generic cbc dm_crypt
> dm_snapshot dm_mirror dm_region_hash dm_log dm_mod hp_wmi fuse sbp2
> loop snd_hda_codec_si3054 snd_hda_codec_analog snd_hda_intel
> snd_hda_codec arc4 snd_pcm_oss snd_mixer_oss snd_pcm ecb snd_seq_dummy
> snd_seq_oss snd_seq_midi iwl3945 iwlcore snd_rawmidi
> snd_seq_midi_event snd_seq firmware_class pcmcia snd_timer
> snd_seq_device mac80211 b44 snd rtc_cmos video led_class ohci1394
> uhci_hcd yenta_socket intel_agp ssb soundcore rsrc_nonstatic backlight
> rtc_core ehci_hcd cfg80211 agpgart rtc_lib pcmcia_core mii
> snd_page_alloc ieee1394 rfkill sg output psmouse fan button ac usbcore
> battery serio_raw evdev
> [  587.940010] Pid: 4761, comm: pm-hibernate Tainted: G        W
> 2.6.31-git17 #1
> [  587.940010] Call Trace:
> [  587.940010]  [<c030f4a3>] ? __sysdev_resume+0xc3/0xe0
> [  587.940010]  [<c030f4a3>] ? __sysdev_resume+0xc3/0xe0
> [  587.940010]  [<c013c3a1>] warn_slowpath_common+0x71/0xc0
> [  587.940010]  [<c030f4a3>] ? __sysdev_resume+0xc3/0xe0
> [  587.940010]  [<c013c43b>] warn_slowpath_fmt+0x2b/0x30
> [  587.940010]  [<c030f4a3>] __sysdev_resume+0xc3/0xe0
> [  587.940010]  [<c015f810>] ? timekeeping_resume+0x0/0x1c0
> [  587.940010]  [<c030f50f>] sysdev_resume+0x4f/0xc0
> [  587.940010]  [<c0176909>] ? hibernate_nvs_restore+0x19/0x60
> [  587.940010]  [<c0172ac1>] hibernation_snapshot+0x1d1/0x210
> [  587.940010]  [<c0171b54>] ? freeze_processes+0x44/0xa0
> [  587.940010]  [<c0172bef>] hibernate+0xef/0x190
> [  587.940010]  [<c0171590>] ? state_store+0x0/0xc0
> [  587.940010]  [<c017163b>] state_store+0xab/0xc0
> [  587.940010]  [<c0171590>] ? state_store+0x0/0xc0
> [  587.940010]  [<c0285e04>] kobj_attr_store+0x24/0x30
> [  587.940010]  [<c0223d82>] sysfs_write_file+0xa2/0x100
> [  587.940010]  [<c01d880c>] vfs_write+0x9c/0x150
> [  587.940010]  [<c0223ce0>] ? sysfs_write_file+0x0/0x100
> [  587.940010]  [<c01d8982>] sys_write+0x42/0x70
> [  587.940010]  [<c0102f04>] sysenter_do_call+0x12/0x22
> [  587.940010] ---[ end trace d928cdf192623f10 ]---
>
>
> After resume system seems works OK.
>

Does the below patch work?

diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
index fb0f46f..b39b828 100644
--- a/kernel/time/timekeeping.c
+++ b/kernel/time/timekeeping.c
@@ -573,7 +573,8 @@ static int timekeeping_resume(struct sys_device *dev)

        clocksource_resume();

-       write_seqlock_irqsave(&xtime_lock, flags);
+       local_irq_save(flags);
+       write_seqlock(&xtime_locks);

        if (timespec_compare(&ts, &timekeeping_suspend_time) > 0) {
                ts = timespec_sub(ts, timekeeping_suspend_time);
@@ -586,7 +587,7 @@ static int timekeeping_resume(struct sys_device *dev)
        timekeeper.clock->cycle_last = timekeeper.clock->read(timekeeper.clock);
        timekeeper.ntp_error = 0;
        timekeeping_suspended = 0;
-       write_sequnlock_irqrestore(&xtime_lock, flags);
+       write_sequnlock(&xtime_locks);

        touch_softlockup_watchdog();

@@ -594,6 +595,7 @@ static int timekeeping_resume(struct sys_device *dev)

        /* Resume hrtimers */
        hres_timers_resume();
+       local_irq_restore(flags);

        return 0;
 }


> Dmesg, config, /proc/interrupts:
> http://unixy.pl/maciek/download/kernel/2.6.31-git17/gumis/
>
> Regards
> --
> Maciej Rutecki
> http://www.maciek.unixy.pl
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
>

  reply	other threads:[~2009-09-27  8:27 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-27  8:05 [2.6.31-git17] WARNING: at kernel/hrtimer.c:648 hres_timers_resume+0x40/0x50()/WARNING: at drivers/base/sys.c:353 __sysdev_resume+0xc3/0xe0() Maciej Rutecki
2009-09-27  8:27 ` Yong Zhang [this message]
2009-09-27  8:30   ` Yong Zhang
2009-09-27 10:25     ` Maciej Rutecki
2009-09-27 14:01       ` Yong Zhang
2009-09-27 14:49         ` Yong Zhang
2009-09-27 14:49           ` Yong Zhang
2009-09-27 15:40           ` Rafael J. Wysocki
2009-09-27 16:16           ` Maciej Rutecki
2009-09-27 16:16             ` Maciej Rutecki
2009-09-27 18:17             ` Rafael J. Wysocki
2009-09-28  1:54             ` Yong Zhang
2009-09-28  1:54               ` Yong Zhang
2009-09-28 18:38               ` Maciej Rutecki
2009-09-28 18:38                 ` Maciej Rutecki
2009-09-28 20:08                 ` Maciej Rutecki
2009-09-28 20:08                   ` Maciej Rutecki
2009-09-28 21:13                   ` Rafael J. Wysocki
2009-09-29  5:44                 ` Yong Zhang
2009-09-29  5:44                   ` Yong Zhang
2009-09-27 15:46         ` Rafael J. Wysocki
2009-09-28  1:53           ` Yong Zhang
2009-09-29  7:24   ` Ingo Molnar
2009-09-29  9:31     ` Yong Zhang
2009-09-30  7:50       ` Michal Schmidt
2009-09-30  8:01         ` Yong Zhang
2009-09-30  8:20           ` Michal Schmidt
2009-09-30  8:27             ` Yong Zhang
2009-09-29 14:38     ` Maciej Rutecki

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=2674af740909270127s464a3cb2xef5e7f4cd61b0eb7@mail.gmail.com \
    --to=yong.zhang0@gmail.com \
    --cc=clemens@ladisch.de \
    --cc=gregkh@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maciej.rutecki@gmail.com \
    --cc=rjw@sisk.pl \
    --cc=venkatesh.pallipadi@intel.com \
    /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.