linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] docs: deprecated.rst: Update zero-length/one-element arrays section
@ 2020-09-01  1:09 Gustavo A. R. Silva
  2020-09-09 17:12 ` Kees Cook
  2020-09-09 17:38 ` Jonathan Corbet
  0 siblings, 2 replies; 4+ messages in thread
From: Gustavo A. R. Silva @ 2020-09-01  1:09 UTC (permalink / raw)
  To: Jonathan Corbet; +Cc: Kees Cook, linux-doc, linux-kernel, Gustavo A. R. Silva

Update information in the zero-length and one-element arrays section
and illustrate how to make use of the new flex_array_size() helper,
together with struct_size() and a flexible-array member.

Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
---
 Documentation/process/deprecated.rst | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/Documentation/process/deprecated.rst b/Documentation/process/deprecated.rst
index 918e32d76fc4..9731704b3f3d 100644
--- a/Documentation/process/deprecated.rst
+++ b/Documentation/process/deprecated.rst
@@ -322,7 +322,8 @@ to allocate for a structure containing an array of this kind as a member::
 In the example above, we had to remember to calculate ``count - 1`` when using
 the struct_size() helper, otherwise we would have --unintentionally-- allocated
 memory for one too many ``items`` objects. The cleanest and least error-prone way
-to implement this is through the use of a `flexible array member`::
+to implement this is through the use of a `flexible array member`, together with
+struct_size() and flex_array_size() helpers::
 
         struct something {
                 size_t count;
@@ -334,5 +335,4 @@ to implement this is through the use of a `flexible array member`::
         instance = kmalloc(struct_size(instance, items, count), GFP_KERNEL);
         instance->count = count;
 
-        size = sizeof(instance->items[0]) * instance->count;
-        memcpy(instance->items, source, size);
+        memcpy(instance->items, source, flex_array_size(instance, items, instance->count));
-- 
2.27.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] docs: deprecated.rst: Update zero-length/one-element arrays section
  2020-09-01  1:09 [PATCH] docs: deprecated.rst: Update zero-length/one-element arrays section Gustavo A. R. Silva
@ 2020-09-09 17:12 ` Kees Cook
  2020-09-09 17:38 ` Jonathan Corbet
  1 sibling, 0 replies; 4+ messages in thread
From: Kees Cook @ 2020-09-09 17:12 UTC (permalink / raw)
  To: Gustavo A. R. Silva; +Cc: Jonathan Corbet, linux-doc, linux-kernel

On Mon, Aug 31, 2020 at 08:09:49PM -0500, Gustavo A. R. Silva wrote:
> Update information in the zero-length and one-element arrays section
> and illustrate how to make use of the new flex_array_size() helper,
> together with struct_size() and a flexible-array member.
> 
> Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>

Looks great!

Acked-by: Kees Cook <keescook@chromium.org>

-- 
Kees Cook

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] docs: deprecated.rst: Update zero-length/one-element arrays section
  2020-09-01  1:09 [PATCH] docs: deprecated.rst: Update zero-length/one-element arrays section Gustavo A. R. Silva
  2020-09-09 17:12 ` Kees Cook
@ 2020-09-09 17:38 ` Jonathan Corbet
  2020-09-11 12:06   ` Gustavo A. R. Silva
  1 sibling, 1 reply; 4+ messages in thread
From: Jonathan Corbet @ 2020-09-09 17:38 UTC (permalink / raw)
  To: Gustavo A. R. Silva; +Cc: Kees Cook, linux-doc, linux-kernel

On Mon, 31 Aug 2020 20:09:49 -0500
"Gustavo A. R. Silva" <gustavoars@kernel.org> wrote:

> Update information in the zero-length and one-element arrays section
> and illustrate how to make use of the new flex_array_size() helper,
> together with struct_size() and a flexible-array member.
> 
> Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
> ---
>  Documentation/process/deprecated.rst | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)

Applied, thanks.

jon

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] docs: deprecated.rst: Update zero-length/one-element arrays section
  2020-09-09 17:38 ` Jonathan Corbet
@ 2020-09-11 12:06   ` Gustavo A. R. Silva
  0 siblings, 0 replies; 4+ messages in thread
From: Gustavo A. R. Silva @ 2020-09-11 12:06 UTC (permalink / raw)
  To: Jonathan Corbet; +Cc: Kees Cook, linux-doc, linux-kernel

On Wed, Sep 09, 2020 at 11:38:23AM -0600, Jonathan Corbet wrote:
> On Mon, 31 Aug 2020 20:09:49 -0500
> "Gustavo A. R. Silva" <gustavoars@kernel.org> wrote:
> 
> > Update information in the zero-length and one-element arrays section
> > and illustrate how to make use of the new flex_array_size() helper,
> > together with struct_size() and a flexible-array member.
> > 
> > Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
> > ---
> >  Documentation/process/deprecated.rst | 6 +++---
> >  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> Applied, thanks.

Thank you, both. :)

--
Gustavo

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-09-11 12:01 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-01  1:09 [PATCH] docs: deprecated.rst: Update zero-length/one-element arrays section Gustavo A. R. Silva
2020-09-09 17:12 ` Kees Cook
2020-09-09 17:38 ` Jonathan Corbet
2020-09-11 12:06   ` Gustavo A. R. Silva

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).