From: Nathan Chancellor <nathan@kernel.org>
To: Nick Desaulniers <ndesaulniers@google.com>
Cc: "Arnd Bergmann" <arnd@kernel.org>,
"Sebastian Reichel" <sre@kernel.org>,
"René Moll" <Rene.Moll@xsens.com>,
"Arnd Bergmann" <arnd@arndb.de>,
linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org,
llvm@lists.linux.dev
Subject: Re: [PATCH] power: reset: ltc2952: fix float conversion error
Date: Tue, 7 Dec 2021 12:05:57 -0700 [thread overview]
Message-ID: <Ya+wlfX7ZPb95mZ4@archlinux-ax161> (raw)
In-Reply-To: <CAKwvOdnZSyfZaa1crQ15DGNNj8JBspnM0xxOF3D2mTt96Ftfgw@mail.gmail.com>
On Tue, Dec 07, 2021 at 10:41:24AM -0800, Nick Desaulniers wrote:
> On Sat, Dec 4, 2021 at 2:02 PM Arnd Bergmann <arnd@kernel.org> wrote:
> >
> > From: Arnd Bergmann <arnd@arndb.de>
> >
> > clang-14 does not like the way this driver converts a 'long double'
> > to an integer when the target architecture disables floating point
> > support:
> >
> > drivers/power/reset/ltc2952-poweroff.c:162:28: error: expression requires 'long double' type support, but target 'x86_64-unknown-linux' does not support it
> > data->wde_interval = 300L * 1E6L;
> > ^
> >
> > Turn this into pure integer math and make it more readable at the
> > same time using the NSEC_PER_MSEC macro instead.
> >
> > Fixes: 6647156c00cc ("power: reset: add LTC2952 poweroff driver")
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
>
> Thanks for the patch! The change in clang-14 (ToT) that triggered this
> has had another patch on top reverting these diagnostics.
> https://reviews.llvm.org/D114162
I can still reproduce this failure on current ToT (33e3554ea33d) on
x86_64 allmodconfig; it seems like that patch only fixes it for 32-bit
x86.
> That said, this change is still worthwhile for the improved semantics, IMO.
>
> Link: https://github.com/ClangBuiltLinux/linux/issues/1497
> Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
My patch appears to be accepted in Sebastian's branch already, it seems
like it just needs to be sent to Linus (it also looks like that branch
doesn't flow into -next, it probably should):
https://git.kernel.org/sre/linux-power-supply/c/644106cdb89844be2496b21175b7c0c2e0fab381
Cheers,
Nathan
> > ---
> > drivers/power/reset/ltc2952-poweroff.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/power/reset/ltc2952-poweroff.c b/drivers/power/reset/ltc2952-poweroff.c
> > index fbb344353fe4..9fc88a9f244c 100644
> > --- a/drivers/power/reset/ltc2952-poweroff.c
> > +++ b/drivers/power/reset/ltc2952-poweroff.c
> > @@ -159,8 +159,8 @@ static void ltc2952_poweroff_kill(void)
> >
> > static void ltc2952_poweroff_default(struct ltc2952_poweroff *data)
> > {
> > - data->wde_interval = 300L * 1E6L;
> > - data->trigger_delay = ktime_set(2, 500L*1E6L);
> > + data->wde_interval = 300 * NSEC_PER_MSEC;
> > + data->trigger_delay = ktime_set(2, 500 * NSEC_PER_MSEC);
> >
> > hrtimer_init(&data->timer_trigger, CLOCK_MONOTONIC, HRTIMER_MODE_REL);
> > data->timer_trigger.function = ltc2952_poweroff_timer_trigger;
> > --
> > 2.29.2
> >
>
>
> --
> Thanks,
> ~Nick Desaulniers
next prev parent reply other threads:[~2021-12-07 19:06 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-04 22:01 [PATCH] power: reset: ltc2952: fix float conversion error Arnd Bergmann
2021-12-07 18:41 ` Nick Desaulniers
2021-12-07 19:00 ` Nick Desaulniers
2021-12-07 19:05 ` Nathan Chancellor [this message]
2021-12-07 19:16 ` Nick Desaulniers
2021-12-07 19:21 ` Nathan Chancellor
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=Ya+wlfX7ZPb95mZ4@archlinux-ax161 \
--to=nathan@kernel.org \
--cc=Rene.Moll@xsens.com \
--cc=arnd@arndb.de \
--cc=arnd@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=llvm@lists.linux.dev \
--cc=ndesaulniers@google.com \
--cc=sre@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.