From: Dan Carpenter <dan.carpenter@oracle.com>
To: garritfra <garritfranke@gmail.com>
Cc: robert.moore@intel.com, rafael.j.wysocki@intel.com,
lenb@kernel.org, trivial@kernel.org, linux-acpi@vger.kernel.org,
devel@acpica.org, kernel-janitors@vger.kernel.org
Subject: Re: [PATCH] trivial: acpi: replace some bitshifts with BIT macro
Date: Mon, 27 Jul 2020 15:48:00 +0300 [thread overview]
Message-ID: <20200727124800.GB1913@kadam> (raw)
In-Reply-To: <20200724160239.16284-1-garritfranke@gmail.com>
This patch introduces two bugs, so perhaps don't send risky changes to
the trivial tree.
On Fri, Jul 24, 2020 at 06:02:39PM +0200, garritfra wrote:
> Signed-off-by: garritfra <garritfranke@gmail.com>
You need a commit message, and your full legal name for both the
From and the Signing.
> ---
> drivers/acpi/acpica/exfldio.c | 2 +-
> drivers/acpi/acpica/utownerid.c | 6 +++---
> drivers/acpi/bus.c | 2 +-
> drivers/acpi/sleep.c | 2 +-
> 4 files changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/acpi/acpica/exfldio.c b/drivers/acpi/acpica/exfldio.c
> index ade35ff1c7..92fc702456 100644
> --- a/drivers/acpi/acpica/exfldio.c
> +++ b/drivers/acpi/acpica/exfldio.c
> @@ -298,7 +298,7 @@ acpi_ex_register_overflow(union acpi_operand_object *obj_desc, u64 value)
> return (FALSE);
> }
>
> - if (value >= ((u64) 1 << obj_desc->common_field.bit_length)) {
> + if (value >= ((u64) BIT(obj_desc->common_field.bit_length))) {
This breaks the code... The original code casts 1 to 1ULL so we can
shift by 63 but the BIT() macro can only shift by 31. It should use the
BIT_ULL() macro here.
> /*
> * The Value is larger than the maximum value that can fit into
> * the register.
> diff --git a/drivers/acpi/acpica/utownerid.c b/drivers/acpi/acpica/utownerid.c
> index d3525ef8ed..c4e2db2f54 100644
> --- a/drivers/acpi/acpica/utownerid.c
> +++ b/drivers/acpi/acpica/utownerid.c
> @@ -74,13 +74,13 @@ acpi_status acpi_ut_allocate_owner_id(acpi_owner_id *owner_id)
> * int. Some compilers or runtime error detection may flag this as
> * an error.
> */
> - if (!(acpi_gbl_owner_id_mask[j] & ((u32)1 << k))) {
> + if (!(acpi_gbl_owner_id_mask[j] & (u32)BIT(k))) {
This cast can be removed.
> /*
> * Found a free ID. The actual ID is the bit index plus one,
> * making zero an invalid Owner ID. Save this as the last ID
> * allocated and update the global ID mask.
> */
> - acpi_gbl_owner_id_mask[j] |= ((u32)1 << k);
> + acpi_gbl_owner_id_mask[j] |= (u32)BIT(k);
>
> acpi_gbl_last_owner_id_index = (u8)j;
> acpi_gbl_next_owner_id_offset = (u8)(k + 1);
> @@ -171,7 +171,7 @@ void acpi_ut_release_owner_id(acpi_owner_id *owner_id_ptr)
> /* Decode ID to index/offset pair */
>
> index = ACPI_DIV_32(owner_id);
> - bit = (u32)1 << ACPI_MOD_32(owner_id);
> + bit = (u32)BIT(ACPI_MOD_32(owner_id));
Remove.
>
> /* Free the owner ID only if it is valid */
>
> diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c
> index 54002670cb..39ead80c45 100644
> --- a/drivers/acpi/bus.c
> +++ b/drivers/acpi/bus.c
> @@ -233,7 +233,7 @@ acpi_status acpi_run_osc(acpi_handle handle, struct acpi_osc_context *context)
> goto out_kfree;
> }
> /* Need to ignore the bit0 in result code */
> - errors = *((u32 *)out_obj->buffer.pointer) & ~(1 << 0);
> + errors = *((u32 *)out_obj->buffer.pointer) & BIT(0);
This removes the ~ so it totally breaks the code.
regards,
dan carpenter
next prev parent reply other threads:[~2020-07-27 12:48 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-24 16:02 [PATCH] trivial: acpi: replace some bitshifts with BIT macro garritfra
2020-07-27 12:48 ` Dan Carpenter [this message]
[not found] <alpine.DEB.2.21.2007241814450.2834@hadrien>
2020-07-24 16:20 ` Garrit Franke
2020-07-24 16:29 ` Moore, Robert
2020-07-24 16:47 ` Garrit Franke
2020-07-24 16:50 ` Moore, Robert
2020-07-28 20:03 ` Moore, Robert
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=20200727124800.GB1913@kadam \
--to=dan.carpenter@oracle.com \
--cc=devel@acpica.org \
--cc=garritfranke@gmail.com \
--cc=kernel-janitors@vger.kernel.org \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=rafael.j.wysocki@intel.com \
--cc=robert.moore@intel.com \
--cc=trivial@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;
as well as URLs for NNTP newsgroup(s).