summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Pull acpica into release branchLen Brown2006-06-2928-470/+563
|\
| * ACPI: ACPICA 20060623Bob Moore2006-06-2828-470/+563
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implemented a new acpi_spinlock type for the OSL lock interfaces. This allows the type to be customized to the host OS for improved efficiency (since a spinlock is usually a very small object.) Implemented support for "ignored" bits in the ACPI registers. According to the ACPI specification, these bits should be preserved when writing the registers via a read/modify/write cycle. There are 3 bits preserved in this manner: PM1_CONTROL[0] (SCI_EN), PM1_CONTROL[9], and PM1_STATUS[11]. http://bugzilla.kernel.org/show_bug.cgi?id=3691 Implemented the initial deployment of new OSL mutex interfaces. Since some host operating systems have separate mutex and semaphore objects, this feature was requested. The base code now uses mutexes (and the new mutex interfaces) wherever a binary semaphore was used previously. However, for the current release, the mutex interfaces are defined as macros to map them to the existing semaphore interfaces. Fixed several problems with the support for the control method SyncLevel parameter. The SyncLevel now works according to the ACPI specification and in concert with the Mutex SyncLevel parameter, since the current SyncLevel is a property of the executing thread. Mutual exclusion for control methods is now implemented with a mutex instead of a semaphore. Fixed three instances of the use of the C shift operator in the bitfield support code (exfldio.c) to avoid the use of a shift value larger than the target data width. The behavior of C compilers is undefined in this case and can cause unpredictable results, and therefore the case must be detected and avoided. (Fiodor Suietov) Added an info message whenever an SSDT or OEM table is loaded dynamically via the Load() or LoadTable() ASL operators. This should improve debugging capability since it will show exactly what tables have been loaded (beyond the tables present in the RSDT/XSDT.) Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
* | Pull c-states into release branchLen Brown2006-06-292-19/+17
|\ \
| * | ACPI: C-States: only demote on current bus mastering activityDominik Brodowski2006-06-281-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Only if bus master activity is going on at the present, we should avoid entering C3-type sleep, as it might be a faulty transition. As long as the bm_activity bitmask was based on the number of calls to the ACPI idle function, looking at previous moments made sense. Now, with it being based on what happened this jiffy, looking at this jiffy should be sufficient. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Len Brown <len.brown@intel.com>
| * | ACPI: C-States: bm_activity improvementsDominik Brodowski2006-06-281-12/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not assume there was bus mastering activity if the idle handler didn't get called, as there's only reason to not enter C3-type sleep if there is bus master activity going on. Only for the "promotion" into C3-type sleep bus mastering activity is taken into account, and there only current bus mastering activity, and not pure guessing should lead to the decision on whether to enter C3-type sleep or not. Also, as bm_activity is a jiffy-based bitmask (bit 0: bus mastering activity during this juffy, bit 31: bus mastering activity 31 jiffies ago), fix the setting of bit 0, as it might be called multiple times within one jiffy. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Len Brown <len.brown@intel.com>
| * | ACPI: C-States: accounting of sleep statesDominik Brodowski2006-06-282-4/+7
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Track the actual time spent in C-States (C2 upwards, we can't determine this for C1), not only the number of invocations. This is especially useful for dynamic ticks / "tickless systems", but is also of interest on normal systems, as any interrupt activity leads to C-States being exited, not only the timer interrupt. The time is being measured in PM timer ticks, so an increase by one equals 279 nanoseconds. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Len Brown <len.brown@intel.com>
* | Pull trivial into release branchLen Brown2006-06-291-2/+7
|\ \
| * | ACPI: additional blacklist entry for ThinkPad R40eBartlomiej Swiercz2006-06-281-0/+3
| | | | | | | | | | | | Signed-off-by: Len Brown <len.brown@intel.com>
| * | ACPI: restore comment justifying 'extra' P_LVLx accessAndreas Mohr2006-06-281-2/+4
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | While trying to look for superfluous I/O accesses that can be optimized away, I stumbled upon this ACPI sleep I/O access and couldn't figure out why the hell this dummy op was necessary. After more than one hour of internet research, I had collected a sufficient number of documents (among those very old kernel versions) that finally told me what this dummy read was about: STPCLK# doesn't get asserted in time on (some) chipsets, which is why we need to have a dummy I/O read to delay further instruction processing until the CPU is fully stopped. Signed-off-by: Andreas Mohr <andi@lisas.de> Signed-off-by: Len Brown <len.brown@intel.com>
* | ACPI: fix battery on HP NX6125Vladimir Lebedev2006-06-281-2/+5
|/ | | | | | | EC problem was cause of both battery and AC issues. http://bugzilla.kernel.org/show_bug.cgi?id=6455 Signed-off-by: Len Brown <len.brown@intel.com>
* ACPIPHP: prevent duplicate slot numbers when no _SUNKristen Accardi2006-06-281-2/+7
| | | | | | | | | | | | Dock bridges generally do not implement _SUN, yet show up as ejectable slots. If you have more than one ejectable slot that does not implement SUN, with the current code you will get duplicate slot numbers. So, if there is no _SUN, use the current count of the number of slots found instead. Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Len Brown <len.brown@intel.com>
* ACPI: static-ize handle_hotplug_event_func()Len Brown2006-06-282-2/+2
| | | | Signed-off-by: Len Brown <len.brown@intel.com>
* ACPIPHP: use ACPI dock driverKristen Accardi2006-06-285-519/+87
| | | | | | | | | | | Modify the acpiphp driver to use the ACPI dock driver for dock notifications. Only load the acpiphp driver if we find we have pci dock devices. Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com> Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Len Brown <len.brown@intel.com>
* ACPI: dock driverKristen Accardi2006-06-286-1/+788
| | | | | | | | | | | Create a driver which lives in the acpi subsystem to handle dock events. This driver is not an "ACPI" driver, because acpi drivers require that the object be present when the driver is loaded. Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com> Cc: Dave Hansen <haveblue@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Len Brown <len.brown@intel.com>
* KEVENT: add new uevent for dockKristen Accardi2006-06-272-0/+6
| | | | | | | | | so that userspace can be notified of dock and undock events. Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Len Brown <len.brown@intel.com>
* ACPI: asus_acpi_init: propagate correct return valueAndrew Morton2006-06-271-1/+1
| | | | | | | Cc: Bjorn Helgaas <bjorn.helgaas@hp.com> Acked-by: Francois Romieu <romieu@fr.zoreil.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Len Brown <len.brown@intel.com>
* [ACPI] Print error message if remove/install notify handler failsThomas Renninger2006-06-271-19/+28
| | | | | Signed-off-by: Thomas Renniger <trenn@suse.de> Signed-off-by: Len Brown <len.brown@intel.com>
* ACPI: delete tracing macros from drivers/acpi/*.cPatrick Mochel2006-06-2728-1187/+862
| | | | Signed-off-by: Len Brown <len.brown@intel.com>
* Pull bugzilla-5737 into release branchThomas Renninger2006-06-274-8/+22
|\
| * ACPI: HW P-state coordination supportVenkatesh Pallipadi2006-06-264-8/+22
| | | | | | | | | | | | | | | | | | | | Treat HW coordination as independent CPUs. This enables per-cpu monintoring of P-states http://bugzilla.kernel.org/show_bug.cgi?id=5737 Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
* | ACPI: un-export ACPI_ERROR() -- use printk(KERN_ERR...)Len Brown2006-06-2721-102/+101
| | | | | | | | Signed-off-by: Len Brown <len.brown@intel.com>
* | ACPI: un-export ACPI_WARNING() -- use printk(KERN_WARNING...)Len Brown2006-06-279-54/+54
| | | | | | | | Signed-off-by: Len Brown <len.brown@intel.com>
* | ACPI: Device [kobj-name] is not power manageableJae-hyeon Park2006-06-271-1/+2
| | | | | | | | | | | | | | | | | | print kobj name in this message. lenb changed to use printk. Signed-off-by: Randy Dunlap <rdunlap@xenotime.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Len Brown <len.brown@intel.com>
* | ACPI: acpi_os_wait_semaphore(): silence complaintBjorn Helgaas2006-06-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ASL Acquire operator (17.5.1 in ACPI 3.0 spec) is allowed to time out and return True without acquiring the semaphore. There's no indication in the spec that this is an actual error, so this message should be debug-only, as the message for successful acquisition is. This used to be an ACPI_DEBUG_PRINT, but it was mis-classified as ACPI_DB_ERROR rather than ACPI_DB_MUTEX, so it got swept up in Thomas' recent patch to enable ACPI error messages even without CONFIG_ACPI_DEBUG. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Len Brown <len.brown@intel.com>
* | ACPI: Export symbols for ACPI_ERROR/EXCEPTION/WARNING macrosThomas Renninger2006-06-261-1/+5
| | | | | | | | | | Signed-off-by: Thomas Renninger <trenn@suse.de> Signed-off-by: Len Brown <len.brown@intel.com>
* | ACPI: Enable ACPI error messages w/o CONFIG_ACPI_DEBUGThomas Renninger2006-06-2627-445/+273
| | | | | | | | | | Signed-off-by: Thomas Renninger <trenn@suse.de> Signed-off-by: Len Brown <len.brown@intel.com>
* | Merge branch 'upstream-linus' of ↵Linus Torvalds2006-06-2613-373/+1045
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2 * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2: (56 commits) [PATCH] fs/ocfs2/dlm/: cleanups ocfs2: fix compiler warnings in dlm_convert_lock_handler() ocfs2: dlm_print_one_mle() needs to be defined ocfs2: remove whitespace in dlmunlock.c ocfs2: move dlm work to a private work queue ocfs2: fix incorrect error returns ocfs2: tune down some noisy messages during dlm recovery ocfs2: display message before waiting for recovery to complete ocfs2: mlog in dlm_convert_lock_handler() should be ML_ERROR ocfs2: retry operations when a lock is marked in recovery ocfs2: use cond_resched() in dlm_thread() ocfs2: use GFP_NOFS in some dlm operations ocfs2: wait for recovery when starting lock mastery ocfs2: continue recovery when a dead node is encountered ocfs2: remove unneccesary spin_unlock() in dlm_remaster_locks() ocfs2: dlm_remaster_locks() should never exit without completing ocfs2: special case recovery lock in dlmlock_remote() ocfs2: pending mastery asserts and migrations should block each other ocfs2: temporarily disable automatic lock migration ocfs2: do not unconditionally purge the lockres in dlmlock_remote() ...
| * | [PATCH] fs/ocfs2/dlm/: cleanupsAdrian Bunk2006-06-265-35/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch #if 0's the no longer used dlm_dump_lock_resources(). Since this makes dlmdebug.h empty, this patch also removes this header. Additionally, the needlessly global dlm_is_node_recovered() is made static. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: fix compiler warnings in dlm_convert_lock_handler()Mark Fasheh2006-06-261-1/+2
| | | | | | | | | | | | | | | | | | We need to cast to unsigned long long. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: dlm_print_one_mle() needs to be definedMark Fasheh2006-06-261-6/+6
| | | | | | | | | | | | | | | | | | Fixes compile breakage. Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: remove whitespace in dlmunlock.cKurt Hackel2006-06-261-1/+1
| | | | | | | | | | | | | | | Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: move dlm work to a private work queueKurt Hackel2006-06-264-3/+32
| | | | | | | | | | | | | | | | | | | | | | | | The work that is done can block for long periods of time and so is not appropriate for keventd. Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: fix incorrect error returnsKurt Hackel2006-06-261-2/+2
| | | | | | | | | | | | | | | | | | | | | Use DLM_REJECTED instead of DLM_RECOVERING. Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: tune down some noisy messages during dlm recoveryKurt Hackel2006-06-262-6/+7
| | | | | | | | | | | | | | | Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: display message before waiting for recovery to completeKurt Hackel2006-06-261-0/+7
| | | | | | | | | | | | | | | Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: mlog in dlm_convert_lock_handler() should be ML_ERRORKurt Hackel2006-06-261-1/+1
| | | | | | | | | | | | | | | Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: retry operations when a lock is marked in recoveryKurt Hackel2006-06-261-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | Before checking for a nonexistent lock, make sure the lockres is not marked RECOVERING. The caller will just retry and the state should be fixed up when recovery completes. Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: use cond_resched() in dlm_thread()Kurt Hackel2006-06-261-1/+1
| | | | | | | | | | | | | | | | | | | | | yield() does not yield. cond_resched() does. Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: use GFP_NOFS in some dlm operationsKurt Hackel2006-06-265-19/+19
| | | | | | | | | | | | | | | Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: wait for recovery when starting lock masteryKurt Hackel2006-06-263-0/+34
| | | | | | | | | | | | | | | Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: continue recovery when a dead node is encounteredKurt Hackel2006-06-261-0/+1
| | | | | | | | | | | | | | | Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: remove unneccesary spin_unlock() in dlm_remaster_locks()Kurt Hackel2006-06-261-1/+0
| | | | | | | | | | | | | | | Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: dlm_remaster_locks() should never exit without completingKurt Hackel2006-06-261-54/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | We cannot restart recovery. Once we begin to recover a node, keep the state of the recovery intact and follow through, regardless of any other node deaths that may occur. Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: special case recovery lock in dlmlock_remote()Kurt Hackel2006-06-262-10/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the previous master of the recovery lock dies, let calc_usage take it down completely and let the caller completely redo the dlmlock() call. Otherwise, there will never be an opportunity to re-master the lockres and recovery wont be able to progress. Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: pending mastery asserts and migrations should block each otherKurt Hackel2006-06-261-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | Use the existing structure for blocking migrations when ASTs are pending to achieve the same result. If we can catch the assert before it goes on the wire, just cancel it and let the migration continue. Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: temporarily disable automatic lock migrationKurt Hackel2006-06-262-5/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | Now we never change the owner of a lock resource until unmount or node death. This will be re-enabled once some issues in the algorithm used have been resolved. Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: do not unconditionally purge the lockres in dlmlock_remote()Kurt Hackel2006-06-261-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | In dlmlock_remote(), do not call purge_lockres until the lock resource actually changes. otherwise, the mastery info on the lockres will go away underneath the caller. Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: increase backoff before waiting for recoveryKurt Hackel2006-06-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | When mastering non-recovery lock resources, additional time was frequently needed to allow the disk heartbeat to catch up with the network timeout. the recovery lock resource is time critical and avoids this path. Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: have dlm_pre_master_reco_lockres() ignore dead nodesKurt Hackel2006-06-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Recovery will spin in dlm_pre_master_reco_lockres if we do not ignore timed-out network responses from dead nodes. Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
| * | ocfs2: give the dlm dirty list a reference on the lockresKurt Hackel2006-06-262-3/+17
| | | | | | | | | | | | | | | Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
OpenPOWER on IntegriCloud