Implemented support for "wake" GPEs via interaction between
GPEs and the _PRW methods. Every GPE that is pointed to by
one or more _PRWs is identified as a WAKE GPE and by default
will no longer be enabled at runtime. Previously, we were
blindly enabling all GPEs with a corresponding _Lxx or _Exx
method - but most of these turn out to be WAKE GPEs anyway.
We believe this has been the cause of thousands of
"spurious" GPEs on some systems.
This new GPE behavior is can be reverted to the original
behavior (enable ALL GPEs at runtime) via a runtime flag.
Fixed a problem where aliased control methods could not
access objects properly. The proper scope within the
namespace was not initialized (transferred to the target of
the aliased method) before executing the target method.
Fixed a potential race condition on internal object
deletion on the return object in AcpiEvaluateObject.
Integrated a fix for resource descriptors where both
_MEM and _MTP were being extracted instead of just _MEM.
(i.e. bitmask was incorrectly too wide, 0x0F instead of 0x03.)
Added a special case for ACPI_ROOT_OBJECT in AcpiUtGetNodeName,
preventing a fault in some cases.
Updated Notify() values for debug statements in evmisc.c
Return proper status from AcpiUtMutexInitialize,
not just simply AE_OK.
I figured the best way to stop beeing bothered by users trying to run
preempt was to fix it ;)
Here's a first batch that close some races we had when testing regs->msr
for altivec or FPU enable, then doing the giveup_* function. A preempt
in between those would have caused us to save a stale altivec or FPU
context.
The dmasound driver occasionally hangs a process on exit.
Apparently there is a possible case where the sound HW stops draining
output samples and the driver waits forever in its release() callback.
It should check for signals(), but it seems signal_pending() never
returns 1 when the process is beeing killed (implicit release() of files
on exit).
This patch adds a safety timeout to the release() function to make sure
we can at least close the driver. I'll try to find the reason we aren't
driving samples later, but it is better to have a safety just incase the
sound clock goes berserk for some reason.
This fixes some racy code in the management of asynchronous brightness
and battery requests in the via-pmu driver used on powerbooks. This
should fix some preempt related problems (there is no SMP powerbook yet :)
The ppc32 syscall entry code could access the thread info flags in a
racy way, thus potentially losing bits sets there at interrupt time or
by another CPU, like NEED_RESCHED or SIGPENDING (ouch !).
This fixes it by moving the potentially racy bit to a different field (I
preferred that rather than turning the access into an atomic operation
for performances reasons).
Russell King [Thu, 25 Mar 2004 17:58:50 +0000 (17:58 +0000)]
[ARM] Remove Anakin machine support.
Anakin has not been maintained since it was (partially) merged, and
the maintainers appear to ignore mail about it. No one appears
willing to maintain it either. However, some unrelated kernel
maintainers have been updating various files while they've been
working in the area - which is wasted work for something which
isn't maintained.
Therefore, this cset removes Anakin completely from the kernel.
Len Brown [Thu, 25 Mar 2004 12:40:31 +0000 (07:40 -0500)]
[ACPI] PCI interrupt link routing (Luming Yu)
use _PRS to determine resource type for _SRS
fixes HP Proliant servers
http://bugzilla.kernel.org/show_bug.cgi?id=1590
David Mosberger [Thu, 25 Mar 2004 03:53:10 +0000 (19:53 -0800)]
ia64: Improve layout of cpuinfo_ia64
Stephane made some measurements on the access-pattern of the cpuinfo_ia64
members and based on those results, this patch reorganizes the structure
for better cache-line sharing.
Jeff Garzik [Thu, 25 Mar 2004 02:13:24 +0000 (18:13 -0800)]
[PATCH] SATA: fix and enable sata-sil
sata_sil: it's a widely deployed chipset. Now that we've fixed it, let
users use it.
sata_via: Disk detection via SATA phy registers appear problematic.
Until that problem is identified and fixed, used the old PATA detection
code -- that was used in 2.6.4 -- instead.
Andrew Morton [Thu, 25 Mar 2004 00:09:13 +0000 (16:09 -0800)]
[PATCH] don't show cdroms in /proc/partitions
From: Jens Axboe <axboe@suse.de>
Currently SCSI cdroms show up in /proc/partitions in 2.6, they didn't in
2.4. And ATAPI cdroms don't show up either. Mark both as genhd removable
for now, when they are partionable this can be updated.
Andrew Morton [Thu, 25 Mar 2004 00:08:43 +0000 (16:08 -0800)]
[PATCH] ext2&3: use the right i_flags in find_group_orlov()
Spotted by Jorn Engel <joern@wohnheim.fh-wedel.de>: both the generic and
fs-specific parts of the inode have an i_flags. find_group_orlov() is using
the wrong one.
Andrew Morton [Thu, 25 Mar 2004 00:08:17 +0000 (16:08 -0800)]
[PATCH] ppc64: SMT snooze fix in idle loop
From: Olof Johansson <olof@austin.ibm.com>
A smt_snooze_delay of 0 is supposed to mean "disabled", but current idle
loop logic doesn't take that into account and snoozes immediately instead.
Below patch fixes the logic in the idle loop, as well as cleans up the test
a bit. An idling processor might no longer see a snooze change
immediately, but that's not needed anyway.
Dave Kleikamp [Wed, 24 Mar 2004 08:17:44 +0000 (02:17 -0600)]
JFS: don't use global lock in lmLogSync when local lock is sufficient
I stupidly used the global jfs_log_sem to protect log->sb_list when
implementing the shared journal stuff. Since we already hold
LOG_LOCK, it makes more sense to use that to protect log->sb_list.
This caused horrible serialization when running on lots of jfs
volumes.
Dave Kleikamp [Wed, 24 Mar 2004 08:11:52 +0000 (02:11 -0600)]
JFS: Prevent hang in __lock_metapage
Remove the hold_metapage call from txLog to prevent a hang.
While investigating this one, I audited all functions that held
metapage locks and found several error paths that did not release
them correctly. These are fixed as well.
Bjorn Helgaas [Wed, 24 Mar 2004 06:01:20 +0000 (22:01 -0800)]
[PATCH] ia64: fix name conflict with handle_exception()
I tried to build usb/gadget/file_storage.c (CONFIG_USB_FILE_STORAGE=y),
but it uses "handle_exception()" for its own purposes, which conflicts
with the ia64 definition. ia64 only uses handle_exception() within
arch code, so it seems like we ought to rename it to be ia64-specific.
done_with_exception() looks similar, so I renamed it as well, although
there's no actual conflict.
Dmitry Torokhov [Wed, 24 Mar 2004 05:55:48 +0000 (21:55 -0800)]
[NET_SCHED]: Fix class reporting in TBF qdisc.
The patch below fixes issue with 'tc class show dev <dev>' not showing any
classes when TBF qdisc is present in the chain. PLease consider for
inclusion.
Paul Mackerras [Tue, 23 Mar 2004 23:27:03 +0000 (15:27 -0800)]
[PATCH] fix ppc32 sys_swapcontext
This fixes a bug in the swapcontext system call on ppc32.
On ppc32, the system call entry only saves the volatile registers,
except in the case of a few system calls (e.g. fork) which need all the
registers saved. Swapcontext needs all the registers but we weren't
saving them all. So fixes that.
Paul Mackerras [Tue, 23 Mar 2004 23:26:51 +0000 (15:26 -0800)]
[PATCH] Threaded core dumps for PPC32
At the moment, ppc32 kernels will oops if a threaded program tries to
dump core. We call dump_fpu with a NULL regs pointer, which it tries
to dereference.
This fixes the issue by implementing the hooks used in doing threaded
core dumps properly.
In the long story of "BenH can't get a simple fix right the first time",
please add this one to pmac_zilog, and now people should enjoy really
working sleep again on pmac laptops ...
If the serial port was closed, we could use an uninitialized "pwr_delay"
and pass that to schedule_timeout().
Mark Goodwin [Tue, 23 Mar 2004 09:14:03 +0000 (01:14 -0800)]
[PATCH] ia64: deprecate SN2 linkstatd
This patch against 2.6.5-rc2 affects the SGI/SN platform only. It deprecates
a kernel daemon for our interconnect traffic statistics which has been
replaced by a userland tool.
Alex Williamson [Tue, 23 Mar 2004 08:56:33 +0000 (00:56 -0800)]
[PATCH] ia64: lost sx1000 naming in sba_iommu
Mainly cosmetic, but Bjorn noticed I got a little over zealous in
cleaning out the sx1000 specific init routines in sba_iommu. This adds
back in the ID->name mapping so it doesn't show up as "Unknown".
Jesse Barnes [Tue, 23 Mar 2004 08:55:38 +0000 (00:55 -0800)]
[PATCH] ia64: quiet sn_serial driver
Bjorn pointed out that the sn console driver will spew printks if
compiled in even if no hardware is present. In addition to fixing
that, I took the opportunity to cleanup/correct a few other printks in
that driver.
Andrew Morton [Mon, 22 Mar 2004 23:25:38 +0000 (15:25 -0800)]
[PATCH] fbcon font cloning fix
From: Petr Baudis <pasky@ucw.cz>
This patch fixes a bug which I hit when migrating from 2.4. Basically,
when I do setfont during the system boot, the then-spawned ttys do not
retain the new font but fall back to the default one.
I've tracked that down to a clearly bogus test in fbcon_set_display(),
because vc->vc_font.width is not set at that time yet (no font has been
loaded for the new vc). But even if it would (or this was meant to test
against tmp->vc_font.width), it would mean only *HUGE* fonts would be
retained. And even if there were *two* bugs there and it was supposed to
be less-than there, I couldn't make a sense of the test.
Andrew Morton [Mon, 22 Mar 2004 23:25:24 +0000 (15:25 -0800)]
[PATCH] Work around compiler error in proc_misc.c
From: Alan Stern <stern@rowland.harvard.edu>
A change which was recently applied to fs/proc/proc_misc.c included a comment
about splitting a seq_printf into two pieces to work around a bug in
gcc-2.95.3. Unfortunately gcc-2.96 still chokes on the statements. The
patch below makes it work better and tidies the code up a bit.
Andrew Morton [Mon, 22 Mar 2004 23:24:24 +0000 (15:24 -0800)]
[PATCH] sh: sh-specific framebuffer updates
From: Paul Mundt <lethal@linux-sh.org>
This includes sh-specific framebuffer updates, including updates to hitfb and
pvr2fb, as well as adding sh to the pgprot_writecombine() users in fb_mmap().
Andrew Morton [Mon, 22 Mar 2004 23:24:11 +0000 (15:24 -0800)]
[PATCH] sh: hugetlb support
From: Paul Mundt <lethal@linux-sh.org>
This implements hugetlb support for SH-4. SH-4 supports 1k/4k/64k/1MB pages,
since we're only interested in the 64k/1MB sizes, this is what we support.
The sh hugetlbpage code borrows heavily off of the sparc64 port, which works
fine for these cases at this point in time.