Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
[PATCH] ia64: trivial sba_iommu patch
I'm aligning the 2.4 and 2.5 versions of arch/ia64/hp/common/sba_iommu.c
and found a couple nits in the 2.5 version. No functional change, just
whitespace, comment, and parameter name changes (and I made
one function static).
[PATCH] ia64: fix early printk for sn2
Quick fix for the early printk function name for sn2. Goes along with a
patch I'm about to send to Andrew.
[PATCH] ia64: fix for include/asm-ia64/acpi.h
asm/acpi.h relies on struct pci_vector_struct which is defined in
asm/system.h.
[PATCH] ia64: include/asm-ia64/sn/router.h cleanup
Minor cleanup.
[PATCH] ia64: sn2 header file cleanup
This patch removes a ton of pointless big endian defines for some
registers on SN2 and cleans up the #include hierachy making it include
some really big header files only when they are really needed.
[PATCH] ia64: pass si_isr for a few more signal sources
This patch changes the kernel such that si_isr gets setup for hardware
breakpoints, single-step, and taken-branch traps. This is useful, e.g., to
determine what kind of hw breakpoint triggered the signal.
[PATCH] ia64: small sn2 cleanup
Attached is a small cleanup patch for the sn2 header files which removes
some cases of excessive header file inclusion.
ia64: Control /proc/bus/mckinley/zx1 via separate SBA_PROC_FS macro and turn
SBA_PROC_FS off by default (it's too much of a scalability bottleneck).
ia64: In <asm-ia64/param.h>, do not include <linux/config.h> outside
the #ifdef __KERNEL__ bracket. Doing so pollutes the user-
level namespace. Bug report & proposed fix by GOTO Masanori.
[PATCH] ia64: minor perfmon2 patch
This patch fixes a typo in pfm_write_pmcs() in the test for the default
value. The code was using the lop index instead of the register
index in the PMC_DFL_VAL() macro. This was causing valid values
for some PMCs to be rejected.
ia64: Re-enable /proc/sal support. Bug reported by Stephane Eranian, patch
by Jesse Barnes.
[PATCH] ia64: protect PAL mapping printk with EFI_DEBUG
Having this print out for every CPU on a large system was a pain, so
protect the printk with EFI_DEBUG.
[PATCH] ia64: turn off SLIT debugging
This code works pretty well now, so we don't need to dump all this stuff
at boot time (esp. on 128 node systems).
[PATCH] ia64: update Kconfig comment for NR_CPUS
[PATCH] ia64: cpumask_t fixes
This patch coverts a few spots to use cpumask_t instead of unsigned
long.
Some more __attribute_used__ fixes.
[PATCH] ia64: unwind.c fix for spinlock-debug compilation
If you try to compile 2.6.0-test[45] with spinlock debugging on, then
unwind.c won't compile, because it uses a #define magic that hides
the variable in the spinlock debugging code (also called magic).
[PATCH] ia64: MINSIGSTKSZ on ia32
MINSIGSTKSZ is defined differently for i386 and ia64. This patch improves
compatibility with apps which use sigaltstack(2) with sizes between
MINSIGSTKSZ_IA32 and MINSIGSTKSZ.
[PATCH] ia64: fix typo in spinlock.h
Initial merge with 2.6.0-test5.
Merge tiger.hpl.hp.com:/data1/bk/vanilla/linux-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
Mark initcall macros with __attribute_used__ so the definitions do not
get optimized away by the compiler (such as the latest GCC pre-3.4).
[PATCH] ia64: fix current usage in sn2 code
For some reason, we had a structure field called 'current'. This patch
fixes that.
[PATCH] ia64: misc. sn2 updates
Fix a couple of sn2 files.
ia64: Drop unnecessary version check in sba_iommu.c.
ia64: Fix things so that they compile with the latest GCC 3.4, which optimize
away static variables with no compiler-visible use.
[PATCH] ia64: remove unused sn2 header files
This patch eliminates two unused SN2 header files:
include/asm-ia64/sn/klclock.h and include/asm-ia64/sn/ioc3.h.
ia64: Direct sys_fadvise64() to sys_fadvise64_64().
ia64: Fix asm-ia64/acpi.h typo & name-collision.
[PATCH] ia64: Add HP AGP 8X bridge and fix ACPI claim
The following patch to the HP ZX1 GART driver
- adds recognition of the HWP0007 device (an AGP 8X bridge)
- fixes the use of acpi_get_devices()
The problem with acpi_get_devices() is that it always returns AE_OK,
except when the callback (zx1_gart_probe()) returns a failure. That
means agp_hp_init() cannot use the status from acpi_get_devices()
to distinguish between (1) an AGP bridge was found and successfully
initialized, and (2) no AGP bridge was found at all.
ia64: Finnish adding ECC support. Based on patch by Suresh Siddah.
[PATCH] ia64: perfmon2 update
This patch fixes the following:
- correct a bug in pfm_close() which was causing some per-process
sessions to not unreserve on exit.
- changed the permission checking to load a context to allow more
flexibility, modeled after ptrace_attach().
ia64: Document the typo that made it into the definition of MINSTKSZ
(last two numbers got transposed). Thanks to Arun Sharma for
finding this. New glibc's will have the value corrected, but
we leave the kernel at the old (bogus) value to retain backwards-
compatibility (and while a strange value, the old value works just
fine).
ia64: Drop unnecessary fadvise64_64() bloat (it isn't needed on 64-bit
platforms).
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
[PATCH] ia64: perfmon2 update
This patch:- added support for the fake HP simulator PMU. Most of the
code provided by Ian Wienand. Allows a kernel compiled for
the simulator and with CONFIG_PERFMON enabled to boot.
- cleaned up all CTX_*() macros for the context state changes.
- relaxed constraint for system-wide session by allowing all
task with access to the context's file descriptor to
manipulate the context as long as they run on the CPU the
context is attached to.
[PATCH] ia64: trim.bottom trims the wrong entry
efi_memmap_walk() repeatedly trims the same
entry, instead of trimming each of the entries in the granule.
[PATCH] ia64: Fix "nosmp" breakage from cpumask patch.
Patch should be self-explanatory.
[PATCH] ia64: fix PM config option
CONFIG_PM is set without a menu entry to turn it on/off.
[PATCH] ia64: clean up acpi_boot_init()
I was confused about this bit
of code in acpi_boot_init():
smp_boot_data.cpu_count = available_cpus;
if (available_cpus == 0) {
printk(KERN_INFO "ACPI: Found 0 CPUS; assuming 1\n");
available_cpus = 1; /* We've got at least one of these, no? */
}
smp_build_cpu_map();
because it first saves available cpus in smp_boot_data, then potentially
modifies available_cpus. This looked at first like a bug, but I think
actually works out correctly, because smp_boot_data.cpu_count is only
used in smp_build_cpu_map(), and if cpu_count is zero, it prevents us
from looking at smp_boot_data.cpu_phys_id[0], which hasn't been
initialized.
This should only happen with really buggy firmware, so I'm not even
sure it's worth doing more than panicking, but if we're going to deal
with it, I propose the following patch to avoid even the appearance
of a bug. This just does what acpi_parse_lsapic() would have done
if the firmware tables were correct.
[PATCH] ia64: oprofile support
I have revised the oprofile patch for ia64 to provide just the basic
timer interrupt mechanism to avoid interferring with the perfmon 2.0
support. I have verified the oprofile ia64 patch applies cleanly and
build a working kernel with the 2.6.0-test4 kernel and the
linux-2.6.0-test4-ia64-030826.diff.bz2 patch.
More work is required to get oprofile to work with the perfmon 2.0.
However, the patch as it is currently implements should not cause
problems for the perfom 2.0 support.
[PATCH] Fix Slowdown in /proc/kallsyms
Out by one error broke caching of results in /proc/kallsyms, slowing
reading to a crawl.
Patch by Arun to make test-popseg.x86 work again: I've tracked this down to
mm/memory.c:do_no_page() dereferencing vma->vm_file. The problem is that
the vma used for mapping the GDT has vma->vm_ops->nopage, but vma->vm_file
is NULL.
Andrew Morton agreed with this patch, but for some reason, it didn't make
it into 2.6.0-test4.
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
Manual merge.
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
(kallsyms_open): Fix oops caused by uninitialized memory.
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
Merge with 2.6.0-test3.
tables.c:
Check for X__DSDT in acpi_get_table_header_early()
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
ia64: Merge with 2.6.0-test2.
Update with latest version from Linus' tree.
[PATCH] Use local_t for module reference counts
Cset exclude: davidm@tiger.hpl.hp.com|ChangeSet|20030711020407|51156
Cset exclude: davidm@tiger.hpl.hp.com|ChangeSet|20030709222337|34756
Undo (most of) the ia64-specific changes to pci_irq.c.
iosapic_parse_prt() is the right place to do those.
Merge with 2.6.0-pre1.
Remove extra blank line.
Clean up some no-longer-needed ia64 workarounds.
Move EARLY_PRINTK config options to this repository, where the code lives.
ia64: Merge with 2.5.75.
Manual merge with 2.5.74+.
Cset exclude: davidm@tiger.hpl.hp.com|ChangeSet|20030621161908|14888
Cset exclude: davidm@tiger.hpl.hp.com|ChangeSet|20030621161905|15263
osl.c:
(acpi_os_readable): Correct type of 2nd arg to acpi_size.
Sync with Linus' tree.
Update ia64 defconfig.
More ppc64 bad merge fixing...
[PATCH] ia64: add missing __exit_p() to i460-agp.c
Drop export of init_thread_union alltogether.
Simplify the irq_desc[] patch to make it more acceptable for the
main tree.
Fix weird PPC64 merge errors.
defconfig:
Update defconfig.
Revert back to adjusting RPCSVC_MAXPAGES.
Don't declare init_thread_union in sched.h if there is an architecture-
specific task-struct-allocator.
[PATCH] ia64: early_printk for SGI SN2
More 2.5.72 cleanup/syncing.
Merge conflicts with 2.5.72.
Make hp-agp.c compile again. It's still broken, because the generic
AGP code once again thinks all AGP bridges must be PCI devices.
Add back /proc/sys/kernel/cache_decay_ticks.
Fix <linux/pci.h> so it can be used on platforms with CONFIG_PCI off.
Fix serial HCDP and ACPI support for serial driver.
Merge with 2.5.71.
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
[PATCH] make FIXMAP user page reading more portable
This patch vs 2.5.70 works fine for me on x86. include/asm-x86_64/fixmap.h
needs the macros added for its vsyscall page too.
memory.c:
Undo last change.
Allow read accesses to the entire FIXMAP range. This lets gdb see the
instructions in the gate page (there is no security issue, because the
gate page only contains instructions or non-security-sensitive data such
as the ELF headers, etc.).
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
Remove include of <asm/unistd.h> now that force_successful_syscall()
is back in ptrace.h.
Fix gratuitous PPC64 changes (were probably caused by a bad bk merge
with Linus' tree).
Clean up tg3 driver to avoid relying on PCI-DMA implementation internals. This removes code and gets
rid of the (incorrect) dependence on PCI_DMA_BUS_IS_PHYS.
Adjust for force_successful_syscall_return() having moved back to
ptrace.h.
Don't try to support uncached accesses via read()/write().
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
More small cleanups to /dev/mem driver and for stack dumping.
Fix up drivers/char/mem.c some more.
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
Clean up drivers/char/mem.c to reduce #ifdef bloat. Make it work better on ia64.
fork.c:
More minor cleanups
fork.c:
Move task_cache back to its original place.
Fix task creation/destruction to make it possible for the thread_info and the
task_struct to be next to each other.
Add force_successful_syscall_return() to remaining platforms.
Adjust show_trace()/show_stack() interfce to make them truly portable:
first arg is task whose trace should be shown, second arg is stack
pointer value starting from which the trace should be shown. Either
(or both) arguments can be NULL.
[PATCH] fix TCP roundtrip time update code
One of those very-hard-to-track-down, trivial-to-fix kind of problems:
without this patch, TCP roundtrip time measurements will corrupt the
routing cache's RTT estimates under heavy network load (the bug causes
RTAX_RTT to go negative, but since its type is u32, you end up with a
huge positive value...). From there on, later TCP connections quickly
will go south.
The typo was introduced 8 months ago in v1.29 of the file by the patch
entitled "Cleanup DST metrics and abstrct MSS/PMTU further".
ia64: Fix backtrace printing so it doesn't output tabs anymore.
[PATCH] Fix ps/2 mouse and keyboard on I2000
I finally got sufficiently fed up to fix the PS/2 keyboard. The
problem is that the generic code requests an ISA interrupt directly,
instead of via isa_irq_to_vector().
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
Merge tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
into tiger.hpl.hp.com:/data1/bk/lia64/linux-ia64-2.5
Fix locking comments for time interpolator routines.
Overhaul time-interpolation support. Platforms that do not ever wish to
use time-interpolation should NOT define CONFIG_TIME_INTERPOLATION.
There will be no overhead on such platforms.
If you have a platform that has exactly one time-interpolation source,
define CONFIG_TIME_INTERPOLATION and let the generic code take care
of updating "last_nsec_offset" as needed, but never call
register_time_interpolator(). Instead, hard-code the updating of
last_nsec_offset in do_gettimeofday() (and do_settimeofday()).
This will minimize overhead to a single load & NULL check (everything else
gets inlined).
If you have a platform that needs to support multiple interpolation
sources, register each source with regsiter_time_interpolator().
Each call to time_interpolator_update()/time_interpolator_reset() will
then incur an indirect function call. C'est la vie.
Undo previous pasting-operator "fix". Code was right and pre3.4 compiler was
(temporarily) broken.
Add two hooks for high-precision time-interpolation. Based on patch by
Jes Sorensen.
Small driver fixes.
Undo timer breakage. Makes profil() work again.
Change last_time_offset into last_nsec_offset and make it work for real.
Misc fixes: PCI ids and prefetch in page-table tear-down.
Add /proc/sys/kernel/cache_decay_ticks.
Fix off-by-one error to make NFSd work with PAGE_SIZE = 64KB.
Add MM_VM_SIZE() support.
Add EARLY_PRINTK support.
Minor build fixes/enhancements.
select() speedup.
Various minor driver fixes.
Support serial ports in ACPI namespace and serial consoles via HCDP.
Toolchain bug workarounds.
AGP fixes for ia64.
Make ACPI work on ia64.
Generic DRM support for platforms that cant_use_aperture.
Add module_arch_cleanup() callback.