]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/log
mirror_ubuntu-eoan-kernel.git
16 years agoproc: move pagecount stuff to fs/proc/page.c
Alexey Dobriyan [Mon, 6 Oct 2008 10:26:12 +0000 (14:26 +0400)]
proc: move pagecount stuff to fs/proc/page.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move all /proc/kcore stuff to fs/proc/kcore.c
Alexey Dobriyan [Mon, 6 Oct 2008 10:14:19 +0000 (14:14 +0400)]
proc: move all /proc/kcore stuff to fs/proc/kcore.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move /proc/schedstat boilerplate to kernel/sched_stats.h
Alexey Dobriyan [Mon, 6 Oct 2008 09:23:43 +0000 (13:23 +0400)]
proc: move /proc/schedstat boilerplate to kernel/sched_stats.h

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move /proc/modules boilerplate to kernel/module.c
Alexey Dobriyan [Mon, 6 Oct 2008 09:19:27 +0000 (13:19 +0400)]
proc: move /proc/modules boilerplate to kernel/module.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move /proc/diskstats boilerplate to block/genhd.c
Alexey Dobriyan [Mon, 6 Oct 2008 08:55:38 +0000 (12:55 +0400)]
proc: move /proc/diskstats boilerplate to block/genhd.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Acked-by: Jens Axboe <jens.axboe@oracle.com>
16 years agoproc: move /proc/zoneinfo boilerplate to mm/vmstat.c
Alexey Dobriyan [Mon, 6 Oct 2008 00:19:42 +0000 (04:19 +0400)]
proc: move /proc/zoneinfo boilerplate to mm/vmstat.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Acked-by: Christoph Lameter <cl@linux-foundation.org>
16 years agoproc: move /proc/vmstat boilerplate to mm/vmstat.c
Alexey Dobriyan [Mon, 6 Oct 2008 00:17:48 +0000 (04:17 +0400)]
proc: move /proc/vmstat boilerplate to mm/vmstat.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Acked-by: Christoph Lameter <cl@linux-foundation.org>
16 years agoproc: move /proc/pagetypeinfo boilerplate to mm/vmstat.c
Alexey Dobriyan [Mon, 6 Oct 2008 00:15:36 +0000 (04:15 +0400)]
proc: move /proc/pagetypeinfo boilerplate to mm/vmstat.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move /proc/buddyinfo boilerplate to mm/vmstat.c
Alexey Dobriyan [Mon, 6 Oct 2008 00:13:52 +0000 (04:13 +0400)]
proc: move /proc/buddyinfo boilerplate to mm/vmstat.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move /proc/vmallocinfo to mm/vmalloc.c
Alexey Dobriyan [Sun, 5 Oct 2008 23:50:47 +0000 (03:50 +0400)]
proc: move /proc/vmallocinfo to mm/vmalloc.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Acked-by: Christoph Lameter <cl@linux-foundation.org>
16 years agoproc: move /proc/slabinfo boilerplate to mm/slub.c, mm/slab.c
Alexey Dobriyan [Sun, 5 Oct 2008 22:42:17 +0000 (02:42 +0400)]
proc: move /proc/slabinfo boilerplate to mm/slub.c, mm/slab.c

Lose dummy ->write hook in case of SLUB, it's possible now.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Acked-by: Pekka Enberg <penberg@cs.helsinki.fi>
16 years agoproc: move /proc/slab_allocators boilerplate to mm/slab.c
Alexey Dobriyan [Sun, 5 Oct 2008 20:59:10 +0000 (00:59 +0400)]
proc: move /proc/slab_allocators boilerplate to mm/slab.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Acked-by: Pekka Enberg <penberg@cs.helsinki.fi>
16 years agoproc: move /proc/interrupts boilerplate code to fs/proc/interrupts.c
Alexey Dobriyan [Sat, 4 Oct 2008 20:08:44 +0000 (00:08 +0400)]
proc: move /proc/interrupts boilerplate code to fs/proc/interrupts.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move /proc/stat to fs/proc/stat.c
Alexey Dobriyan [Sat, 4 Oct 2008 20:01:56 +0000 (00:01 +0400)]
proc: move /proc/stat to fs/proc/stat.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move rest of /proc/partitions code to block/genhd.c
Alexey Dobriyan [Sat, 4 Oct 2008 19:53:21 +0000 (23:53 +0400)]
proc: move rest of /proc/partitions code to block/genhd.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Acked-by: Jens Axboe <jens.axboe@oracle.com>
16 years agoproc: move /proc/cpuinfo code to fs/proc/cpuinfo.c
Alexey Dobriyan [Sat, 4 Oct 2008 19:40:23 +0000 (23:40 +0400)]
proc: move /proc/cpuinfo code to fs/proc/cpuinfo.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move /proc/devices code to fs/proc/devices.c
Alexey Dobriyan [Sat, 4 Oct 2008 19:11:37 +0000 (23:11 +0400)]
proc: move /proc/devices code to fs/proc/devices.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move rest of /proc/locks to fs/locks.c
Alexey Dobriyan [Sat, 4 Oct 2008 18:34:18 +0000 (22:34 +0400)]
proc: move rest of /proc/locks to fs/locks.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move /proc/kmsg creation to fs/proc/kmsg.c
Alexey Dobriyan [Sat, 4 Oct 2008 10:39:12 +0000 (14:39 +0400)]
proc: move /proc/kmsg creation to fs/proc/kmsg.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: remove remnants of ->read_proc in proc_misc.c
Alexey Dobriyan [Sat, 4 Oct 2008 10:30:53 +0000 (14:30 +0400)]
proc: remove remnants of ->read_proc in proc_misc.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move /proc/execdomains to kernel/exec_domain.c
Alexey Dobriyan [Sat, 4 Oct 2008 10:28:09 +0000 (14:28 +0400)]
proc: move /proc/execdomains to kernel/exec_domain.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: switch /proc/cmdline to seq_file
Alexey Dobriyan [Sat, 4 Oct 2008 10:13:59 +0000 (14:13 +0400)]
proc: switch /proc/cmdline to seq_file

and move it to fs/proc/cmdline.c while I'm at it.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move /proc/filesystems to fs/filesystems.c
Alexey Dobriyan [Sat, 4 Oct 2008 10:08:37 +0000 (14:08 +0400)]
proc: move /proc/filesystems to fs/filesystems.c

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move /proc/stram to m68k-specific code
Alexey Dobriyan [Sat, 4 Oct 2008 09:49:34 +0000 (13:49 +0400)]
proc: move /proc/stram to m68k-specific code

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: move /proc/hardware to m68k-specific code
Alexey Dobriyan [Fri, 3 Oct 2008 18:42:36 +0000 (22:42 +0400)]
proc: move /proc/hardware to m68k-specific code

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: switch /proc/version to seq_file
Alexey Dobriyan [Fri, 3 Oct 2008 07:53:19 +0000 (11:53 +0400)]
proc: switch /proc/version to seq_file

and move it to fs/proc/version.c while I'm at it.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: switch /proc/meminfo to seq_file
Alexey Dobriyan [Wed, 15 Oct 2008 19:50:22 +0000 (23:50 +0400)]
proc: switch /proc/meminfo to seq_file

and move it to fs/proc/meminfo.c while I'm at it.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: switch /proc/uptime to seq_file
Alexey Dobriyan [Thu, 2 Oct 2008 22:38:18 +0000 (02:38 +0400)]
proc: switch /proc/uptime to seq_file

and move it to fs/proc/uptime.c while I'm at it.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: switch /proc/loadavg to seq_file
Alexey Dobriyan [Thu, 2 Oct 2008 22:21:47 +0000 (02:21 +0400)]
proc: switch /proc/loadavg to seq_file

and move it to fs/proc/loadavg.c while I'm at it.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: use WARN() rather than printk+backtrace
Arjan van de Ven [Sun, 14 Sep 2008 02:51:30 +0000 (19:51 -0700)]
proc: use WARN() rather than printk+backtrace

Use WARN() rather than a printk() + backtrace();
this gives a more standard format message as well as complete
information (including line numbers etc) that will be collected
by kerneloops.org

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: spread __init
Alexey Dobriyan [Fri, 17 Oct 2008 01:07:44 +0000 (05:07 +0400)]
proc: spread __init

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: proc_init_inodecache() can't fail
Alexey Dobriyan [Thu, 16 Oct 2008 23:43:55 +0000 (03:43 +0400)]
proc: proc_init_inodecache() can't fail

kmem_cache creation code will panic, don't return anything.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agoproc: fix vma display mismatch between /proc/pid/{maps,smaps}
Joe Korty [Thu, 16 Oct 2008 11:27:09 +0000 (15:27 +0400)]
proc: fix vma display mismatch between /proc/pid/{maps,smaps}

Commit 4752c369789250eafcd7813e11c8fb689235b0d2 aka
"maps4: simplify interdependence of maps and smaps" broke /proc/pid/smaps,
causing it to display some vmas twice and other vmas not at all.  For example:

    grep .- /proc/1/smaps >/tmp/smaps; diff /proc/1/maps /tmp/smaps

    1  25d24
    2  < 7fd7e23aa000-7fd7e23ac000 rw-p 7fd7e23aa000 00:00 0
    3  28a28
    4  > ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0  [vsyscall]

The bug has something to do with setting m->version before all the
seq_printf's have been performed.  show_map was doing this correctly,
but show_smap was doing this in the middle of its seq_printf sequence.
This patch arranges things so that the setting of m->version in show_smap
is also done at the end of its seq_printf sequence.

Testing: in addition to the above grep test, for each process I summed
up the 'Rss' fields of /proc/pid/smaps and compared that to the 'VmRSS'
field of /proc/pid/status.  All matched except for Xorg (which has a
/dev/mem mapping which Rss accounts for but VmRSS does not).  This result
gives us some confidence that neither /proc/pid/maps nor /proc/pid/smaps
are any longer skipping or double-counting vmas.

Signed-off-by: Joe Korty <joe.korty@ccur.com>
Cc: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
16 years agobinfmt_elf_fdpic: Update for cputime changes.
Paul Mundt [Tue, 21 Oct 2008 03:07:40 +0000 (12:07 +0900)]
binfmt_elf_fdpic: Update for cputime changes.

Commit f06febc96ba8e0af80bcc3eaec0a109e88275fac ("timers: fix itimer/
many thread hang") introduced a new task_cputime interface and
subsequently only converted binfmt_elf over to it.  This results in the
build for binfmt_elf_fdpic blowing up given that p->signal->{u,s}time
have disappeared from underneath us.

Apply the same trivial fix from binfmt_elf to binfmt_elf_fdpic.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agomm: remove duplicated #include's
Huang Weiyi [Mon, 20 Oct 2008 22:43:33 +0000 (06:43 +0800)]
mm: remove duplicated #include's

Removed duplicated #include <linux/vmalloc.h> in mm/vmalloc.c and
"internal.h" in mm/memory.c.

Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoExport tiny shmem_file_setup for DRM-GEM
Hugh Dickins [Mon, 20 Oct 2008 23:04:04 +0000 (00:04 +0100)]
Export tiny shmem_file_setup for DRM-GEM

We're trying to keep the !CONFIG_SHMEM tiny-shmem.c (using ramfs without
swap) in synch with CONFIG_SHMEM shmem.c (and mpm is preparing patches
to combine them).  I was glad to see EXPORT_SYMBOL_GPL(shmem_file_setup)
go into shmem.c, but why not support DRM-GEM when !CONFIG_SHMEM too?
But caution says still depend on MMU, since !CONFIG_MMU is.. different.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Acked-by: Matt Mackall <mpm@selenic.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agomisc: replace remaining __FUNCTION__ with __func__
Harvey Harrison [Mon, 20 Oct 2008 23:00:08 +0000 (16:00 -0700)]
misc: replace remaining __FUNCTION__ with __func__

__FUNCTION__ is gcc-specific, use __func__

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agofix CONFIG_HIGHMEM compile error in drivers/gpu/drm/i915/i915_gem.c
Thomas Gleixner [Mon, 20 Oct 2008 22:47:45 +0000 (00:47 +0200)]
fix CONFIG_HIGHMEM compile error in drivers/gpu/drm/i915/i915_gem.c

commit 9b7530cc329eb036cfa589930c270e85031f554c ("i915: cleanup coding
horrors in i915_gem_gtt_pwrite()")

broke the i386 build for CONFIG_HIGHMEM=y.

Caught by automatic testing http://www.tglx.de/autoqa-logs/000137-0006-0001.log

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
[ My bad. It's the same patch I sent out earlier, nobody noticed then either.. ]
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agofix WARN() for PPC
Arjan van de Ven [Mon, 20 Oct 2008 21:41:03 +0000 (14:41 -0700)]
fix WARN() for PPC

powerpc doesn't use the generic WARN_ON infrastructure.  The newly
introduced WARN() as a result didn't print the message, this patch adds
the printk for this specific case.

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agokexec: fix crash_save_vmcoreinfo_init build problem
Luck, Tony [Mon, 20 Oct 2008 22:23:40 +0000 (15:23 -0700)]
kexec: fix crash_save_vmcoreinfo_init build problem

This fixes

  kernel/kexec.c: In function 'crash_save_vmcoreinfo_init':
  kernel/kexec.c:1374: error: 'vmlist' undeclared (first use in this function)
  kernel/kexec.c:1374: error: (Each undeclared identifier is reported only once
  kernel/kexec.c:1374: error: for each function it appears in.)
  kernel/kexec.c:1410: error: invalid use of undefined type 'struct vm_struct'
  make[1]: *** [kernel/kexec.o] Error 1

Signed-off-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6
Linus Torvalds [Mon, 20 Oct 2008 21:38:14 +0000 (14:38 -0700)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6:
  parisc: convert to generic compat_sys_ptrace
  parisc: add rtc platform driver
  parisc: initialize unwinder much earlier
  parisc: add new syscalls
  parisc: hijack jump to start_kernel
  parisc: add pdc_coproc_cfg_unlocked and set_firmware_width_unlocked
  parisc: move include/asm-parisc to arch/parisc/include/asm
  parisc: move pdc_result to real2.S
  parisc: unify CCIO_COLLECT_STATS implementation
  parisc: add arch/parisc/kernel/.gitignore
  parisc: ropes.h - fix <asm-parisc/*> -> <asm/*>
  parisc: parisc-agp - fix <asm-parisc/*> -> <asm/*>

Resolve remove/rename conflict: include/asm-parisc/a.out.h is no longer
relevant.

16 years agoUSB: Fix unused label warnings in drivers/usb/host/ehci-hcd.c
Linus Torvalds [Mon, 20 Oct 2008 21:23:29 +0000 (14:23 -0700)]
USB: Fix unused label warnings in drivers/usb/host/ehci-hcd.c

This gets rid of an annoying warning in ehci-hcd.c when DEBUG isn't
enabled:

    warning: label 'err_debug' defined but not used

by moving it inside the already-existing #ifdef DEBUG, so that it
matches the goto.  And now my regular build is warning-free again.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoi915: cleanup coding horrors in i915_gem_gtt_pwrite()
Linus Torvalds [Mon, 20 Oct 2008 21:16:43 +0000 (14:16 -0700)]
i915: cleanup coding horrors in i915_gem_gtt_pwrite()

Yes, this will probably be switched over to a cleaner model anyway, but
in the meantime I don't want to see the 'unused variable' warnings that
come from the disgusting #ifdef code.  Make the special case be a nice
inlien function of its own, clean up the code, and make the warning go
away.

I wish people didn't write code that gets (valid) warnings from the
compiler, but I'll limit my fixes to code that I actually care about (in
this case just because I see the warning and it annoys me).

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoFix sprintf format warnings in drm_proc.c
Linus Torvalds [Mon, 20 Oct 2008 21:14:25 +0000 (14:14 -0700)]
Fix sprintf format warnings in drm_proc.c

Use "%zd" for size_t, and make sure to have a space between the numbers
instead of depending on the field width.

I don't like warnings in my default targeted build.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge branch 'bkl-removal' of git://git.lwn.net/linux-2.6
Linus Torvalds [Mon, 20 Oct 2008 20:42:14 +0000 (13:42 -0700)]
Merge branch 'bkl-removal' of git://git.lwn.net/linux-2.6

* 'bkl-removal' of git://git.lwn.net/linux-2.6:
  UIO: BKL removal

16 years agoMerge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes...
Linus Torvalds [Mon, 20 Oct 2008 20:40:47 +0000 (13:40 -0700)]
Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6

* 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (41 commits)
  PCI: fix pci_ioremap_bar() on s390
  PCI: fix AER capability check
  PCI: use pci_find_ext_capability everywhere
  PCI: remove #ifdef DEBUG around dev_dbg call
  PCI hotplug: fix get_##name return value problem
  PCI: document the pcie_aspm kernel parameter
  PCI: introduce an pci_ioremap(pdev, barnr) function
  powerpc/PCI: Add legacy PCI access via sysfs
  PCI: Add ability to mmap legacy_io on some platforms
  PCI: probing debug message uniformization
  PCI: support PCIe ARI capability
  PCI: centralize the capabilities code in probe.c
  PCI: centralize the capabilities code in pci-sysfs.c
  PCI: fix 64-vbit prefetchable memory resource BARs
  PCI: replace cfg space size (256/4096) by macros.
  PCI: use resource_size() everywhere.
  PCI: use same arg names in PCI_VDEVICE comment
  PCI hotplug: rpaphp: make debug var unique
  PCI: use %pF instead of print_fn_descriptor_symbol() in quirks.c
  PCI: fix hotplug get_##name return value problem
  ...

16 years agoMerge branch 'tracing-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Mon, 20 Oct 2008 20:35:07 +0000 (13:35 -0700)]
Merge branch 'tracing-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip

* 'tracing-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (131 commits)
  tracing/fastboot: improve help text
  tracing/stacktrace: improve help text
  tracing/fastboot: fix initcalls disposition in bootgraph.pl
  tracing/fastboot: fix bootgraph.pl initcall name regexp
  tracing/fastboot: fix issues and improve output of bootgraph.pl
  tracepoints: synchronize unregister static inline
  tracepoints: tracepoint_synchronize_unregister()
  ftrace: make ftrace_test_p6nop disassembler-friendly
  markers: fix synchronize marker unregister static inline
  tracing/fastboot: add better resolution to initcall debug/tracing
  trace: add build-time check to avoid overrunning hex buffer
  ftrace: fix hex output mode of ftrace
  tracing/fastboot: fix initcalls disposition in bootgraph.pl
  tracing/fastboot: fix printk format typo in boot tracer
  ftrace: return an error when setting a nonexistent tracer
  ftrace: make some tracers reentrant
  ring-buffer: make reentrant
  ring-buffer: move page indexes into page headers
  tracing/fastboot: only trace non-module initcalls
  ftrace: move pc counter in irqtrace
  ...

Manually fix conflicts:
 - init/main.c: initcall tracing
 - kernel/module.c: verbose level vs tracepoints
 - scripts/bootgraph.pl: fallout from cherry-picking commits.

16 years agoMerge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Mon, 20 Oct 2008 20:27:05 +0000 (13:27 -0700)]
Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip

* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  x86 ACPI: fix breakage of resume on 64-bit UP systems with SMP kernel
  Introduce is_vmalloc_or_module_addr() and use with DEBUG_VIRTUAL

16 years agoMerge branch 'genirq-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Mon, 20 Oct 2008 20:22:50 +0000 (13:22 -0700)]
Merge branch 'genirq-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip

This merges branches irq/genirq, irq/sparseirq-v4, timers/hpet-percpu
and x86/uv.

The sparseirq branch is just preliminary groundwork: no sparse IRQs are
actually implemented by this tree anymore - just the new APIs are added
while keeping the old way intact as well (the new APIs map 1:1 to
irq_desc[]).  The 'real' sparse IRQ support will then be a relatively
small patch ontop of this - with a v2.6.29 merge target.

* 'genirq-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (178 commits)
  genirq: improve include files
  intr_remapping: fix typo
  io_apic: make irq_mis_count available on 64-bit too
  genirq: fix name space collisions of nr_irqs in arch/*
  genirq: fix name space collision of nr_irqs in autoprobe.c
  genirq: use iterators for irq_desc loops
  proc: fixup irq iterator
  genirq: add reverse iterator for irq_desc
  x86: move ack_bad_irq() to irq.c
  x86: unify show_interrupts() and proc helpers
  x86: cleanup show_interrupts
  genirq: cleanup the sparseirq modifications
  genirq: remove artifacts from sparseirq removal
  genirq: revert dynarray
  genirq: remove irq_to_desc_alloc
  genirq: remove sparse irq code
  genirq: use inline function for irq_to_desc
  genirq: consolidate nr_irqs and for_each_irq_desc()
  x86: remove sparse irq from Kconfig
  genirq: define nr_irqs for architectures with GENERIC_HARDIRQS=n
  ...

16 years agoMerge branch 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Mon, 20 Oct 2008 20:21:24 +0000 (13:21 -0700)]
Merge branch 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip

* 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  m32r: fix build due to notify_cpu_starting() change
  powerpc: fix linux-next build failure

16 years agoMerge branch 'v28-timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Mon, 20 Oct 2008 20:19:56 +0000 (13:19 -0700)]
Merge branch 'v28-timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip

* 'v28-timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (36 commits)
  fix documentation of sysrq-q really
  Fix documentation of sysrq-q
  timer_list: add base address to clock base
  timer_list: print cpu number of clockevents device
  timer_list: print real timer address
  NOHZ: restart tick device from irq_enter()
  NOHZ: split tick_nohz_restart_sched_tick()
  NOHZ: unify the nohz function calls in irq_enter()
  timers: fix itimer/many thread hang, fix
  timers: fix itimer/many thread hang, v3
  ntp: improve adjtimex frequency rounding
  timekeeping: fix rounding problem during clock update
  ntp: let update_persistent_clock() sleep
  hrtimer: reorder struct hrtimer to save 8 bytes on 64bit builds
  posix-timers: lock_timer: make it readable
  posix-timers: lock_timer: kill the bogus ->it_id check
  posix-timers: kill ->it_sigev_signo and ->it_sigev_value
  posix-timers: sys_timer_create: cleanup the error handling
  posix-timers: move the initialization of timer->sigq from send to create path
  posix-timers: sys_timer_create: simplify and s/tasklist/rcu/
  ...

Fix trivial conflicts due to sysrq-q description clahes in
Documentation/sysrq.txt and drivers/char/sysrq.c

16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6
Linus Torvalds [Mon, 20 Oct 2008 20:12:39 +0000 (13:12 -0700)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (36 commits)
  ide: re-add TRM290 fix lost during ide_build_dmatable() cleanup
  scc_pata: kill unused variables
  sgiioc4: kill duplicate ioremap()
  sgiioc4: kill useless address checks
  delkin_cb: add PM support
  ide: remove broken hpt34x driver
  ide-floppy: remove idefloppy_floppy_t typedef
  sgiioc4: remove maskproc() method
  hpt366: cleanup maskproc() method
  ide: mask interrupt in ide_config_drive_speed()
  hpt366: fix compile warning
  ide: remove unused macros from <asm-parisc/ide.h>
  ide: remove M68K_IDE_SWAPW define from <asm-m68k/ide.h>
  ide: remove dead <asm-arm/arch-sa1100/ide.h>
  ide: fix support for IDE PCI controllers using MMIO on frv
  ide-cd: remove stale comment
  ide-cd: small drive type print fix
  ide-cd: debug log enhancements
  ide: add generic ATA/ATAPI disk driver
  ide: allow device drivers to specify per-device type /proc settings
  ...

16 years agoMerge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx
Linus Torvalds [Mon, 20 Oct 2008 19:54:30 +0000 (12:54 -0700)]
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx

* 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx:
  fsldma: allow Freescale Elo DMA driver to be compiled as a module
  fsldma: remove internal self-test from Freescale Elo DMA driver
  drivers/dma/dmatest.c: switch a GFP_ATOMIC to GFP_KERNEL
  dmatest: properly handle duplicate DMA channels
  drivers/dma/ioat_dma.c: drop code after return
  async_tx: make async_tx_run_dependencies() easier to read

16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
Linus Torvalds [Mon, 20 Oct 2008 19:53:40 +0000 (12:53 -0700)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog

* git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
  [WATCHDOG] ib700wdt.c - fix buffer_underflow bug

16 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi...
Linus Torvalds [Mon, 20 Oct 2008 19:53:27 +0000 (12:53 -0700)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:
  fuse: implement nonseekable open
  fuse: add include protectors
  fuse: config description improvement
  fuse: add missing fuse_request_free
  fuse: fix SEEK_END incorrectness

16 years agobyteorder: remove direct includes of linux/byteorder/swab[b].h
Harvey Harrison [Mon, 20 Oct 2008 17:23:38 +0000 (10:23 -0700)]
byteorder: remove direct includes of linux/byteorder/swab[b].h

A consolidated implementation will provide this generically through
asm/byteorder, remove direct includes to avoid breakage when the
changeover to the new implementation occurs.

This hunk was lost from commit 1d8cca44b6a244b7e378546d719041819049a0f9
("byteorder: provide swabb.h generically in asm/byteorder.h")

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoUpdate email addresses.
Dave Jones [Mon, 20 Oct 2008 17:31:45 +0000 (13:31 -0400)]
Update email addresses.

Update assorted email addresses and related info to point
to a single current, valid address.

additionally
- trivial CREDITS entry updates. (Not that this file means much any more)
- remove arjans dead redhat.com address from powernow driver

Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agofs/Kconfig: move ext2, ext3, ext4, JBD, JBD2 out
Alexey Dobriyan [Mon, 20 Oct 2008 18:28:45 +0000 (22:28 +0400)]
fs/Kconfig: move ext2, ext3, ext4, JBD, JBD2 out

Use fs/*/Kconfig more, which is good because everything related to one
filesystem is in one place and fs/Kconfig is quite fat.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoRemove empty imacfb.c file
Linus Torvalds [Mon, 20 Oct 2008 18:32:09 +0000 (11:32 -0700)]
Remove empty imacfb.c file

Commit 7c08c9ae0c145807c0dae4a55f240fa3d4fd5262 ("efifb/imacfb
consolidation + hardware support") claimed to remove imacfb entirely and
merge its DMI table into the efifb driver.  So far so good, but the diff
actually ended up just generating an empty file instead of removing it.

[ Technical reason: the patch header looked like

  diff -puN drivers/video/imacfb.c~efifb-imacfb-consolidation-hardware-support drivers/video/imacfb.c
  --- a/drivers/video/imacfb.c~efifb-imacfb-consolidation-hardware-support
  +++ a/drivers/video/imacfb.c
  @@ -1,376 +0,0 @@

  which git will think is a truncation, not a delete.  Git wants to see a
  target of /dev/null to consider it a delete. ]

So remove it properly.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoPCI: fix pci_ioremap_bar() on s390
Heiko Carstens [Mon, 20 Oct 2008 17:45:43 +0000 (19:45 +0200)]
PCI: fix pci_ioremap_bar() on s390

s390 doesn't have ioremap_*, so protect the definition of the new
pci_ioremap_bar function with CONFIG_HAS_IOMEM to avoid build breakage.

Acked-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoUpdate .gitignore files for generated targets
Linus Torvalds [Mon, 20 Oct 2008 18:24:31 +0000 (11:24 -0700)]
Update .gitignore files for generated targets

The generated 'capflags.c' file wasn't properly ignored, and the list of
files in scripts/basic/ wasn't up-to-date.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoPCI: fix AER capability check
Yu Zhao [Sun, 19 Oct 2008 12:35:20 +0000 (20:35 +0800)]
PCI: fix AER capability check

The 'use pci_find_ext_capability everywhere' cleanup brought a new bug,
which makes the AER stop working.  Fix it by actually using find_ext_cap
instead of just find_cap.  Drop the unused config space size define while
we're at it.

Signed-off-by: Yu Zhao <yu.zhao@intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: use pci_find_ext_capability everywhere
Jesse Barnes [Sun, 19 Oct 2008 00:33:19 +0000 (17:33 -0700)]
PCI: use pci_find_ext_capability everywhere

Remove some open coded (and buggy) versions of pci_find_ext_capability
in favor of the real routine in the PCI core.

Tested-by: Tomasz Czernecki <czernecki@gmail.com>
Acked-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Reviewed-by: Matthew Wilcox <willy@linux.intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: remove #ifdef DEBUG around dev_dbg call
Jesse Barnes [Sun, 19 Oct 2008 00:19:38 +0000 (17:19 -0700)]
PCI: remove #ifdef DEBUG around dev_dbg call

No longer needed since we don't use the function symbol stuff anymore.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI hotplug: fix get_##name return value problem
Kenji Kaneshige [Mon, 29 Sep 2008 08:37:05 +0000 (17:37 +0900)]
PCI hotplug: fix get_##name return value problem

The commit 356a9d6f3dd283f83861adf1ac909879f0e66411 (PCI: fix hotplug
get_##name return value problem) doesn't seem to be merged properly.
Because of this, PCI hotplug no longer works (Read/Write PCI hotplug
files always returns -ENODEV).

This patch fixes wrong check of try_module_get() return value check in
get_##name().

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: document the pcie_aspm kernel parameter
Chuck Ebbert [Thu, 25 Sep 2008 00:40:34 +0000 (20:40 -0400)]
PCI: document the pcie_aspm kernel parameter

It can be handy so make sure people know about it.

Signed-off-by: Chuck Ebbert <cebbert@redhat.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: introduce an pci_ioremap(pdev, barnr) function
Arjan van de Ven [Sun, 28 Sep 2008 23:36:11 +0000 (16:36 -0700)]
PCI: introduce an pci_ioremap(pdev, barnr) function

A common thing in many PCI drivers is to ioremap() an entire bar.  This
is a slightly fragile thing right now, needing both an address and a
size, and many driver writers do.. various things there.

This patch introduces an pci_ioremap() function taking just a PCI device
struct and the bar number as arguments, and figures this all out itself,
in one place.  In addition, we can add various sanity checks to this
function (the patch already checks to make sure that the bar in question
really is a MEM bar; few to no drivers do that sort of thing).

Hopefully with this type of API we get less chance of mistakes in
drivers with ioremap() operations.

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agopowerpc/PCI: Add legacy PCI access via sysfs
Benjamin Herrenschmidt [Tue, 14 Oct 2008 00:55:31 +0000 (11:55 +1100)]
powerpc/PCI: Add legacy PCI access via sysfs

This patch adds support for legacy_io and legacy_mem files in
bus class directories in sysfs for powerpc

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: Add ability to mmap legacy_io on some platforms
Benjamin Herrenschmidt [Fri, 3 Oct 2008 09:49:32 +0000 (19:49 +1000)]
PCI: Add ability to mmap legacy_io on some platforms

This adds the ability to mmap legacy IO space to the legacy_io files
in sysfs on platforms that support it. This will allow to clean up
X to use this instead of /dev/mem for legacy IO accesses such as
those performed by Int10.

While at it I moved pci_create/remove_legacy_files() to pci-sysfs.c
where I think they belong, thus making more things statis in there
and cleaned up some spurrious prototypes in the ia64 pci.h file

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: probing debug message uniformization
Vincent Legoll [Sun, 12 Oct 2008 10:26:12 +0000 (12:26 +0200)]
PCI: probing debug message uniformization

This patch uniformizes PCI probing debug boot messages with dev_printk()
intead of manual printk()

It changes adress range output from [%llx, %llx] to [%#llx-%#llx], like
in pci_request_region().

For example, it goes from the mixed-style:

PCI: 0000:00:1b.0 reg 10 64bit mmio: [f4280000f4283fff]
pci 0000:00:1b.0: PME# supported from D0 D3hot D3cold

to uniform:

pci 0000:00:1b.0: reg 10 64bit mmio: [0xf4280000-0xf4283fff]
pci 0000:00:1b.0: PME# supported from D0 D3hot D3cold

This patch has been runtime tested, boot log messages diffed, everything
looks OK.

Acked-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Vincent Legoll <vincent.legoll@gmail.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: support PCIe ARI capability
Yu Zhao [Tue, 14 Oct 2008 06:02:53 +0000 (14:02 +0800)]
PCI: support PCIe ARI capability

This patch adds support for PCI Express Alternative Routing-ID
Interpretation (ARI) capability.

The ARI capability extends the Function Number field of the PCI Express
Endpoint by reusing the Device Number which is otherwise hardwired to 0.
With ARI, an Endpoint can have up to 256 functions.

Signed-off-by: Yu Zhao <yu.zhao@intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: centralize the capabilities code in probe.c
Zhao, Yu [Mon, 13 Oct 2008 11:49:55 +0000 (19:49 +0800)]
PCI: centralize the capabilities code in probe.c

This patch centralizes the initialization and release functions of
various PCI capabilities in probe.c, which makes the introduction
of new capability support functions cleaner in the future.

Signed-off-by: Yu Zhao <yu.zhao@intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: centralize the capabilities code in pci-sysfs.c
Zhao, Yu [Mon, 13 Oct 2008 12:01:00 +0000 (20:01 +0800)]
PCI: centralize the capabilities code in pci-sysfs.c

This patch centralizes functions used to add and remove sysfs entries
for various capabilities. With this cleanup, the code is more readable
and easier for adding new capability related functions.

Signed-off-by: Yu Zhao <yu.zhao@intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: fix 64-vbit prefetchable memory resource BARs
Peter Chubb [Mon, 13 Oct 2008 00:49:04 +0000 (11:49 +1100)]
PCI: fix 64-vbit prefetchable memory resource BARs

Since patch 6ac665c63dcac8fcec534a1d224ecbb8b867ad59 my infiniband
controller hasn't worked.  This is because it has 64-bit prefetchable
memory, which was mistakenly being  taken to be 32-bit memory.  The
resource flags in this case are PCI_BASE_ADDRESS_MEM_TYPE_64 |
PCI_BASE_ADDRESS_MEM_PREFETCH.

This patch checks only for the PCI_BASE_ADDRESS_MEM_TYPE_64 bit; thus
whether the region is prefetchable or not is ignored.  This fixes my
Infiniband.

Reviewed-by: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Peter Chubb <peterc@gelato.unsw.edu.au>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: replace cfg space size (256/4096) by macros.
Zhao, Yu [Mon, 13 Oct 2008 11:18:07 +0000 (19:18 +0800)]
PCI: replace cfg space size (256/4096) by macros.

This is a cleanup that changes all PCI configuration space size
representations to the macros (PCI_CFG_SPACE_SIZE and
PCI_CFG_SPACE_EXP_SIZE). And the macros are also moved from
drivers/pci/probe.c to drivers/pci/pci.h.

Signed-off-by: Yu Zhao <yu.zhao@intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: use resource_size() everywhere.
Zhao, Yu [Mon, 13 Oct 2008 11:24:28 +0000 (19:24 +0800)]
PCI: use resource_size() everywhere.

This is a cleanup that replaces the resource calculation formula with
resource_size().

Signed-off-by: Yu Zhao <yu.zhao@intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: use same arg names in PCI_VDEVICE comment
Zhao, Yu [Mon, 13 Oct 2008 11:36:05 +0000 (19:36 +0800)]
PCI: use same arg names in PCI_VDEVICE comment

This cleanup makes the argument names in PCI_VDEVICE comment consistent
with those used in its definition.

Signed-off-by: Yu Zhao <yu.zhao@intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI hotplug: rpaphp: make debug var unique
Kristen Carlson Accardi [Mon, 13 Oct 2008 16:59:12 +0000 (09:59 -0700)]
PCI hotplug: rpaphp: make debug var unique

Change debug variable name to one more unique to this driver.

Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: use %pF instead of print_fn_descriptor_symbol() in quirks.c
Yinghai Lu [Thu, 25 Sep 2008 02:04:33 +0000 (19:04 -0700)]
PCI: use %pF instead of print_fn_descriptor_symbol() in quirks.c

Use %pF instead of print_fn_descriptor_symbol() in quirks.c to get the name of
the hook we're calling.

Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: fix hotplug get_##name return value problem
Zhao, Yu [Mon, 22 Sep 2008 06:26:05 +0000 (14:26 +0800)]
PCI: fix hotplug get_##name return value problem

Currently, get_##name in pci_hotplug_core.c will return 0 if module
unload wins the race between unload & reading the hotplug file.  Fix
that case to return -ENODEV like it should.

Reviewed-by: Alex Chiang <achiang@hp.com>
Reviewed-by: Matthew Wilcox <willy@linux.intel.com>
Signed-off-by: Yu Zhao <yu.zhao@intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: fix sparse warning in pci_remove_behind_bridge
Stephen Hemminger [Sat, 6 Sep 2008 04:45:36 +0000 (21:45 -0700)]
PCI: fix sparse warning in pci_remove_behind_bridge

Get rid of the second definition of dev which hides the earlier one in
the argument list and causes a warning from sparse.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: fix MSI-HOWTO.txt info about MSI-X MMIO space
Roland Dreier [Mon, 22 Sep 2008 21:55:24 +0000 (14:55 -0700)]
PCI: fix MSI-HOWTO.txt info about MSI-X MMIO space

The current MSI-HOWTO.txt says that device drivers should not request the
memory space that contains MSI-X tables.  This is because the original
MSI-X implementation did a request_mem_region() on this space, but that
code was removed long ago (in the pre-git era, in fact).  Years after the
code was changed, we might as well clean up the documention to avoid a
confusing mention of requesting regions: drivers using MSI-X can just use
pci_request_regions() just like any other driver, and so there's no need
for MSI-HOWTO.txt to talk about this at all.

Signed-off-by: Roland Dreier <roland@digitalvampire.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: fix -Wakpm warnings in pci_pm_init debug output
Jesse Barnes [Tue, 23 Sep 2008 18:43:34 +0000 (11:43 -0700)]
PCI: fix -Wakpm warnings in pci_pm_init debug output

Checkpatch would have complained about this but neither Bjorn nor myself
ran it prior to pushing.  Fixup the issues Andrew pointed out.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: connect struct pci_dev to struct pci_slot
Alex Chiang [Tue, 2 Sep 2008 15:40:51 +0000 (09:40 -0600)]
PCI: connect struct pci_dev to struct pci_slot

The introduction of struct pci_slot (f46753c5e354b857b20ab8e0fe7b25)
added a struct pci_slot pointer to struct pci_dev, but we forgot to
associate the two.

Connect the two structs together; the interesting portions of the object
lifetimes are:

- when a new pci_slot is created, connect it to the appropriate
  pci_dev's. A single pci_slot may be associated with multiple
  pci_dev's, e.g. any multi-function PCI device.

- when a pci_slot is released, look for all the pci_dev's it was
  associated with, and set their pci_slot pointers to NULL

- when a pci_dev is created, look for slots to associate with.

Note -- when a pci_dev is released, we don't need to do any bookkeeping,
since pci_slot's do not have pointers to pci_dev's.

Signed-off-by: Alex Chiang <achiang@hp.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: make CPU list affinity visible
Mike Travis [Sat, 6 Sep 2008 12:46:42 +0000 (05:46 -0700)]
PCI: make CPU list affinity visible

Stephen Hemminger wrote:
> Looks like Mike created cpulistaffinty in sysfs but never completed
> the job.

This patch hooks things up correctly, taking care to remove the new file
when the bus is destroyed.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: Mike Travis <travis@sgi.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: utilize calculated results when detecting MSI features
Jike Song [Tue, 9 Sep 2008 15:42:03 +0000 (23:42 +0800)]
PCI: utilize calculated results when detecting MSI features

In msi_capability_init, we can make use of the calculated results
instead of calling is_mask_bit_support and is_64bit_address twice.

Signed-off-by: Jike Song <albcamus@gmail.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: pciehp: replace printk with dev_printk
Taku Izumi [Fri, 5 Sep 2008 03:11:26 +0000 (12:11 +0900)]
PCI: pciehp: replace printk with dev_printk

This patch replaces printks within pciehp module with dev_printks.

Signed-off-by: Taku Izumi <izumi.taku@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: pciehp: change name tag of "hpdriver_portdrv" variable
Taku Izumi [Fri, 5 Sep 2008 03:09:43 +0000 (12:09 +0900)]
PCI: pciehp: change name tag of "hpdriver_portdrv" variable

I think an appropriate name tag of "hpdriver_portdrv" variable
is "pciehp" rather than "hpdriver".

Signed-off-by: Taku Izumi <izumi.taku@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agox86/PCI: irq and pci_ids patch for Intel Ibex Peak DeviceIDs
Seth Heasley [Thu, 28 Aug 2008 22:40:59 +0000 (15:40 -0700)]
x86/PCI: irq and pci_ids patch for Intel Ibex Peak DeviceIDs

This patch updates the Intel Ibex Peak (PCH) LPC and SMBus Controller
DeviceIDs.

The LPC Controller ID is set by Firmware within the range of
0x3b00-3b1f.  This range is included in pci_ids.h using min and max
values, and irq.c now has code to handle the range (in lieu of 32
additions to a SWITCH statement).

The SMBus Controller ID is a fixed-value and will not change.

Signed-off-by: Seth Heasley <seth.heasley@intel.com>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: pciehp: fix irq initialization
Kenji Kaneshige [Fri, 22 Aug 2008 08:16:48 +0000 (17:16 +0900)]
PCI: pciehp: fix irq initialization

Current pciehp driver gets irq number from pci_dev->irq. But because
pciehp driver is a pci express port service driver, it should get irq
number from pcie_device->irq.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: Document that most pci options are shared between i386 and x86-64
Andi Kleen [Fri, 22 Aug 2008 07:53:39 +0000 (09:53 +0200)]
PCI: Document that most pci options are shared between i386 and x86-64

Since the code is shared pretty much most of the pci= options are shared,
but kernel-parameters.txt marked most of them as i386 only.

Signed-off-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: tidy PME support messages
Bjorn Helgaas [Fri, 22 Aug 2008 15:37:02 +0000 (09:37 -0600)]
PCI: tidy PME support messages

This patch changes these two messages:

    pci 0000:00:03.0: supports D1
    pci 0000:00:03.0: supports D2

to this:

    pci 0000:00:03.0: supports D1 D2

It also trivially converts a "dev_printk(KERN_INFO, ...)" to
"dev_info(...)".

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: ibmphp: list_for_each to list_for_each_entry-checkpatch cleanups
akpm@linux-foundation.org [Fri, 22 Aug 2008 20:30:14 +0000 (13:30 -0700)]
PCI: ibmphp: list_for_each to list_for_each_entry-checkpatch cleanups

Please run checkpatch prior to sending patches, this one fixes several style
issues with the list_for_each conversion patch.

Cc: Cordelia Sam <cordesam@gmail.com>
Cc: Cordelia Sam <cordsam@linux.vnet.ibm.com>
Cc: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: ibmphp: list_for_each to list_for_each_entry
akpm@linux-foundation.org [Fri, 22 Aug 2008 20:28:17 +0000 (13:28 -0700)]
PCI: ibmphp: list_for_each to list_for_each_entry

Make code more readable with list_for_each_entry().

Signed-off-by: Cordelia Sam <cordesam@gmail.com>
Cc: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: follow lspci device/vendor style
Bjorn Helgaas [Mon, 25 Aug 2008 21:45:20 +0000 (15:45 -0600)]
PCI: follow lspci device/vendor style

Use "[%04x:%04x]" for PCI vendor/device IDs to follow the format
used by lspci(8).

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agox86/PCI: follow lspci device/vendor style
Bjorn Helgaas [Mon, 25 Aug 2008 21:44:59 +0000 (15:44 -0600)]
x86/PCI: follow lspci device/vendor style

Use "[%04x:%04x]" for PCI vendor/device IDs to follow the format
used by lspci(8).

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: change MSI-x vector to 32bit
Yinghai Lu [Sat, 16 Aug 2008 02:36:45 +0000 (19:36 -0700)]
PCI: change MSI-x vector to 32bit

We are using 28bit pci (bus/dev/fn + 12 bits) as irq number, so the
cache for irq number should be 32 bit too.

Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Cc: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI PM: Introduce function pci_wake_from_d3
Rafael J. Wysocki [Mon, 18 Aug 2008 19:38:00 +0000 (21:38 +0200)]
PCI PM: Introduce function pci_wake_from_d3

Many device drivers use the following sequence of statements to enable
the device to wake up the system while being in the D3_hot or D3_cold
low power state:

        pci_enable_wake(pdev, PCI_D3hot, 1);
        pci_enable_wake(pdev, PCI_D3cold, 1);

However, the second call is not necessary if the first one succeeds (the
ordering of the statements above doesn't matter here) and it may even be
harmful, because we are not supposed to enable PME# after the wake-up
power has been enabled for the device.

To allow drivers to overcome this problem, introduce function
pci_wake_from_d3() that will enable the device to wake up the system
from any of D3_hot and D3_cold as long as the wake-up from at least one
of them is supported.

Acked-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: allow quirks to be compiled out
Thomas Petazzoni [Tue, 19 Aug 2008 08:28:24 +0000 (10:28 +0200)]
PCI: allow quirks to be compiled out

This patch adds the CONFIG_PCI_QUIRKS option which allows to remove all
the PCI quirks, which are not necessarily used on embedded systems when
PCI is working properly. As this is a size-reduction option, it depends
on CONFIG_EMBEDDED. It allows to save almost 12 kilobytes of kernel
code:

   text    data     bss     dec     hex filename
1287806  123596  212992 1624394  18c94a vmlinux.old
1275854  123596  212992 1612442  189a9a vmlinux
 -11952       0       0  -11952   -2EB0 +/-

This patch has originally been written by Zwane Mwaikambo
<zwane@arm.linux.org.uk> and is part of the Linux Tiny project.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: Check dynids driver_data value for validity
Jean Delvare [Sun, 17 Aug 2008 19:06:59 +0000 (21:06 +0200)]
PCI: Check dynids driver_data value for validity

Only accept dynids whose driver_data value matches one of the driver's
pci_driver_id entries. This prevents the user from accidentally passing
values the drivers do not expect.

Cc: Milton Miller <miltonm@bga.com>
Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>