linux/arch/powerpc/include/asm
Paul Mackerras 8fd63a9ea7 powerpc: Rework VDSO gettimeofday to prevent time going backwards
Currently it is possible for userspace to see the result of
gettimeofday() going backwards by 1 microsecond, assuming that
userspace is using the gettimeofday() in the VDSO.  The VDSO
gettimeofday() algorithm computes the time in "xsecs", which are
units of 2^-20 seconds, or approximately 0.954 microseconds,
using the algorithm

	now = (timebase - tb_orig_stamp) * tb_to_xs + stamp_xsec

and then converts the time in xsecs to seconds and microseconds.

The kernel updates the tb_orig_stamp and stamp_xsec values every
tick in update_vsyscall().  If the length of the tick is not an
integer number of xsecs, then some precision is lost in converting
the current time to xsecs.  For example, with CONFIG_HZ=1000, the
tick is 1ms long, which is 1048.576 xsecs.  That means that
stamp_xsec will advance by either 1048 or 1049 on each tick.
With the right conditions, it is possible for userspace to get
(timebase - tb_orig_stamp) * tb_to_xs being 1049 if the kernel is
slightly late in updating the vdso_datapage, and then for stamp_xsec
to advance by 1048 when the kernel does update it, and for userspace
to then see (timebase - tb_orig_stamp) * tb_to_xs being zero due to
integer truncation.  The result is that time appears to go backwards
by 1 microsecond.

To fix this we change the VDSO gettimeofday to use a new field in the
VDSO datapage which stores the nanoseconds part of the time as a
fractional number of seconds in a 0.32 binary fraction format.
(Or put another way, as a 32-bit number in units of 0.23283 ns.)
This is convenient because we can use the mulhwu instruction to
convert it to either microseconds or nanoseconds.

Since it turns out that computing the time of day using this new field
is simpler than either using stamp_xsec (as gettimeofday does) or
stamp_xtime.tv_nsec (as clock_gettime does), this converts both
gettimeofday and clock_gettime to use the new field.  The existing
__do_get_tspec function is converted to use the new field and take
a parameter in r7 that indicates the desired resolution, 1,000,000
for microseconds or 1,000,000,000 for nanoseconds.  The __do_get_xsec
function is then unused and is deleted.

The new algorithm is

	now = ((timebase - tb_orig_stamp) << 12) * tb_to_xs
		+ (stamp_xtime_seconds << 32) + stamp_sec_fraction

with 'now' in units of 2^-32 seconds.  That is then converted to
seconds and either microseconds or nanoseconds with

	seconds = now >> 32
	partseconds = ((now & 0xffffffff) * resolution) >> 32

The 32-bit VDSO code also makes a further simplification: it ignores
the bottom 32 bits of the tb_to_xs value, which is a 0.64 format binary
fraction.  Doing so gets rid of 4 multiply instructions.  Assuming
a timebase frequency of 1GHz or less and an update interval of no
more than 10ms, the upper 32 bits of tb_to_xs will be at least
4503599, so the error from ignoring the low 32 bits will be at most
2.2ns, which is more than an order of magnitude less than the time
taken to do gettimeofday or clock_gettime on our fastest processors,
so there is no possibility of seeing inconsistent values due to this.

This also moves update_gtod() down next to its only caller, and makes
update_vsyscall use the time passed in via the wall_time argument rather
than accessing xtime directly.  At present, wall_time always points to
xtime, but that could change in future.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2010-07-09 11:26:16 +10:00
..
iseries powerpc/iseries: Fix pci breakage due to bad dma_data initialization 2009-05-15 16:43:41 +10:00
8xx_immap.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
8253pit.h time: move PIT_TICK_RATE to linux/timex.h 2009-06-16 19:47:27 -07:00
abs_addr.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
agp.h agp: kill phys_to_gart() and gart_to_phys() 2009-08-03 09:05:00 +01:00
asm-compat.h powerpc: Emulate most Book I instructions in emulate_step() 2010-06-22 19:40:29 +10:00
asm-offsets.h kbuild: move asm-offsets.h to include/generated 2009-12-12 13:08:14 +01:00
async_tx.h ppc440spe-adma: adds updated ppc440spe adma driver 2009-12-11 21:24:44 -07:00
atomic.h powerpc: Rename LWSYNC_ON_SMP to PPC_RELEASE_BARRIER, ISYNC_ON_SMP to PPC_ACQUIRE_BARRIER 2010-02-17 14:03:15 +11:00
auxvec.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
backlight.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
bitops.h powerpc: Rename LWSYNC_ON_SMP to PPC_RELEASE_BARRIER, ISYNC_ON_SMP to PPC_ACQUIRE_BARRIER 2010-02-17 14:03:15 +11:00
bitsperlong.h asm-generic: introduce asm/bitsperlong.h 2009-06-11 21:02:14 +02:00
bootx.h powerpc: Fix warnings from make headers_check 2009-02-23 10:48:57 +11:00
btext.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
bug.h panic: Allow warnings to set different taint flags 2010-05-19 08:36:48 +01:00
bugs.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
byteorder.h byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
cache.h Merge branch 'for-35' of git://repo.or.cz/linux-kbuild 2010-06-01 08:55:52 -07:00
cacheflush.h block: add helpers to run flush_dcache_page() against a bio and a request's pages 2009-11-26 09:16:19 +01:00
cell-pmu.h powerpc/oprofile: IBM CELL: add SPU event profiling support 2009-01-08 15:51:55 +01:00
cell-regs.h powerpc/cell: Move CBE_IOPTE_* to <asm/cell-regs.h> 2009-08-20 10:29:26 +10:00
checksum.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
clk_interface.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
code-patching.h powerpc: Unify opcode definitions and support 2009-02-23 10:48:56 +11:00
compat.h improve sys_newuname() for compat architectures 2010-03-12 15:52:32 -08:00
cpm1.h powerpc/cpm: Remove SPI defines and spi structs 2009-11-11 21:43:17 -06:00
cpm2.h powerpc/cpm: Move CPMFCR_* defines into cpm.h 2009-11-11 21:43:19 -06:00
cpm.h powerpc/qe&cpm: Implement static inline stubs for non-QE/CPM builds 2009-11-11 21:43:20 -06:00
cputable.h powerpc, hw_breakpoints: Implement hw_breakpoints for 64-bit server processors 2010-06-22 19:40:50 +10:00
cputhreads.h powerpc/mm: Add HW threads support to no_hash TLB management 2009-08-20 10:12:37 +10:00
cputime.h powerpc: Replace per_cpu(, smp_processor_id()) with __get_cpu_var() 2010-02-03 17:39:48 +11:00
current.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
dbdma.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
dbell.h powerpc: Add support for using doorbells for SMP IPI 2009-02-23 15:53:03 +11:00
dcr-generic.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
dcr-mmio.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
dcr-native.h powerpc/4xx: Extended DCR support v2 2008-12-21 14:21:15 +11:00
dcr-regs.h ppc440spe-adma: adds updated ppc440spe adma driver 2009-12-11 21:24:44 -07:00
dcr.h powerpc: Const-qualify Device Node Argument to DCR Resource Extent API 2008-12-21 14:21:16 +11:00
delay.h powerpc: Fix spin_event_timeout() to be robust over context switches 2009-07-08 13:50:24 +10:00
device.h arch/powerpc: Move dma_mask from of_device into pdev_archdata 2010-05-22 00:10:40 -06:00
disassemble.h ppc: Create disassemble.h to extract instruction fields 2008-12-31 16:52:21 +02:00
div64.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
dma-mapping.h dma-mapping: powerpc: use generic pci_set_dma_mask and pci_set_consistent_dma_mask 2010-03-12 15:52:42 -08:00
dma.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
edac.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
eeh_event.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
eeh.h powerpc/pci: Split pcibios_fixup_bus() into bus setup and device setup 2008-11-06 09:22:37 +11:00
elf.h powerpc: TIF_ABI_PENDING bit removal 2010-02-01 14:00:30 +11:00
emergency-restart.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
emulated_ops.h powerpc: perf_event: Add alignment-faults and emulation-faults software events 2009-10-28 16:13:03 +11:00
errno.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
exception-64e.h powerpc/book3e-64: Add helper function to setup IVORs 2009-08-28 14:24:13 +10:00
exception-64s.h Make head_64.S aware of KVM real mode code 2009-11-05 16:49:57 +11:00
fb.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
fcntl.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
feature-fixups.h powerpc: Fix lwsync feature fixup vs. modules on 64-bit 2010-02-26 18:29:17 +11:00
firmware.h powerpc: Fix hypervisor TLB batching 2009-10-14 16:58:37 +11:00
fixmap.h powerpc: reserve fixmap entries for early debug 2009-12-12 22:24:30 -07:00
floppy.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
fs_pd.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
fsl_gtm.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
fsl_lbc.h powerpc/fsl: Increase the number of possible localbus banks 2009-06-15 21:45:32 -05:00
fsldma.h fsldma: Add DMA_SLAVE support 2009-09-08 17:53:04 -07:00
ftrace.h powerpc32, ftrace: save and restore mcount regs with macro 2009-02-23 10:48:54 +11:00
futex.h powerpc: Rename LWSYNC_ON_SMP to PPC_RELEASE_BARRIER, ISYNC_ON_SMP to PPC_ACQUIRE_BARRIER 2010-02-17 14:03:15 +11:00
gpio.h powerpc/gpio: support gpio_to_irq() 2009-12-10 20:08:15 -06:00
grackle.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
hardirq.h powerpc: Convert global "BAD" interrupt to per cpu spurious 2010-02-17 14:02:49 +11:00
heathrow.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
highmem.h powerpc/mm: Make k(un)map_atomic out of line 2009-06-26 14:37:25 +10:00
hugetlb.h powerpc/mm: Bring hugepage PTE accessor functions back into sync with normal accessors 2009-10-30 17:21:23 +11:00
hvcall.h powerpc/pseries: Add hcall to read 4 ptes at a time in real mode 2010-05-21 17:31:10 +10:00
hvconsole.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
hvcserver.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
hw_breakpoint.h powerpc, hw_breakpoint: Tell generic code we have no instruction breakpoints 2010-06-30 13:54:58 +10:00
hw_irq.h powerpc/perf_event: Fix oops due to perf_event_do_pending call 2010-05-12 14:34:00 +10:00
hydra.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
i8259.h powerpc: Remove use of CONFIG_PPC_MERGE 2008-08-04 13:18:17 +10:00
ibmebus.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
ide.h cleanup powerpc/include/asm/ide.h 2008-08-18 21:40:03 +02:00
immap_86xx.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
immap_cpm2.h powerpc/qe&cpm2: Avoid redefinitions in CPM2 and QE headers 2009-11-11 21:43:18 -06:00
immap_qe.h powerpc/qe&cpm2: Avoid redefinitions in CPM2 and QE headers 2009-11-11 21:43:18 -06:00
io-defs.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
io.h powerpc: Wire up /proc/vmallocinfo to our ioremap() 2009-03-11 17:10:14 +11:00
ioctl.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
ioctls.h powerpc: Add ioctls for RS485 mode control of serial drivers 2009-01-08 16:25:12 +11:00
iommu.h powerpc: Change archdata dma_data to a union 2009-09-24 15:31:43 +10:00
ipcbuf.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
ipic.h powerpc: Remove use of CONFIG_PPC_MERGE 2008-08-04 13:18:17 +10:00
irq_regs.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
irq.h powerpc: Unconditionally enabled irq stacks 2010-06-15 15:02:37 +10:00
irqflags.h powerpc: Fix lockdep IRQ tracing bug 2008-08-18 14:22:34 +10:00
Kbuild byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
kdebug.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
kdump.h powerpc: Move kdump default base address to 64MB on 64bit 2010-06-15 15:02:32 +10:00
kexec.h powerpc/kexec: Add support for FSL-BookE 2010-05-24 21:25:32 -05:00
keylargo.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
kgdb.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
kmap_types.h kdb: core for kgdb back end (2 of 2) 2010-05-20 21:04:21 -05:00
kprobes.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
kvm_44x.h KVM: ppc: move struct kvmppc_44x_tlbe into 44x-specific header 2009-03-24 11:02:55 +02:00
kvm_asm.h KVM: PPC: Enable native paired singles 2010-05-17 12:19:08 +03:00
kvm_book3s_32.h KVM: PPC: Add kvm_book3s_32.h 2010-05-17 12:18:23 +03:00
kvm_book3s_64.h KVM: PPC: Add kvm_book3s_64.h 2010-05-17 12:18:21 +03:00
kvm_book3s_asm.h KVM: PPC: Use KVM_BOOK3S_HANDLER 2010-05-17 12:18:28 +03:00
kvm_book3s.h KVM: PPC: Improve split mode 2010-05-17 12:18:58 +03:00
kvm_booke.h KVM: PPC: Improve indirect svcpu accessors 2010-05-17 12:18:26 +03:00
kvm_e500.h KVM: PPC E500: fix tlbcfg emulation 2010-03-01 12:36:06 -03:00
kvm_fpu.h KVM: PPC: Add helpers to call FPU instructions 2010-04-25 12:35:15 +03:00
kvm_host.h KVM: PPC: Convert u64 -> ulong 2010-05-17 12:18:55 +03:00
kvm_para.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
kvm_ppc.h KVM: PPC: Extract MMU init 2010-05-17 12:18:34 +03:00
kvm.h KVM: PPC: Allow userspace to unset the IRQ line 2010-05-17 12:16:51 +03:00
libata-portmap.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
linkage.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
lmb.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
local.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu 2010-03-03 07:34:18 -08:00
lppaca.h powerpc/pseries: Add extended_cede_processor() helper function. 2009-11-24 14:33:03 +11:00
lv1call.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
machdep.h sysfs/cpu: Add probe/release files 2009-12-09 17:09:33 +11:00
macio.h powerpc/macio: Fix probing of macio devices by using the right of match table 2010-06-02 17:50:38 +10:00
mc146818rtc.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
mediabay.h powerpc/macio: Rework hotplug media bay support 2009-12-09 17:09:14 +11:00
mman.h mm: add MAP_HUGETLB for mmaping pseudo-anonymous huge page regions 2009-09-22 07:17:41 -07:00
mmu_context.h PPC: Split context init/destroy functions 2010-05-17 12:18:20 +03:00
mmu-8xx.h powerpc: Add TLB management code for 64-bit Book3E 2009-08-20 10:25:09 +10:00
mmu-40x.h powerpc: Add TLB management code for 64-bit Book3E 2009-08-20 10:25:09 +10:00
mmu-44x.h powerpc/47x: Base ppc476 support 2010-05-05 09:11:10 -04:00
mmu-book3e.h powerpc/booke: Move MMUCSR definition into mmu-book3e.h 2009-08-24 20:48:05 -05:00
mmu-hash32.h powerpc: Name xpn & x fields in HW Hash PTE format 2009-08-28 14:24:12 +10:00
mmu-hash64.h powerpc/mm: Fix pgtable cache cleanup with CONFIG_PPC_SUBPAGE_PROT 2009-12-08 15:59:33 +11:00
mmu.h powerpc/47x: Base ppc476 support 2010-05-05 09:11:10 -04:00
mmzone.h powerpc/cpumask: Convert NUMA code to new cpumask API 2010-05-06 17:41:58 +10:00
module.h module: handle ppc64 relocating kcrctabs when CONFIG_RELOCATABLE=y 2009-12-15 16:28:34 +10:30
mpc5xxx.h powerpc/5xxx: Add common mpc5xxx_get_bus_frequency() function 2009-06-17 00:30:22 -06:00
mpc6xx.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
mpc8xx.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
mpc52xx_psc.h spi/mpc5121: Add SPI master driver for MPC5121 PSC 2010-05-25 00:23:17 -06:00
mpc52xx.h mpc52xx/wdt: merge WDT code into the GPT driver 2009-11-13 11:09:31 -07:00
mpc5121.h powerpc/mpc5121: Add machine restart support 2010-02-16 10:36:26 -07:00
mpc8260.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
mpic.h powerpc/cpumask: Convert mpic driver to new cpumask API 2010-05-06 18:01:46 +10:00
msgbuf.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
msi_bitmap.h powerpc: Split-out common MSI bitmap logic into msi_bitmap.c 2008-08-20 16:34:57 +10:00
mutex.h powerpc: Rename LWSYNC_ON_SMP to PPC_RELEASE_BARRIER, ISYNC_ON_SMP to PPC_ACQUIRE_BARRIER 2010-02-17 14:03:15 +11:00
nvram.h powerpc/nvram_64: Remove unused code 2009-10-30 17:21:28 +11:00
of_device.h arch/powerpc: Move dma_mask from of_device into pdev_archdata 2010-05-22 00:10:40 -06:00
of_platform.h of: make of_(un)register_platform_driver common code 2009-05-02 15:36:10 -07:00
ohare.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
oprofile_impl.h powerpc/oprofile: IBM CELL: add SPU event profiling support 2009-01-08 15:51:55 +01:00
paca.h Merge branch 'kvm-updates/2.6.35' of git://git.kernel.org/pub/scm/virt/kvm/kvm 2010-05-21 17:16:21 -07:00
page_32.h asm-generic: rename page.h and uaccess.h 2009-06-11 21:02:17 +02:00
page_64.h powerpc: remove unused __page_aligned definition. 2010-03-03 11:25:58 +01:00
page.h powerpc/fsl-booke: Fix CONFIG_RELOCATABLE support on FSL Book-E ppc32 2010-04-26 17:54:15 -05:00
param.h powerpc: Simplify param.h by including <asm-generic/param.h> 2010-02-03 17:39:48 +11:00
parport.h powerpc: Correct parport interrupt parsing 2010-05-06 16:49:26 +10:00
pasemi_dma.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
pci-bridge.h powerpc/pci: Pull ppc32 PCI features into common 2009-08-28 14:24:15 +10:00
pci.h pci-dma: add linux/pci-dma.h to linux/pci.h 2010-03-12 15:52:42 -08:00
percpu.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
perf_event_fsl_emb.h powerpc/perf: e500 support 2010-03-05 03:04:08 -06:00
perf_event_server.h powerpc/perf: e500 support 2010-03-05 03:04:08 -06:00
perf_event.h powerpc/perf: e500 support 2010-03-05 03:04:08 -06:00
pgalloc-32.h powerpc/mm: Cleanup management of kmem_caches for pagetables 2009-10-30 17:20:57 +11:00
pgalloc-64.h powerpc/mm: Track backing pages allocated by vmemmap_populate() 2010-05-06 16:49:27 +10:00
pgalloc.h powerpc/mm: Cleanup management of kmem_caches for pagetables 2009-10-30 17:20:57 +11:00
pgtable-ppc32.h powerpc/ppc32: Fixup pmd_page to work when ARCH_PFN_OFFSET is non-zero 2010-04-07 18:00:30 +10:00
pgtable-ppc64-4k.h powerpc/mm: Split the various pgtable-* headers based on MMU type 2009-03-20 15:56:57 +11:00
pgtable-ppc64-64k.h powerpc/mm: Fix misplaced #endif in pgtable-ppc64-64k.h 2009-08-20 10:12:35 +10:00
pgtable-ppc64.h powerpc/mm: Allow more flexible layouts for hugepage pagetables 2009-10-30 17:20:58 +11:00
pgtable.h MM: Pass a PTE pointer to update_mmu_cache() rather than the PTE itself 2010-02-20 16:41:46 +00:00
phyp_dump.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
pmac_feature.h powerpc: Convert feature_lock to raw_spinlock 2010-02-19 14:52:32 +11:00
pmac_low_i2c.h i2c-powermac: Include the i2c_adapter in struct pmac_i2c_bus 2009-12-06 17:06:19 +01:00
pmac_pfunc.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
pmc.h powerpc/pmc: Don't access lppaca on Book3E 2009-09-24 15:31:39 +10:00
pmi.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
poll.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
posix_types.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
ppc4xx.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
ppc_asm.h powerpc: Adjust base and index registers in Altivec macros 2009-08-28 14:24:12 +10:00
ppc-opcode.h powerpc: Emulate most Book I instructions in emulate_step() 2010-06-22 19:40:29 +10:00
ppc-pci.h powerpc/eeh: Fix a bug when pci structure is null 2010-02-17 14:02:47 +11:00
processor.h powerpc, hw_breakpoints: Implement hw_breakpoints for 64-bit server processors 2010-06-22 19:40:50 +10:00
prom.h of: remove undefined request_OF_resource & release_OF_resource 2010-02-14 13:02:45 -07:00
ps3.h ps3: Replace direct file operations by callback 2009-06-15 16:47:26 +10:00
ps3av.h powerpc/ps3: Make ps3av_set_video_mode mode ID signed 2009-03-11 17:10:17 +11:00
ps3fb.h powerpc: Remove duplicated #include's 2009-04-07 15:18:58 +10:00
ps3gpu.h ps3fb: Tear down FB setup during cleanup 2009-06-15 13:26:21 +10:00
ps3stor.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
pSeries_reconfig.h powerpc/pseries: Kernel DLPAR Infrastructure 2009-12-09 17:09:32 +11:00
pte-8xx.h powerpc/8xx: Restore _PAGE_WRITETHRU 2009-12-09 17:10:37 +11:00
pte-40x.h powerpc/mm: Fix 40x and 8xx vs. _PAGE_SPECIAL 2009-09-24 15:31:49 +10:00
pte-44x.h powerpc/mm: Cleanup handling of execute permission 2009-08-27 13:12:51 +10:00
pte-book3e.h powerpc/fsl-booke: Use HW PTE format if CONFIG_PTE_64BIT 2009-09-02 16:20:41 +10:00
pte-common.h powerpc/mm: Fix 40x and 8xx vs. _PAGE_SPECIAL 2009-09-24 15:31:49 +10:00
pte-fsl-booke.h powerpc/fsl-booke: Use HW PTE format if CONFIG_PTE_64BIT 2009-09-02 16:20:41 +10:00
pte-hash32.h powerpc/mm: Cleanup handling of execute permission 2009-08-27 13:12:51 +10:00
pte-hash64-4k.h powerpc/mm: Tweak PTE bit combination definitions 2009-03-24 13:47:33 +11:00
pte-hash64-64k.h powerpc/mm: Fix pgtable cache cleanup with CONFIG_PPC_SUBPAGE_PROT 2009-12-08 15:59:33 +11:00
pte-hash64.h powerpc/mm: Add option for non-atomic PTE updates to ppc64 2009-03-24 13:47:34 +11:00
ptrace.h powerpc: Fix userspace build of ptrace.h 2010-07-08 18:11:46 +10:00
qe_ic.h powerpc/qe: Fix few build errors with CONFIG_QUICC_ENGINE=n 2008-12-30 11:14:06 -06:00
qe.h powerpc/qe&cpm: Implement static inline stubs for non-QE/CPM builds 2009-11-11 21:43:20 -06:00
reg_8xx.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
reg_booke.h powerpc/e500mc: Implement machine check handler. 2010-05-21 07:41:52 -05:00
reg_fsl_emb.h powerpc/perf: e500 support 2010-03-05 03:04:08 -06:00
reg.h Merge branch 'kvm-updates/2.6.35' of git://git.kernel.org/pub/scm/virt/kvm/kvm 2010-05-21 17:16:21 -07:00
resource.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
rheap.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
rio.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
rtas.h locking: Convert raw_spinlock to arch_spinlock 2009-12-14 23:55:32 +01:00
rtc.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
rwsem.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
scatterlist.h asm-generic: remove ARCH_HAS_SG_CHAIN in scatterlist.h 2010-05-27 09:12:54 -07:00
seccomp.h x86-64: seccomp: fix 32/64 syscall hole 2009-03-02 15:41:30 -08:00
sections.h Merge commit 'origin' 2008-10-15 11:31:54 +11:00
sembuf.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
serial.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
setjmp.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
setup.h powerpc: derive COMMAND_LINE_SIZE from asm-generic 2009-08-28 14:24:16 +10:00
sfp-machine.h Revert "endian: #define __BYTE_ORDER" 2010-05-26 08:30:15 -07:00
shmbuf.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
shmparam.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
sigcontext.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
siginfo.h signals: demultiplexing SIGTRAP signal 2008-09-23 13:26:52 +02:00
signal.h asm-generic: rename termios.h, signal.h and mman.h 2009-06-11 21:01:52 +02:00
smp.h powerpc/cpumask: Dynamically allocate cpu_sibling_map and cpu_core_map cpumasks 2010-05-06 17:41:56 +10:00
smu.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
socket.h net: Generalize socket rx gap / receive queue overflow cmsg 2009-10-12 13:26:31 -07:00
sockios.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
sparsemem.h Revert "powerpc/mm: Bump SECTION_SIZE_BITS from 16MB to 256MB" 2010-04-13 13:54:39 +10:00
spinlock_types.h locking: Convert raw_rwlock to arch_rwlock 2009-12-14 23:55:32 +01:00
spinlock.h powerpc: Rename LWSYNC_ON_SMP to PPC_RELEASE_BARRIER, ISYNC_ON_SMP to PPC_ACQUIRE_BARRIER 2010-02-17 14:03:15 +11:00
spu_csa.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
spu_info.h powerpc: Fix warnings from make headers_check 2009-02-23 10:48:57 +11:00
spu_priv1.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
spu.h powerpc/cell: Bitops work on unsigned longs 2009-01-08 16:25:12 +11:00
sstep.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
stat.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
statfs.h PowerPC: Use <asm-generic/statfs.h> 2008-09-06 19:30:15 +01:00
string.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
suspend.h pm: cleanup includes 2009-04-01 08:59:16 -07:00
swab.h powerpc: Fix warnings from make headers_check 2009-02-23 10:48:57 +11:00
swiotlb.h powerpc: use dma_map_ops struct 2009-08-28 14:24:10 +10:00
synch.h powerpc: Use lwsync for acquire barrier if CPU supports it 2010-02-17 14:03:16 +11:00
syscall.h powerpc: Use correct ccr bit for syscall error status 2010-03-19 16:38:16 +11:00
syscalls.h improve sys_newuname() for compat architectures 2010-03-12 15:52:32 -08:00
systbl.h improve sys_newuname() for compat architectures 2010-03-12 15:52:32 -08:00
system.h powerpc/booke: Add support for advanced debug registers 2010-02-17 14:03:17 +11:00
tce.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
termbits.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
termios.h asm-generic: rename termios.h, signal.h and mman.h 2009-06-11 21:01:52 +02:00
thread_info.h add descriptive comment for TIF_MEMDIE task flag declaration. 2010-05-14 11:13:27 +02:00
time.h powerpc: Eliminate unused do_gtod variable 2008-11-06 09:49:28 +11:00
timex.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
tlb.h powerpc/mm: Rework & cleanup page table freeing code path 2009-08-20 10:24:56 +10:00
tlbflush.h powerpc/mm: Make low level TLB flush ops on BookE take additional args 2009-08-20 10:12:41 +10:00
topology.h powerpc/numa: Set a smaller value for RECLAIM_DISTANCE to enable zone reclaim 2010-05-21 17:31:12 +10:00
trace.h powerpc: tracing: Give hypervisor call tracepoints access to arguments 2009-10-28 16:13:04 +11:00
tsi108_irq.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
tsi108_pci.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
tsi108.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
types.h asm-generic: introduce asm/bitsperlong.h 2009-06-11 21:02:14 +02:00
uaccess.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
ucc_fast.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
ucc_slow.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
ucc.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
ucontext.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
udbg.h powerpc: gamecube/wii: early debugging using usbgecko 2009-12-12 22:24:31 -07:00
uic.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
unaligned.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
uninorth.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
unistd.h Add generic sys_olduname() 2010-03-12 15:52:32 -08:00
user.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
vdso_datapage.h powerpc: Rework VDSO gettimeofday to prevent time going backwards 2010-07-09 11:26:16 +10:00
vdso.h powerpc: Move 64bit VDSO to improve context switch performance 2009-08-20 10:12:24 +10:00
vga.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
vio.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
xilinx_intc.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
xilinx_pci.h powerpc/virtex: Add support for Xilinx PCI host bridge 2009-06-06 10:14:22 -06:00
xmon.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00
xor.h powerpc: Move include files to arch/powerpc/include/asm 2008-08-04 12:02:00 +10:00