From: Kees Cook <keescook@chromium.org>
To: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Cc: Kate Stewart <kstewart@linuxfoundation.org>,
Kamil Debski <kamil@wypas.org>, Hans Verkuil <hverkuil@xs4all.nl>,
Andrzej Hajda <a.hajda@samsung.com>,
"Lad, Prabhakar" <prabhakar.csengg@gmail.com>,
Bluecherry Maintainers <maintainers@bluecherrydvr.com>,
Krzysztof Kozlowski <krzk@kernel.org>,
Sylwester Nawrocki <s.nawrocki@samsung.com>,
Nathan Chancellor <natechancellor@gmail.com>,
Andrzej Pietrasiewicz <andrzejtp2010@gmail.com>,
Anton Sviridenko <anton@corp.bluecherry.net>,
Ezequiel Garcia <ezequiel@collabora.com>,
Andrey Utkin <andrey.utkin@corp.bluecherry.net>,
Antti Palosaari <crope@iki.fi>,
Steve Longerbeam <slongerbeam@gmail.com>,
Ismael Luceno <ismael@iodev.co.uk>,
Linux Media Mailing List <linux-media@vger.kernel.org>,
linux-arm-msm@vger.kernel.org,
Stanimir Varbanov <stanimir.varbanov@linaro.org>,
Jeongtae Park <jtp.park@samsung.com>,
linux-samsung-soc@vger.kern
Subject: Re: [PATCH 6/7] media: don't do an unsigned int with a 31 bit shift
Date: Thu, 29 Aug 2019 10:03:09 -0700 [thread overview]
Message-ID: <201908291002.2F67F5ADA@keescook> (raw)
In-Reply-To: <1a78a757b37d2628312e1d56d7a741ba89d42a91.1566502743.git.mchehab+samsung@kernel.org>
On Thu, Aug 22, 2019 at 04:39:33PM -0300, Mauro Carvalho Chehab wrote:
> Doing something like:
>
> i32 foo = 1, bar;
>
> bar = foo << 31;
>
> has an undefined behavior in C, as warned by cppcheck, as we're
> shifting a signed integer.
>
> Instead, force the numbers to be unsigned, in order to solve this
> issue.
I also recommend using the BIT() macro, which does the ULing correctly,
etc.
i.e. instead of:
- keyup = (gpio & ir->mask_keyup) ? 1 << 31 : 0;
+ keyup = (gpio & ir->mask_keyup) ? 1UL << 31 : 0;
use:
- keyup = (gpio & ir->mask_keyup) ? 1 << 31 : 0;
+ keyup = (gpio & ir->mask_keyup) ? BIT(31) : 0;
--
Kees Cook
prev parent reply other threads:[~2019-08-29 17:03 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <4a411ba155eb062b6575aba0824123c840806c0b.1566502743.git.mchehab+samsung@kernel.org>
2019-08-22 19:39 ` [PATCH 5/7] media: use the BIT() macro Mauro Carvalho Chehab
2019-08-23 0:08 ` Laurent Pinchart
2019-08-23 9:47 ` [PATCH v2 " Mauro Carvalho Chehab
2019-08-23 10:22 ` Sylwester Nawrocki
2019-08-23 12:12 ` Benoit Parrot
2019-08-23 20:45 ` Laurent Pinchart
2019-08-22 19:39 ` [PATCH 6/7] media: don't do an unsigned int with a 31 bit shift Mauro Carvalho Chehab
2019-08-29 17:03 ` Kees Cook [this message]
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=201908291002.2F67F5ADA@keescook \
--to=keescook@chromium.org \
--cc=a.hajda@samsung.com \
--cc=andrey.utkin@corp.bluecherry.net \
--cc=andrzejtp2010@gmail.com \
--cc=anton@corp.bluecherry.net \
--cc=crope@iki.fi \
--cc=ezequiel@collabora.com \
--cc=hverkuil@xs4all.nl \
--cc=ismael@iodev.co.uk \
--cc=jtp.park@samsung.com \
--cc=kamil@wypas.org \
--cc=krzk@kernel.org \
--cc=kstewart@linuxfoundation.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-samsung-soc@vger.kern \
--cc=maintainers@bluecherrydvr.com \
--cc=mchehab+samsung@kernel.org \
--cc=natechancellor@gmail.com \
--cc=prabhakar.csengg@gmail.com \
--cc=s.nawrocki@samsung.com \
--cc=slongerbeam@gmail.com \
--cc=stanimir.varbanov@linaro.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