* [PATCH 0/2][next] scsi: lpfc: Replace one-element array with flexible-array member
@ 2023-05-17 21:22 Gustavo A. R. Silva
2023-05-17 21:22 ` [PATCH 1/2][next] " Gustavo A. R. Silva
` (2 more replies)
0 siblings, 3 replies; 13+ messages in thread
From: Gustavo A. R. Silva @ 2023-05-17 21:22 UTC (permalink / raw)
To: Martin K. Petersen, James E.J. Bottomley, Dick Kennedy,
James Smart
Cc: linux-scsi, linux-kernel, Gustavo A. R. Silva, linux-hardening
Hi!
This small series aims to replace a one-element array with a
flexible-array member in a couple of structures.
This helps with the ongoing efforts to tighten the FORTIFY_SOURCE
routines on memcpy() and help us make progress towards globally
enabling -fstrict-flex-arrays=3 [1].
Link: https://github.com/KSPP/linux/issues/79
Link: https://github.com/KSPP/linux/issues/160
Link: https://github.com/KSPP/linux/issues/295
Link: https://gcc.gnu.org/pipermail/gcc-patches/2022-October/602902.html [1]
Gustavo A. R. Silva (2):
scsi: lpfc: Replace one-element array with flexible-array member
scsi: lpfc: Use struct_size() helper
drivers/scsi/lpfc/lpfc_ct.c | 4 ++--
drivers/scsi/lpfc/lpfc_hw.h | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
--
2.34.1
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 1/2][next] scsi: lpfc: Replace one-element array with flexible-array member
2023-05-17 21:22 [PATCH 0/2][next] scsi: lpfc: Replace one-element array with flexible-array member Gustavo A. R. Silva
@ 2023-05-17 21:22 ` Gustavo A. R. Silva
2023-05-17 23:02 ` Kees Cook
2023-05-22 22:02 ` Martin K. Petersen
2023-05-17 21:23 ` [PATCH 2/2][next] scsi: lpfc: Use struct_size() helper Gustavo A. R. Silva
2023-06-01 0:43 ` [PATCH 0/2][next] scsi: lpfc: Replace one-element array with flexible-array member Martin K. Petersen
2 siblings, 2 replies; 13+ messages in thread
From: Gustavo A. R. Silva @ 2023-05-17 21:22 UTC (permalink / raw)
To: Martin K. Petersen, James E.J. Bottomley, Dick Kennedy,
James Smart
Cc: linux-scsi, linux-kernel, Gustavo A. R. Silva, linux-hardening
One-element arrays are deprecated, and we are replacing them with flexible
array members instead. So, replace one-element arrays with flexible-array
members in a couple of structures, and refactor the rest of the code,
accordingly.
This helps with the ongoing efforts to tighten the FORTIFY_SOURCE
routines on memcpy() and help us make progress towards globally
enabling -fstrict-flex-arrays=3 [1].
This results in no differences in binary output.
Link: https://github.com/KSPP/linux/issues/79
Link: https://github.com/KSPP/linux/issues/295
Link: https://gcc.gnu.org/pipermail/gcc-patches/2022-October/602902.html [1]
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
---
drivers/scsi/lpfc/lpfc_ct.c | 6 ++++--
drivers/scsi/lpfc/lpfc_hw.h | 4 ++--
2 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/drivers/scsi/lpfc/lpfc_ct.c b/drivers/scsi/lpfc/lpfc_ct.c
index f3bdcebe67f5..e880d127d7f5 100644
--- a/drivers/scsi/lpfc/lpfc_ct.c
+++ b/drivers/scsi/lpfc/lpfc_ct.c
@@ -3748,7 +3748,8 @@ lpfc_vmid_cmd(struct lpfc_vport *vport,
rap->obj[0].entity_id_len = vmid->vmid_len;
memcpy(rap->obj[0].entity_id, vmid->host_vmid, vmid->vmid_len);
size = RAPP_IDENT_OFFSET +
- sizeof(struct lpfc_vmid_rapp_ident_list);
+ sizeof(struct lpfc_vmid_rapp_ident_list) +
+ sizeof(struct entity_id_object);
retry = 1;
break;
@@ -3767,7 +3768,8 @@ lpfc_vmid_cmd(struct lpfc_vport *vport,
dap->obj[0].entity_id_len = vmid->vmid_len;
memcpy(dap->obj[0].entity_id, vmid->host_vmid, vmid->vmid_len);
size = DAPP_IDENT_OFFSET +
- sizeof(struct lpfc_vmid_dapp_ident_list);
+ sizeof(struct lpfc_vmid_dapp_ident_list) +
+ sizeof(struct entity_id_object);
write_lock(&vport->vmid_lock);
vmid->flag &= ~LPFC_VMID_REGISTERED;
write_unlock(&vport->vmid_lock);
diff --git a/drivers/scsi/lpfc/lpfc_hw.h b/drivers/scsi/lpfc/lpfc_hw.h
index 19b2d2754f32..b2123ec4df88 100644
--- a/drivers/scsi/lpfc/lpfc_hw.h
+++ b/drivers/scsi/lpfc/lpfc_hw.h
@@ -1415,12 +1415,12 @@ struct app_id_object {
struct lpfc_vmid_rapp_ident_list {
uint32_t no_of_objects;
- struct entity_id_object obj[1];
+ struct entity_id_object obj[];
};
struct lpfc_vmid_dapp_ident_list {
uint32_t no_of_objects;
- struct entity_id_object obj[1];
+ struct entity_id_object obj[];
};
#define GALLAPPIA_ID_LAST 0x80
--
2.34.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 2/2][next] scsi: lpfc: Use struct_size() helper
2023-05-17 21:22 [PATCH 0/2][next] scsi: lpfc: Replace one-element array with flexible-array member Gustavo A. R. Silva
2023-05-17 21:22 ` [PATCH 1/2][next] " Gustavo A. R. Silva
@ 2023-05-17 21:23 ` Gustavo A. R. Silva
2023-05-17 23:01 ` Kees Cook
2023-06-01 0:43 ` [PATCH 0/2][next] scsi: lpfc: Replace one-element array with flexible-array member Martin K. Petersen
2 siblings, 1 reply; 13+ messages in thread
From: Gustavo A. R. Silva @ 2023-05-17 21:23 UTC (permalink / raw)
To: Martin K. Petersen, James E.J. Bottomley, Dick Kennedy,
James Smart
Cc: linux-scsi, linux-kernel, Gustavo A. R. Silva, linux-hardening
Prefer struct_size() over open-coded versions of idiom:
sizeof(struct-with-flex-array) + sizeof(typeof-flex-array-elements) * count
where count is the max number of items the flexible array is supposed to
contain.
Link: https://github.com/KSPP/linux/issues/160
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
---
drivers/scsi/lpfc/lpfc_ct.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/drivers/scsi/lpfc/lpfc_ct.c b/drivers/scsi/lpfc/lpfc_ct.c
index e880d127d7f5..3b95c56023bf 100644
--- a/drivers/scsi/lpfc/lpfc_ct.c
+++ b/drivers/scsi/lpfc/lpfc_ct.c
@@ -3748,8 +3748,7 @@ lpfc_vmid_cmd(struct lpfc_vport *vport,
rap->obj[0].entity_id_len = vmid->vmid_len;
memcpy(rap->obj[0].entity_id, vmid->host_vmid, vmid->vmid_len);
size = RAPP_IDENT_OFFSET +
- sizeof(struct lpfc_vmid_rapp_ident_list) +
- sizeof(struct entity_id_object);
+ struct_size(rap, obj, rap->no_of_objects);
retry = 1;
break;
@@ -3768,8 +3767,7 @@ lpfc_vmid_cmd(struct lpfc_vport *vport,
dap->obj[0].entity_id_len = vmid->vmid_len;
memcpy(dap->obj[0].entity_id, vmid->host_vmid, vmid->vmid_len);
size = DAPP_IDENT_OFFSET +
- sizeof(struct lpfc_vmid_dapp_ident_list) +
- sizeof(struct entity_id_object);
+ struct_size(dap, obj, dap->no_of_objects);
write_lock(&vport->vmid_lock);
vmid->flag &= ~LPFC_VMID_REGISTERED;
write_unlock(&vport->vmid_lock);
--
2.34.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH 2/2][next] scsi: lpfc: Use struct_size() helper
2023-05-17 21:23 ` [PATCH 2/2][next] scsi: lpfc: Use struct_size() helper Gustavo A. R. Silva
@ 2023-05-17 23:01 ` Kees Cook
2023-05-23 14:41 ` Gustavo A. R. Silva
0 siblings, 1 reply; 13+ messages in thread
From: Kees Cook @ 2023-05-17 23:01 UTC (permalink / raw)
To: Gustavo A. R. Silva
Cc: Martin K. Petersen, James E.J. Bottomley, Dick Kennedy,
James Smart, linux-scsi, linux-kernel, linux-hardening
On Wed, May 17, 2023 at 03:23:01PM -0600, Gustavo A. R. Silva wrote:
> Prefer struct_size() over open-coded versions of idiom:
>
> sizeof(struct-with-flex-array) + sizeof(typeof-flex-array-elements) * count
>
> where count is the max number of items the flexible array is supposed to
> contain.
>
> Link: https://github.com/KSPP/linux/issues/160
> Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
> ---
> drivers/scsi/lpfc/lpfc_ct.c | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/scsi/lpfc/lpfc_ct.c b/drivers/scsi/lpfc/lpfc_ct.c
> index e880d127d7f5..3b95c56023bf 100644
> --- a/drivers/scsi/lpfc/lpfc_ct.c
> +++ b/drivers/scsi/lpfc/lpfc_ct.c
> @@ -3748,8 +3748,7 @@ lpfc_vmid_cmd(struct lpfc_vport *vport,
> rap->obj[0].entity_id_len = vmid->vmid_len;
> memcpy(rap->obj[0].entity_id, vmid->host_vmid, vmid->vmid_len);
> size = RAPP_IDENT_OFFSET +
> - sizeof(struct lpfc_vmid_rapp_ident_list) +
> - sizeof(struct entity_id_object);
> + struct_size(rap, obj, rap->no_of_objects);
Has rap->no_of_objects always been "1"? (i.e. there was a prior
multiplication here before...
--
Kees Cook
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/2][next] scsi: lpfc: Replace one-element array with flexible-array member
2023-05-17 21:22 ` [PATCH 1/2][next] " Gustavo A. R. Silva
@ 2023-05-17 23:02 ` Kees Cook
2023-05-22 22:02 ` Martin K. Petersen
1 sibling, 0 replies; 13+ messages in thread
From: Kees Cook @ 2023-05-17 23:02 UTC (permalink / raw)
To: Gustavo A. R. Silva
Cc: Martin K. Petersen, James E.J. Bottomley, Dick Kennedy,
James Smart, linux-scsi, linux-kernel, linux-hardening
On Wed, May 17, 2023 at 03:22:45PM -0600, Gustavo A. R. Silva wrote:
> One-element arrays are deprecated, and we are replacing them with flexible
> array members instead. So, replace one-element arrays with flexible-array
> members in a couple of structures, and refactor the rest of the code,
> accordingly.
>
> This helps with the ongoing efforts to tighten the FORTIFY_SOURCE
> routines on memcpy() and help us make progress towards globally
> enabling -fstrict-flex-arrays=3 [1].
>
> This results in no differences in binary output.
>
> Link: https://github.com/KSPP/linux/issues/79
> Link: https://github.com/KSPP/linux/issues/295
> Link: https://gcc.gnu.org/pipermail/gcc-patches/2022-October/602902.html [1]
> Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/2][next] scsi: lpfc: Replace one-element array with flexible-array member
2023-05-17 21:22 ` [PATCH 1/2][next] " Gustavo A. R. Silva
2023-05-17 23:02 ` Kees Cook
@ 2023-05-22 22:02 ` Martin K. Petersen
2023-05-22 22:12 ` Gustavo A. R. Silva
2023-05-23 17:31 ` Kees Cook
1 sibling, 2 replies; 13+ messages in thread
From: Martin K. Petersen @ 2023-05-22 22:02 UTC (permalink / raw)
To: Gustavo A. R. Silva
Cc: Martin K. Petersen, James E.J. Bottomley, Dick Kennedy,
James Smart, linux-scsi, linux-kernel, linux-hardening
Gustavo,
> One-element arrays are deprecated, and we are replacing them with flexible
> array members instead. So, replace one-element arrays with flexible-array
> members in a couple of structures, and refactor the rest of the code,
> accordingly.
>
> This helps with the ongoing efforts to tighten the FORTIFY_SOURCE
> routines on memcpy() and help us make progress towards globally
> enabling -fstrict-flex-arrays=3 [1].
>
> This results in no differences in binary output.
Applied to 6.5/scsi-staging, thanks!
--
Martin K. Petersen Oracle Linux Engineering
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/2][next] scsi: lpfc: Replace one-element array with flexible-array member
2023-05-22 22:02 ` Martin K. Petersen
@ 2023-05-22 22:12 ` Gustavo A. R. Silva
2023-05-23 17:31 ` Kees Cook
1 sibling, 0 replies; 13+ messages in thread
From: Gustavo A. R. Silva @ 2023-05-22 22:12 UTC (permalink / raw)
To: Martin K. Petersen
Cc: James E.J. Bottomley, Dick Kennedy, James Smart, linux-scsi,
linux-kernel, linux-hardening
On Mon, May 22, 2023 at 06:02:21PM -0400, Martin K. Petersen wrote:
>
> Applied to 6.5/scsi-staging, thanks!
Thanks, Martin.
--
Gustavo
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 2/2][next] scsi: lpfc: Use struct_size() helper
2023-05-17 23:01 ` Kees Cook
@ 2023-05-23 14:41 ` Gustavo A. R. Silva
2023-05-23 17:27 ` Kees Cook
0 siblings, 1 reply; 13+ messages in thread
From: Gustavo A. R. Silva @ 2023-05-23 14:41 UTC (permalink / raw)
To: Kees Cook
Cc: Martin K. Petersen, James E.J. Bottomley, Dick Kennedy,
James Smart, linux-scsi, linux-kernel, linux-hardening
On Wed, May 17, 2023 at 04:01:47PM -0700, Kees Cook wrote:
> On Wed, May 17, 2023 at 03:23:01PM -0600, Gustavo A. R. Silva wrote:
> > Prefer struct_size() over open-coded versions of idiom:
> >
> > sizeof(struct-with-flex-array) + sizeof(typeof-flex-array-elements) * count
> >
> > where count is the max number of items the flexible array is supposed to
> > contain.
> >
> > Link: https://github.com/KSPP/linux/issues/160
> > Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
> > ---
> > drivers/scsi/lpfc/lpfc_ct.c | 6 ++----
> > 1 file changed, 2 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/scsi/lpfc/lpfc_ct.c b/drivers/scsi/lpfc/lpfc_ct.c
> > index e880d127d7f5..3b95c56023bf 100644
> > --- a/drivers/scsi/lpfc/lpfc_ct.c
> > +++ b/drivers/scsi/lpfc/lpfc_ct.c
> > @@ -3748,8 +3748,7 @@ lpfc_vmid_cmd(struct lpfc_vport *vport,
> > rap->obj[0].entity_id_len = vmid->vmid_len;
> > memcpy(rap->obj[0].entity_id, vmid->host_vmid, vmid->vmid_len);
> > size = RAPP_IDENT_OFFSET +
> > - sizeof(struct lpfc_vmid_rapp_ident_list) +
> > - sizeof(struct entity_id_object);
> > + struct_size(rap, obj, rap->no_of_objects);
>
> Has rap->no_of_objects always been "1"? (i.e. there was a prior
> multiplication here before...
Mmh.. not sure what multiplication you are talking about. I based these
changes on the fact that rap->no_of_objects is set to cpu_to_be32(1);
for both instances. It doesn't show up in the context of the patch, so
here you go:
3747 rap->no_of_objects = cpu_to_be32(1);
3748 rap->obj[0].entity_id_len = vmid->vmid_len;
3749 memcpy(rap->obj[0].entity_id, vmid->host_vmid, vmid->vmid_len);
3750 size = RAPP_IDENT_OFFSET +
3751 sizeof(struct lpfc_vmid_rapp_ident_list) +
3752 sizeof(struct entity_id_object);
--
Gustavo
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 2/2][next] scsi: lpfc: Use struct_size() helper
2023-05-23 14:41 ` Gustavo A. R. Silva
@ 2023-05-23 17:27 ` Kees Cook
0 siblings, 0 replies; 13+ messages in thread
From: Kees Cook @ 2023-05-23 17:27 UTC (permalink / raw)
To: Gustavo A. R. Silva
Cc: Martin K. Petersen, James E.J. Bottomley, Dick Kennedy,
James Smart, linux-scsi, linux-kernel, linux-hardening
On Tue, May 23, 2023 at 08:41:59AM -0600, Gustavo A. R. Silva wrote:
> On Wed, May 17, 2023 at 04:01:47PM -0700, Kees Cook wrote:
> > On Wed, May 17, 2023 at 03:23:01PM -0600, Gustavo A. R. Silva wrote:
> > > Prefer struct_size() over open-coded versions of idiom:
> > >
> > > sizeof(struct-with-flex-array) + sizeof(typeof-flex-array-elements) * count
> > >
> > > where count is the max number of items the flexible array is supposed to
> > > contain.
> > >
> > > Link: https://github.com/KSPP/linux/issues/160
> > > Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
> > > ---
> > > drivers/scsi/lpfc/lpfc_ct.c | 6 ++----
> > > 1 file changed, 2 insertions(+), 4 deletions(-)
> > >
> > > diff --git a/drivers/scsi/lpfc/lpfc_ct.c b/drivers/scsi/lpfc/lpfc_ct.c
> > > index e880d127d7f5..3b95c56023bf 100644
> > > --- a/drivers/scsi/lpfc/lpfc_ct.c
> > > +++ b/drivers/scsi/lpfc/lpfc_ct.c
> > > @@ -3748,8 +3748,7 @@ lpfc_vmid_cmd(struct lpfc_vport *vport,
> > > rap->obj[0].entity_id_len = vmid->vmid_len;
> > > memcpy(rap->obj[0].entity_id, vmid->host_vmid, vmid->vmid_len);
> > > size = RAPP_IDENT_OFFSET +
> > > - sizeof(struct lpfc_vmid_rapp_ident_list) +
> > > - sizeof(struct entity_id_object);
> > > + struct_size(rap, obj, rap->no_of_objects);
> >
> > Has rap->no_of_objects always been "1"? (i.e. there was a prior
> > multiplication here before...
>
> Mmh.. not sure what multiplication you are talking about. I based these
> changes on the fact that rap->no_of_objects is set to cpu_to_be32(1);
> for both instances. It doesn't show up in the context of the patch, so
> here you go:
>
> 3747 rap->no_of_objects = cpu_to_be32(1);
Ah-ha! So, yeah, this patch is bad then, since no_of_objects will be a
big-endian "1".
This change:
+ struct_size(rap, obj, rap->no_of_objects);
needs to explicitly be:
+ struct_size(rap, obj, 1);
Or, alternatively, just drop the patch entirely.
--
Kees Cook
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/2][next] scsi: lpfc: Replace one-element array with flexible-array member
2023-05-22 22:02 ` Martin K. Petersen
2023-05-22 22:12 ` Gustavo A. R. Silva
@ 2023-05-23 17:31 ` Kees Cook
2023-05-23 19:46 ` Gustavo A. R. Silva
1 sibling, 1 reply; 13+ messages in thread
From: Kees Cook @ 2023-05-23 17:31 UTC (permalink / raw)
To: Martin K. Petersen
Cc: Gustavo A. R. Silva, James E.J. Bottomley, Dick Kennedy,
James Smart, linux-scsi, linux-kernel, linux-hardening
On Mon, May 22, 2023 at 06:02:21PM -0400, Martin K. Petersen wrote:
>
> Gustavo,
>
> > One-element arrays are deprecated, and we are replacing them with flexible
> > array members instead. So, replace one-element arrays with flexible-array
> > members in a couple of structures, and refactor the rest of the code,
> > accordingly.
> >
> > This helps with the ongoing efforts to tighten the FORTIFY_SOURCE
> > routines on memcpy() and help us make progress towards globally
> > enabling -fstrict-flex-arrays=3 [1].
> >
> > This results in no differences in binary output.
>
> Applied to 6.5/scsi-staging, thanks!
Martin, I think this patch is not right -- can you drop this from
staging for the moment?
--
Kees Cook
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/2][next] scsi: lpfc: Replace one-element array with flexible-array member
2023-05-23 17:31 ` Kees Cook
@ 2023-05-23 19:46 ` Gustavo A. R. Silva
2023-05-23 20:29 ` Kees Cook
0 siblings, 1 reply; 13+ messages in thread
From: Gustavo A. R. Silva @ 2023-05-23 19:46 UTC (permalink / raw)
To: Kees Cook, Martin K. Petersen
Cc: Gustavo A. R. Silva, James E.J. Bottomley, Dick Kennedy,
James Smart, linux-scsi, linux-kernel, linux-hardening
On 5/23/23 11:31, Kees Cook wrote:
> On Mon, May 22, 2023 at 06:02:21PM -0400, Martin K. Petersen wrote:
>>
>> Gustavo,
>>
>>> One-element arrays are deprecated, and we are replacing them with flexible
>>> array members instead. So, replace one-element arrays with flexible-array
>>> members in a couple of structures, and refactor the rest of the code,
>>> accordingly.
>>>
>>> This helps with the ongoing efforts to tighten the FORTIFY_SOURCE
>>> routines on memcpy() and help us make progress towards globally
>>> enabling -fstrict-flex-arrays=3 [1].
>>>
>>> This results in no differences in binary output.
>>
>> Applied to 6.5/scsi-staging, thanks!
>
> Martin, I think this patch is not right -- can you drop this from
> staging for the moment?
Martin just took patch 1/2, which is correct:
https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git/commit/?h=6.5/scsi-staging&id=e90644b0ce2d700a65579ac74ff594414e8ba30f
--
Gustavo
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/2][next] scsi: lpfc: Replace one-element array with flexible-array member
2023-05-23 19:46 ` Gustavo A. R. Silva
@ 2023-05-23 20:29 ` Kees Cook
0 siblings, 0 replies; 13+ messages in thread
From: Kees Cook @ 2023-05-23 20:29 UTC (permalink / raw)
To: Gustavo A. R. Silva, Kees Cook, Martin K. Petersen
Cc: Gustavo A. R. Silva, James E.J. Bottomley, Dick Kennedy,
James Smart, linux-scsi, linux-kernel, linux-hardening
On May 23, 2023 12:46:54 PM PDT, "Gustavo A. R. Silva" <gustavo@embeddedor.com> wrote:
>
>
>On 5/23/23 11:31, Kees Cook wrote:
>> On Mon, May 22, 2023 at 06:02:21PM -0400, Martin K. Petersen wrote:
>>>
>>> Gustavo,
>>>
>>>> One-element arrays are deprecated, and we are replacing them with flexible
>>>> array members instead. So, replace one-element arrays with flexible-array
>>>> members in a couple of structures, and refactor the rest of the code,
>>>> accordingly.
>>>>
>>>> This helps with the ongoing efforts to tighten the FORTIFY_SOURCE
>>>> routines on memcpy() and help us make progress towards globally
>>>> enabling -fstrict-flex-arrays=3 [1].
>>>>
>>>> This results in no differences in binary output.
>>>
>>> Applied to 6.5/scsi-staging, thanks!
>>
>> Martin, I think this patch is not right -- can you drop this from
>> staging for the moment?
>
>Martin just took patch 1/2, which is correct:
>
>https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git/commit/?h=6.5/scsi-staging&id=e90644b0ce2d700a65579ac74ff594414e8ba30f
Oops, yes, I thought both got pulled. 1/2 is fine. :)
-Kees
--
Kees Cook
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 0/2][next] scsi: lpfc: Replace one-element array with flexible-array member
2023-05-17 21:22 [PATCH 0/2][next] scsi: lpfc: Replace one-element array with flexible-array member Gustavo A. R. Silva
2023-05-17 21:22 ` [PATCH 1/2][next] " Gustavo A. R. Silva
2023-05-17 21:23 ` [PATCH 2/2][next] scsi: lpfc: Use struct_size() helper Gustavo A. R. Silva
@ 2023-06-01 0:43 ` Martin K. Petersen
2 siblings, 0 replies; 13+ messages in thread
From: Martin K. Petersen @ 2023-06-01 0:43 UTC (permalink / raw)
To: James E.J. Bottomley, Dick Kennedy, James Smart,
Gustavo A. R. Silva
Cc: Martin K . Petersen, linux-scsi, linux-kernel, linux-hardening
On Wed, 17 May 2023 15:22:24 -0600, Gustavo A. R. Silva wrote:
> This small series aims to replace a one-element array with a
> flexible-array member in a couple of structures.
>
> This helps with the ongoing efforts to tighten the FORTIFY_SOURCE
> routines on memcpy() and help us make progress towards globally
> enabling -fstrict-flex-arrays=3 [1].
>
> [...]
Applied to 6.5/scsi-queue, thanks!
[1/2] scsi: lpfc: Replace one-element array with flexible-array member
https://git.kernel.org/mkp/scsi/c/e90644b0ce2d
--
Martin K. Petersen Oracle Linux Engineering
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2023-06-01 0:43 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-17 21:22 [PATCH 0/2][next] scsi: lpfc: Replace one-element array with flexible-array member Gustavo A. R. Silva
2023-05-17 21:22 ` [PATCH 1/2][next] " Gustavo A. R. Silva
2023-05-17 23:02 ` Kees Cook
2023-05-22 22:02 ` Martin K. Petersen
2023-05-22 22:12 ` Gustavo A. R. Silva
2023-05-23 17:31 ` Kees Cook
2023-05-23 19:46 ` Gustavo A. R. Silva
2023-05-23 20:29 ` Kees Cook
2023-05-17 21:23 ` [PATCH 2/2][next] scsi: lpfc: Use struct_size() helper Gustavo A. R. Silva
2023-05-17 23:01 ` Kees Cook
2023-05-23 14:41 ` Gustavo A. R. Silva
2023-05-23 17:27 ` Kees Cook
2023-06-01 0:43 ` [PATCH 0/2][next] scsi: lpfc: Replace one-element array with flexible-array member Martin K. Petersen
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.