* [PATCH] scsi: ibmvscsi: constify dev_pm_ops structures.
@ 2017-06-29 7:43 Arvind Yadav
2017-06-29 22:38 ` Tyrel Datwyler
2017-07-01 21:05 ` Martin K. Petersen
0 siblings, 2 replies; 4+ messages in thread
From: Arvind Yadav @ 2017-06-29 7:43 UTC (permalink / raw)
To: tyreld, benh, paulus, mpe, jejb, martin.petersen
Cc: linux-scsi, linuxppc-dev, linux-kernel
dev_pm_ops are not supposed to change at runtime. All functions
working with dev_pm_ops provided by <linux/device.h> work with const
dev_pm_ops. So mark the non-const structs as const.
File size before:
text data bss dec hex filename
17956 1456 8 19420 4bdc drivers/scsi/ibmvscsi/ibmvscsi.o
File size After adding 'const':
text data bss dec hex filename
18164 1264 8 19436 4bec drivers/scsi/ibmvscsi/ibmvscsi.o
Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
---
drivers/scsi/ibmvscsi/ibmvscsi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/scsi/ibmvscsi/ibmvscsi.c b/drivers/scsi/ibmvscsi/ibmvscsi.c
index 1deb0a9..da22b36 100644
--- a/drivers/scsi/ibmvscsi/ibmvscsi.c
+++ b/drivers/scsi/ibmvscsi/ibmvscsi.c
@@ -2336,7 +2336,7 @@ static int ibmvscsi_resume(struct device *dev)
};
MODULE_DEVICE_TABLE(vio, ibmvscsi_device_table);
-static struct dev_pm_ops ibmvscsi_pm_ops = {
+static const struct dev_pm_ops ibmvscsi_pm_ops = {
.resume = ibmvscsi_resume
};
--
1.9.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] scsi: ibmvscsi: constify dev_pm_ops structures.
2017-06-29 7:43 [PATCH] scsi: ibmvscsi: constify dev_pm_ops structures Arvind Yadav
@ 2017-06-29 22:38 ` Tyrel Datwyler
2017-07-01 21:05 ` Martin K. Petersen
1 sibling, 0 replies; 4+ messages in thread
From: Tyrel Datwyler @ 2017-06-29 22:38 UTC (permalink / raw)
To: Arvind Yadav, tyreld, benh, paulus, mpe, jejb, martin.petersen
Cc: linux-scsi, linuxppc-dev, linux-kernel
On 06/29/2017 12:43 AM, Arvind Yadav wrote:
> dev_pm_ops are not supposed to change at runtime. All functions
> working with dev_pm_ops provided by <linux/device.h> work with const
> dev_pm_ops. So mark the non-const structs as const.
>
> File size before:
> text data bss dec hex filename
> 17956 1456 8 19420 4bdc drivers/scsi/ibmvscsi/ibmvscsi.o
>
> File size After adding 'const':
> text data bss dec hex filename
> 18164 1264 8 19436 4bec drivers/scsi/ibmvscsi/ibmvscsi.o
>
> Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
Acked-by: Tyrel Datwyler <tyreld@linux.vnet.ibm.com>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] scsi: ibmvscsi: constify dev_pm_ops structures.
2017-06-29 7:43 [PATCH] scsi: ibmvscsi: constify dev_pm_ops structures Arvind Yadav
2017-06-29 22:38 ` Tyrel Datwyler
@ 2017-07-01 21:05 ` Martin K. Petersen
1 sibling, 0 replies; 4+ messages in thread
From: Martin K. Petersen @ 2017-07-01 21:05 UTC (permalink / raw)
To: Arvind Yadav
Cc: tyreld, benh, paulus, mpe, jejb, martin.petersen, linux-scsi,
linuxppc-dev, linux-kernel
Arvind,
> dev_pm_ops are not supposed to change at runtime. All functions
> working with dev_pm_ops provided by <linux/device.h> work with const
> dev_pm_ops. So mark the non-const structs as const.
Applied to 4.13/scsi-queue.
--
Martin K. Petersen Oracle Linux Engineering
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH] scsi: ibmvscsi: constify dev_pm_ops structures
@ 2017-01-15 4:53 Bhumika Goyal
0 siblings, 0 replies; 4+ messages in thread
From: Bhumika Goyal @ 2017-01-15 4:53 UTC (permalink / raw)
To: julia.lawall, tyreld, benh, paulus, mpe, jejb, martin.petersen,
linux-scsi, linuxppc-dev, linux-kernel
Cc: Bhumika Goyal
Declare dev_pm_ops structures as const as they are only stored in the pm
field of a vio_driver structure. This field is of type const, so
dev_pm_ops structures having similar properties can be declared const.
Done using Coccinelle:
@r1 disable optional_qualifier@
identifier i;
position p;
@@
static struct dev_pm_ops i@p={...};
@ok@
identifier r1.i;
position p;
struct vio_driver x;
@@
x.pm=&i@p;
@bad@
position p!={r1.p,ok.p};
identifier r1.i;
@@
i@p
@depends on !bad disable optional_qualifier@
identifier r1.i;
@@
+const
struct dev_pm_ops i;
File sizes after cross compiling the .o files for powerpc architecture.
File size before:
text data bss dec hex filename
57893 5665 20 63578 f85a drivers/scsi/ibmvscsi/ibmvfc.o
File size after:
text data bss dec hex filename
58077 5481 20 63578 f85a drivers/scsi/ibmvscsi/ibmvfc.o
File size before:
text data bss dec hex filenam
20990 2816 80 23886 5d4e drivers/scsi/ibmvscsi/ibmvscsi.o
File size after:
text data bss dec hex filename
21174 2632 80 23886 5d4e drivers/scsi/ibmvscsi/ibmvscsi.o
Signed-off-by: Bhumika Goyal <bhumirks@gmail.com>
---
drivers/scsi/ibmvscsi/ibmvfc.c | 2 +-
drivers/scsi/ibmvscsi/ibmvscsi.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/ibmvscsi/ibmvfc.c b/drivers/scsi/ibmvscsi/ibmvfc.c
index 78b72c2..1e1b343 100644
--- a/drivers/scsi/ibmvscsi/ibmvfc.c
+++ b/drivers/scsi/ibmvscsi/ibmvfc.c
@@ -4940,7 +4940,7 @@ static unsigned long ibmvfc_get_desired_dma(struct vio_dev *vdev)
};
MODULE_DEVICE_TABLE(vio, ibmvfc_device_table);
-static struct dev_pm_ops ibmvfc_pm_ops = {
+static const struct dev_pm_ops ibmvfc_pm_ops = {
.resume = ibmvfc_resume
};
diff --git a/drivers/scsi/ibmvscsi/ibmvscsi.c b/drivers/scsi/ibmvscsi/ibmvscsi.c
index 50cd011..b94e7b1 100644
--- a/drivers/scsi/ibmvscsi/ibmvscsi.c
+++ b/drivers/scsi/ibmvscsi/ibmvscsi.c
@@ -2335,7 +2335,7 @@ static int ibmvscsi_resume(struct device *dev)
};
MODULE_DEVICE_TABLE(vio, ibmvscsi_device_table);
-static struct dev_pm_ops ibmvscsi_pm_ops = {
+static const struct dev_pm_ops ibmvscsi_pm_ops = {
.resume = ibmvscsi_resume
};
--
1.9.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2017-07-01 21:05 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-29 7:43 [PATCH] scsi: ibmvscsi: constify dev_pm_ops structures Arvind Yadav
2017-06-29 22:38 ` Tyrel Datwyler
2017-07-01 21:05 ` Martin K. Petersen
-- strict thread matches above, loose matches on Subject: below --
2017-01-15 4:53 Bhumika Goyal
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).