1. 14 Dec, 2007 32 commits
  2. 26 Nov, 2007 8 commits
    • Greg Kroah-Hartman's avatar
      Linux 2.6.23.9 · 8996d0af
      Greg Kroah-Hartman authored
      8996d0af
    • Dan Williams's avatar
      ipw2200: batch non-user-requested scan result notifications · 6bb559a3
      Dan Williams authored
      patch 0b531676 in mainline.
      
      ipw2200 makes extensive use of background scanning when unassociated or
      down.  Unfortunately, the firmware sends scan completed events many
      times per second, which the driver pushes directly up to userspace.
      This needlessly wakes up processes listening for wireless events many
      times per second.  Batch together scan completed events for
      non-user-requested scans and send them up to userspace every 4 seconds.
      Scan completed events resulting from an SIOCSIWSCAN call are pushed up
      without delay.
      Signed-off-by: default avatarDan Williams <dcbw@redhat.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      Cc: Tobias Powalowski <t.powa@gmx.de>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      6bb559a3
    • Ortwin Glück's avatar
      USB: Nikon D40X unusual_devs entry · 590ca6cb
      Ortwin Glück authored
      patch d466a919 in mainline.
      
      Not surprisingly the Nikon D40X DSC needs the same quirks as the D40,
      but it has a separate ID.
      See http://bugs.gentoo.org/show_bug.cgi?id=191431
      
      From: Ortwin Glück <odi@odi.ch>
      Cc: Tobias Powalowski <t.powa@gmx.de>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      590ca6cb
    • Phil Dibowitz's avatar
      USB: unusual_devs modification for Nikon D200 · 1ed8fc8e
      Phil Dibowitz authored
      patch 16eb345f in mainline.
      
      Upgrade the unusual_devs.h file to support the Nikon D200
      Signed-off-by: default avatarMike Pagano <mpagano-kernel@mpagano.com>
      Signed-off-by: default avatarPhil Dibowitz <phil@ipom.com>
      Cc: Tobias Powalowski <t.powa@gmx.de>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      1ed8fc8e
    • Ingo Molnar's avatar
      softlockup: use cpu_clock() instead of sched_clock() · fd5ec14e
      Ingo Molnar authored
      patch a3b13c23 in mainline.
      
      sched_clock() is not a reliable time-source, use cpu_clock() instead.
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      fd5ec14e
    • Ingo Molnar's avatar
      softlockup watchdog fixes and cleanups · 00aceb50
      Ingo Molnar authored
      This is a merge of commits a5f2ce3c and
      43581a10 in mainline to fix a warning in
      the 2.6.23.3 kernel release.
      
      softlockup watchdog: style cleanups
      
      kernel/softirq.c grew a few style uncleanlinesses in the past few
      months, clean that up. No functional changes:
      
      text    data     bss     dec     hex filename
      1126      76       4    1206     4b6 softlockup.o.before
      1129      76       4    1209     4b9 softlockup.o.after
      
      ( the 3 bytes .text increase is due to the "<1>" appended to one of
      the printk messages. )
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      
      
      softlockup: improve debug output
      
      Improve the debuggability of kernel lockups by enhancing the debug
      output of the softlockup detector: print the task that causes the lockup
      and try to print a more intelligent backtrace.
      
      The old format was:
      
      BUG: soft lockup detected on CPU#1!
      [<c0105e4a>] show_trace_log_lvl+0x19/0x2e
      [<c0105f43>] show_trace+0x12/0x14
      [<c0105f59>] dump_stack+0x14/0x16
      [<c015f6bc>] softlockup_tick+0xbe/0xd0
      [<c013457d>] run_local_timers+0x12/0x14
      [<c01346b8>] update_process_times+0x3e/0x63
      [<c0145fb8>] tick_sched_timer+0x7c/0xc0
      [<c0140a75>] hrtimer_interrupt+0x135/0x1ba
      [<c011bde7>] smp_apic_timer_interrupt+0x6e/0x80
      [<c0105aa3>] apic_timer_interrupt+0x33/0x38
      [<c0104f8a>] syscall_call+0x7/0xb
      =======================
      
      The new format is:
      
      BUG: soft lockup detected on CPU#1! [prctl:2363]
      
      Pid: 2363, comm:                prctl
      EIP: 0060:[<c013915f>] CPU: 1
      EIP is at sys_prctl+0x24/0x18c
      EFLAGS: 00000213    Not tainted  (2.6.22-cfs-v20 #26)
      EAX: 00000001 EBX: 000003e7 ECX: 00000001 EDX: f6df0000
      ESI: 000003e7 EDI: 000003e7 EBP: f6df0fb0 DS: 007b ES: 007b FS: 00d8
      CR0: 8005003b CR2: 4d8c3340 CR3: 3731d000 CR4: 000006d0
      [<c0105e4a>] show_trace_log_lvl+0x19/0x2e
      [<c0105f43>] show_trace+0x12/0x14
      [<c01040be>] show_regs+0x1ab/0x1b3
      [<c015f807>] softlockup_tick+0xef/0x108
      [<c013457d>] run_local_timers+0x12/0x14
      [<c01346b8>] update_process_times+0x3e/0x63
      [<c0145fcc>] tick_sched_timer+0x7c/0xc0
      [<c0140a89>] hrtimer_interrupt+0x135/0x1ba
      [<c011bde7>] smp_apic_timer_interrupt+0x6e/0x80
      [<c0105aa3>] apic_timer_interrupt+0x33/0x38
      [<c0104f8a>] syscall_call+0x7/0xb
      =======================
      
      Note that in the old format we only knew that some system call locked
      up, we didnt know _which_. With the new format we know that it's at a
      specific place in sys_prctl(). [which was where i created an artificial
      kernel lockup to test the new format.]
      
      This is also useful if the lockup happens in user-space - the user-space
      EIP (and other registers) will be printed too. (such a lockup would
      either suggest that the task was running at SCHED_FIFO:99 and looping
      for more than 10 seconds, or that the softlockup detector has a
      false-positive.)
      
      The task name is printed too first, just in case we dont manage to print
      a useful backtrace.
      
      [satyam@infradead.org: fix warning]
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarSatyam Sharma <satyam@infradead.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      
      00aceb50
    • David P. Reed's avatar
      x86: fix freeze in x86_64 RTC update code in time_64.c · 653e60e2
      David P. Reed authored
      patch c399da0d in mainline.
      
      x86: fix freeze in x86_64 RTC update code in time_64.c
      
      Fix hard freeze on x86_64 when the ntpd service calls
      update_persistent_clock()
      
      A repeatable but randomly timed freeze has been happening in Fedora 6
      and 7 for the last year, whenever I run the ntpd service on my AMD64x2
      HP Pavilion dv9000z laptop.  This freeze is due to the use of
      spin_lock(&rtc_lock) under the assumption (per a bad comment) that
      set_rtc_mmss is called only with interrupts disabled.  The call from
      ntp.c to update_persistent_clock is made with interrupts enabled.
      
      [ tglx@linutronix.de: ported to 2.6.23.stable ]
      Signed-off-by: default avatarDavid P. Reed <dpreed@reed.com>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      653e60e2
    • David P. Reed's avatar
      ntp: fix typo that makes sync_cmos_clock erratic · 2d429c89
      David P. Reed authored
      patch fa6a1a55 in mainline.
      
      ntp: fix typo that makes sync_cmos_clock erratic
      
      Fix a typo in ntp.c that has caused updating of the persistent (RTC)
      clock when synced to NTP to behave erratically.
      
      When debugging a freeze that arises on my AMD64 machines when I
      run the ntpd service, I added a number of printk's to monitor the
      sync_cmos_clock procedure.  I discovered that it was not syncing to
      cmos RTC every 11 minutes as documented, but instead would keep trying
      every second for hours at a time.  The reason turned out to be a typo
      in sync_cmos_clock, where it attempts to ensure that
      update_persistent_clock is called very close to 500 msec. after a 1
      second boundary (required by the PC RTC's spec). That typo referred to
      "xtime" in one spot, rather than "now", which is derived from "xtime"
      but not equal to it.  This makes the test erratic, creating a
      "coin-flip" that decides when update_persistent_clock is called - when
      it is called, which is rarely, it may be at any time during the one
      second period, rather than close to 500 msec, so the value written is
      needlessly incorrect, too.
      Signed-off-by: default avatarDavid P. Reed <dpreed@reed.com>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      2d429c89