'struct mmp_overlay_ops' is not modified in this driver.

Constifying this structure moves some data to a read-only section, so
increase overall security.

On a x86_64, with allmodconfig, as an example:
Before:
======
   text    data     bss     dec     hex filename
  11798     555      16   12369    3051 drivers/video/fbdev/mmp/hw/mmp_ctrl.o

After:
=====
   text    data     bss     dec     hex filename
  11834     507      16   12357    3045 drivers/video/fbdev/mmp/hw/mmp_ctrl.o

Signed-off-by: Christophe JAILLET <christophe.jail...@wanadoo.fr>
---
Compile tested-only
---
 drivers/video/fbdev/mmp/hw/mmp_ctrl.c | 2 +-
 include/video/mmp_disp.h              | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/video/fbdev/mmp/hw/mmp_ctrl.c 
b/drivers/video/fbdev/mmp/hw/mmp_ctrl.c
index 76b50b6c98ad..a20a2c408127 100644
--- a/drivers/video/fbdev/mmp/hw/mmp_ctrl.c
+++ b/drivers/video/fbdev/mmp/hw/mmp_ctrl.c
@@ -313,7 +313,7 @@ static void path_set_mode(struct mmp_path *path, struct 
mmp_mode *mode)
        mutex_unlock(&path->access_ok);
 }
 
-static struct mmp_overlay_ops mmphw_overlay_ops = {
+static const struct mmp_overlay_ops mmphw_overlay_ops = {
        .set_fetch = overlay_set_fetch,
        .set_onoff = overlay_set_onoff,
        .set_win = overlay_set_win,
diff --git a/include/video/mmp_disp.h b/include/video/mmp_disp.h
index a722dcbf5073..41354bd49895 100644
--- a/include/video/mmp_disp.h
+++ b/include/video/mmp_disp.h
@@ -156,7 +156,7 @@ struct mmp_overlay {
        int status;
        struct mutex access_ok;
 
-       struct mmp_overlay_ops *ops;
+       const struct mmp_overlay_ops *ops;
 };
 
 /* panel type */
@@ -299,7 +299,7 @@ struct mmp_path_info {
        int overlay_num;
        void (*set_mode)(struct mmp_path *path, struct mmp_mode *mode);
        void (*set_onoff)(struct mmp_path *path, int status);
-       struct mmp_overlay_ops *overlay_ops;
+       const struct mmp_overlay_ops *overlay_ops;
        void *plat_data;
 };
 
-- 
2.45.2

Reply via email to