* [PATCH] st-delta: constify vb2_ops structures
@ 2017-07-06 20:14 Gustavo A. R. Silva
2017-07-07 14:33 ` Hugues FRUCHET
0 siblings, 1 reply; 3+ messages in thread
From: Gustavo A. R. Silva @ 2017-07-06 20:14 UTC (permalink / raw)
To: Hugues Fruchet, Mauro Carvalho Chehab
Cc: linux-media, linux-kernel, Gustavo A. R. Silva
Check for vb2_ops structures that are only stored in the ops field of a
vb2_queue structure. That field is declared const, so vb2_ops structures
that have this property can be declared as const also.
This issue was detected using Coccinelle and the following semantic patch:
@r disable optional_qualifier@
identifier i;
position p;
@@
static struct vb2_ops i@p = { ... };
@ok@
identifier r.i;
struct vb2_queue e;
position p;
@@
e.ops = &i@p;
@bad@
position p != {r.p,ok.p};
identifier r.i;
struct vb2_ops e;
@@
e@i@p
@depends on !bad disable optional_qualifier@
identifier r.i;
@@
static
+const
struct vb2_ops i = { ... };
Signed-off-by: Gustavo A. R. Silva <garsilva@embeddedor.com>
---
drivers/media/platform/sti/delta/delta-v4l2.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/media/platform/sti/delta/delta-v4l2.c b/drivers/media/platform/sti/delta/delta-v4l2.c
index c6f2e24..ff9850e 100644
--- a/drivers/media/platform/sti/delta/delta-v4l2.c
+++ b/drivers/media/platform/sti/delta/delta-v4l2.c
@@ -1574,7 +1574,7 @@ static void delta_vb2_frame_stop_streaming(struct vb2_queue *q)
}
/* VB2 queue ops */
-static struct vb2_ops delta_vb2_au_ops = {
+static const struct vb2_ops delta_vb2_au_ops = {
.queue_setup = delta_vb2_au_queue_setup,
.buf_prepare = delta_vb2_au_prepare,
.buf_queue = delta_vb2_au_queue,
@@ -1584,7 +1584,7 @@ static struct vb2_ops delta_vb2_au_ops = {
.stop_streaming = delta_vb2_au_stop_streaming,
};
-static struct vb2_ops delta_vb2_frame_ops = {
+static const struct vb2_ops delta_vb2_frame_ops = {
.queue_setup = delta_vb2_frame_queue_setup,
.buf_prepare = delta_vb2_frame_prepare,
.buf_finish = delta_vb2_frame_finish,
--
2.5.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] st-delta: constify vb2_ops structures
2017-07-06 20:14 [PATCH] st-delta: constify vb2_ops structures Gustavo A. R. Silva
@ 2017-07-07 14:33 ` Hugues FRUCHET
2017-07-17 3:58 ` Gustavo A. R. Silva
0 siblings, 1 reply; 3+ messages in thread
From: Hugues FRUCHET @ 2017-07-07 14:33 UTC (permalink / raw)
To: Gustavo A. R. Silva, Mauro Carvalho Chehab
Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org
Acked-by: Hugues Fruchet <hugues.fruchet@st.com>
On 07/06/2017 10:14 PM, Gustavo A. R. Silva wrote:
> Check for vb2_ops structures that are only stored in the ops field of a
> vb2_queue structure. That field is declared const, so vb2_ops structures
> that have this property can be declared as const also.
>
> This issue was detected using Coccinelle and the following semantic patch:
>
> @r disable optional_qualifier@
> identifier i;
> position p;
> @@
> static struct vb2_ops i@p = { ... };
>
> @ok@
> identifier r.i;
> struct vb2_queue e;
> position p;
> @@
> e.ops = &i@p;
>
> @bad@
> position p != {r.p,ok.p};
> identifier r.i;
> struct vb2_ops e;
> @@
> e@i@p
>
> @depends on !bad disable optional_qualifier@
> identifier r.i;
> @@
> static
> +const
> struct vb2_ops i = { ... };
>
> Signed-off-by: Gustavo A. R. Silva <garsilva@embeddedor.com>
> ---
> drivers/media/platform/sti/delta/delta-v4l2.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/media/platform/sti/delta/delta-v4l2.c b/drivers/media/platform/sti/delta/delta-v4l2.c
> index c6f2e24..ff9850e 100644
> --- a/drivers/media/platform/sti/delta/delta-v4l2.c
> +++ b/drivers/media/platform/sti/delta/delta-v4l2.c
> @@ -1574,7 +1574,7 @@ static void delta_vb2_frame_stop_streaming(struct vb2_queue *q)
> }
>
> /* VB2 queue ops */
> -static struct vb2_ops delta_vb2_au_ops = {
> +static const struct vb2_ops delta_vb2_au_ops = {
> .queue_setup = delta_vb2_au_queue_setup,
> .buf_prepare = delta_vb2_au_prepare,
> .buf_queue = delta_vb2_au_queue,
> @@ -1584,7 +1584,7 @@ static struct vb2_ops delta_vb2_au_ops = {
> .stop_streaming = delta_vb2_au_stop_streaming,
> };
>
> -static struct vb2_ops delta_vb2_frame_ops = {
> +static const struct vb2_ops delta_vb2_frame_ops = {
> .queue_setup = delta_vb2_frame_queue_setup,
> .buf_prepare = delta_vb2_frame_prepare,
> .buf_finish = delta_vb2_frame_finish,
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] st-delta: constify vb2_ops structures
2017-07-07 14:33 ` Hugues FRUCHET
@ 2017-07-17 3:58 ` Gustavo A. R. Silva
0 siblings, 0 replies; 3+ messages in thread
From: Gustavo A. R. Silva @ 2017-07-17 3:58 UTC (permalink / raw)
To: Hugues FRUCHET, Mauro Carvalho Chehab
Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org
Thank you, Hugues.
On 07/07/2017 09:33 AM, Hugues FRUCHET wrote:
> Acked-by: Hugues Fruchet <hugues.fruchet@st.com>
>
> On 07/06/2017 10:14 PM, Gustavo A. R. Silva wrote:
>> Check for vb2_ops structures that are only stored in the ops field of a
>> vb2_queue structure. That field is declared const, so vb2_ops structures
>> that have this property can be declared as const also.
>>
>> This issue was detected using Coccinelle and the following semantic patch:
>>
>> @r disable optional_qualifier@
>> identifier i;
>> position p;
>> @@
>> static struct vb2_ops i@p = { ... };
>>
>> @ok@
>> identifier r.i;
>> struct vb2_queue e;
>> position p;
>> @@
>> e.ops = &i@p;
>>
>> @bad@
>> position p != {r.p,ok.p};
>> identifier r.i;
>> struct vb2_ops e;
>> @@
>> e@i@p
>>
>> @depends on !bad disable optional_qualifier@
>> identifier r.i;
>> @@
>> static
>> +const
>> struct vb2_ops i = { ... };
>>
>> Signed-off-by: Gustavo A. R. Silva <garsilva@embeddedor.com>
>> ---
>> drivers/media/platform/sti/delta/delta-v4l2.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/media/platform/sti/delta/delta-v4l2.c b/drivers/media/platform/sti/delta/delta-v4l2.c
>> index c6f2e24..ff9850e 100644
>> --- a/drivers/media/platform/sti/delta/delta-v4l2.c
>> +++ b/drivers/media/platform/sti/delta/delta-v4l2.c
>> @@ -1574,7 +1574,7 @@ static void delta_vb2_frame_stop_streaming(struct vb2_queue *q)
>> }
>>
>> /* VB2 queue ops */
>> -static struct vb2_ops delta_vb2_au_ops = {
>> +static const struct vb2_ops delta_vb2_au_ops = {
>> .queue_setup = delta_vb2_au_queue_setup,
>> .buf_prepare = delta_vb2_au_prepare,
>> .buf_queue = delta_vb2_au_queue,
>> @@ -1584,7 +1584,7 @@ static struct vb2_ops delta_vb2_au_ops = {
>> .stop_streaming = delta_vb2_au_stop_streaming,
>> };
>>
>> -static struct vb2_ops delta_vb2_frame_ops = {
>> +static const struct vb2_ops delta_vb2_frame_ops = {
>> .queue_setup = delta_vb2_frame_queue_setup,
>> .buf_prepare = delta_vb2_frame_prepare,
>> .buf_finish = delta_vb2_frame_finish,
--
Gustavo A. R. Silva
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-07-17 4:23 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-06 20:14 [PATCH] st-delta: constify vb2_ops structures Gustavo A. R. Silva
2017-07-07 14:33 ` Hugues FRUCHET
2017-07-17 3:58 ` Gustavo A. R. Silva
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.