1. 25 Jul, 2007 3 commits
    • john stultz's avatar
      Cache xtime every call to update_wall_time · 17c38b74
      john stultz authored
      This avoids xtime lag seen with dynticks, because while 'xtime' itself
      is still not updated often, we keep a 'xtime_cache' variable around that
      contains the approximate real-time that _is_ updated each time we do a
      'update_wall_time()', and is thus never off by more than one tick.
      
      IOW, this restores the original semantics for 'xtime' users, as long as
      you use the proper abstraction functions (ie 'current_kernel_time()' or
      'get_seconds()' depending on whether you want a timespec or just the
      seconds field).
      
      [ Updated Patch.  As penance for my sins I've also yanked another #ifdef
        that was added to avoid the xtime lag w/ hrtimers.  ]
      Signed-off-by: default avatarJohn Stultz <johnstul@us.ibm.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      17c38b74
    • john stultz's avatar
      Cleanup non-arch xtime uses, use get_seconds() or current_kernel_time(). · 2c6b47de
      john stultz authored
      This avoids use of the kernel-internal "xtime" variable directly outside
      of the actual time-related functions.  Instead, use the helper functions
      that we already have available to us.
      
      This doesn't actually change any behaviour, but this will allow us to
      fix the fact that "xtime" isn't updated very often with CONFIG_NO_HZ
      (because much of the realtime information is maintained as separate
      offsets to 'xtime'), which has caused interfaces that use xtime directly
      to get a time that is out of sync with the real-time clock by up to a
      third of a second or so.
      Signed-off-by: default avatarJohn Stultz <johnstul@us.ibm.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      2c6b47de
    • Linus Torvalds's avatar
      Merge branch 'for_paulus' of master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc · 0de085bb
      Linus Torvalds authored
      * 'for_paulus' of master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc: (25 commits)
        [POWERPC] 85xx: Added needed MPC85xx PCI device IDs
        [POWERPC] Add Freescale PCI VENDOR ID and 8641 device IDs
        [POWERPC] 85xxCDS: MPC8548 DTS cleanup.
        [POWERPC] 85xxCDS: Misc 8548 PCI Corrections.
        [POWERPC] 85xxCDS: Delay 8259 cascade hookup.
        [POWERPC] 85xxCDS: Make sure restart resets the PCI bus.
        [POWERPC] 85xxCDS: Allow 8259 cascade to share an MPIC interrupt line.
        [POWERPC] FSL: Add support for PCI-X controllers
        [POWERPC] Make sure virtual P2P bridge registers are setup on PCIe PHB
        [POWERPC] Provide ability to setup P2P bridge registers from struct resource
        [POWERPC] Add basic PCI/PCI Express support for 8544DS board
        [POWERPC] Make endianess of cfg_addr for indirect pci ops runtime
        [POWERPC] Removed setup_indirect_pci_nomap
        [POWERPC] 85xx: Add quirk to ignore bogus FPGA on CDS
        [POWERPC] 85xx: Added 8568 PCIe support
        [POWERPC] Fixup resources on pci_bus for PCIe PHB when no device is connected
        [POWERPC] Add basic PCI node for mpc8568mds board
        [POWERPC] Use Freescale pci/pcie common code for 85xx boards
        [POWERPC] Update PCI nodes in the 83xx/85xx boards device tree
        [POWERPC] Add 8548 CDS PCI express controller node and PCI-X device node
        ...
      0de085bb
  2. 24 Jul, 2007 37 commits