From: Stefan Lippers-Hollmann <s.L-H@gmx.de>
To: gregkh@suse.de
Cc: linux-kernel@vger.kernel.org, len.brown@intel.com, stable@kernel.org
Subject: Re: patch acpi-remove-locking-from-pm1x_sts-register-reads.patch added to 2.6.28-stable tree
Date: Mon, 9 Feb 2009 01:24:43 +0100 [thread overview]
Message-ID: <200902090124.44228.s.L-H@gmx.de> (raw)
In-Reply-To: <20090208211932.4CAB349019@coco.kroah.org>
[-- Attachment #1: Type: text/plain, Size: 4343 bytes --]
Hi
On Sonntag, 8. Februar 2009, gregkh@suse.de wrote:
>
> This is a note to let you know that we have just queued up the patch titled
>
> Subject: ACPI: remove locking from PM1x_STS register reads
>
> to the 2.6.28-stable tree. Its filename is
>
> acpi-remove-locking-from-pm1x_sts-register-reads.patch
[...]
> From a2b7b01c072435b7832ab392167545a1b38cabc3 Mon Sep 17 00:00:00 2001
> From: Len Brown <len.brown@intel.com>
> Date: Wed, 28 Jan 2009 12:47:15 -0500
> Subject: ACPI: remove locking from PM1x_STS register reads
>
> From: Len Brown <len.brown@intel.com>
>
> commit a2b7b01c072435b7832ab392167545a1b38cabc3 upstream.
>
> PM1a_STS and PM1b_STS are twins that get OR'd together
> on reads, and all writes are repeated to both.
>
> The fields in PM1x_STS are single bits only,
> there are no multi-bit fields.
>
> So it is not necessary to lock PM1x_STS reads against
> writes because it is impossible to read an intermediate
> value of a single bit. It will either be 0 or 1,
> even if a write is in progress during the read.
> Reads are asynchronous to writes no matter if a lock
> is used or not.
>
> Signed-off-by: Len Brown <len.brown@intel.com>
> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This patch fails to compile on 2.6.28.4 + queue-2.6.28 (and 2.6.27 as
well):
BUILD arch/x86/boot/bzImage
Root device is (254, 1)
Setup is 11676 bytes (padded to 11776 bytes).
System is 2175 kB
CRC d4d9303a
Kernel: arch/x86/boot/bzImage is ready (#1)
ERROR: "acpi_get_register_unlocked" [drivers/acpi/processor.ko] undefined!
make[4]: *** [__modpost] Error 1
make[3]: *** [modules] Error 2
because it seems to depend on the larger changes started in, but not
limited to:
From ecfbbc7b46f74ca48b9f42132739114c9e70f8e4 Mon Sep 17 00:00:00 2001
From: Bob Moore <robert.moore@intel.com>
Date: Wed, 31 Dec 2008 02:55:32 +0800
Subject: [PATCH] ACPICA: New: acpi_read and acpi_write public interfaces
Changed the acpi_hw_low_level_read and acpi_hw_low_level_write functions to
the public acpi_read and acpi_write to allow direct access to
ACPI registers. Removed the "width" parameter since the width
can be obtained from the input GAS structure. Updated the FADT
initialization to setup the GAS structures with the proper
widths. Some widths are still hardcoded because many FADTs have
incorrect register lengths.
Signed-off-by: Bob Moore <robert.moore@intel.com
Signed-off-by: Lin Ming <ming.m.lin@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
acpi_get_register_unlocked() seems to be a new feature and lots of h/w
interfaces have been converted to use it for 2.6.29-git, a quick grep
reveals:
From 7db5d82d0278b506441ab6025f0c6ce2f2aa3019 Mon Sep 17 00:00:00 2001
From: Bob Moore <robert.moore@intel.com>
Date: Tue, 30 Dec 2008 11:04:48 +0800
Subject: [PATCH] ACPICA: Move all public H/W interfaces to new hwxface
From 95b482a8d31116f3f5c2a5089569393234d06385 Mon Sep 17 00:00:00 2001
From: Len Brown <len.brown@intel.com>
Date: Fri, 9 Jan 2009 00:13:17 -0500
Subject: [PATCH] ACPICA: create acpica/ directory
From 9fdd54f206722ecee7fd7ba9dba26140450e7c32 Mon Sep 17 00:00:00 2001
From: Len Brown <len.brown@intel.com>
Date: Fri, 6 Feb 2009 12:24:17 -0500
Subject: [PATCH] ACPI: delete CPU_IDLE=n code
and this patch, amounting to rather large changes in total.
> drivers/acpi/processor_idle.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> --- a/drivers/acpi/processor_idle.c
> +++ b/drivers/acpi/processor_idle.c
> @@ -446,7 +446,7 @@ static void acpi_processor_idle(void)
>
> pr->power.bm_activity <<= diff;
>
> - acpi_get_register(ACPI_BITREG_BUS_MASTER_STATUS, &bm_status);
> + acpi_get_register_unlocked(ACPI_BITREG_BUS_MASTER_STATUS, &bm_status);
> if (bm_status) {
> pr->power.bm_activity |= 0x1;
> acpi_set_register(ACPI_BITREG_BUS_MASTER_STATUS, 1);
> @@ -1382,7 +1382,7 @@ static int acpi_idle_bm_check(void)
> {
> u32 bm_status = 0;
>
> - acpi_get_register(ACPI_BITREG_BUS_MASTER_STATUS, &bm_status);
> + acpi_get_register_unlocked(ACPI_BITREG_BUS_MASTER_STATUS, &bm_status);
> if (bm_status)
> acpi_set_register(ACPI_BITREG_BUS_MASTER_STATUS, 1);
> /*
Regards
Stefan Lippers-Hollmann
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
next parent reply other threads:[~2009-02-09 0:24 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20090208211932.4CAB349019@coco.kroah.org>
2009-02-09 0:24 ` Stefan Lippers-Hollmann [this message]
2009-02-09 16:24 ` patch acpi-remove-locking-from-pm1x_sts-register-reads.patch added to 2.6.28-stable tree Greg KH
2009-02-09 16:30 ` Arjan van de Ven
2009-02-09 16:49 ` Greg KH
2009-02-09 17:00 ` Brown, Len
2009-02-09 17:12 ` Greg KH
2009-02-09 21:32 ` Stefan Lippers-Hollmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200902090124.44228.s.L-H@gmx.de \
--to=s.l-h@gmx.de \
--cc=gregkh@suse.de \
--cc=len.brown@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=stable@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox