* [PATCH] xen/blkfront: remove driver_data direct access of struct device
@ 2009-05-11 19:02 Roel Kluin
2009-05-11 21:02 ` Jeremy Fitzhardinge
0 siblings, 1 reply; 2+ messages in thread
From: Roel Kluin @ 2009-05-11 19:02 UTC (permalink / raw)
To: jeremy; +Cc: virtualization, xen-devel, lkml
To avoid direct access to the driver_data pointer in struct device, the
functions dev_get_drvdata() and dev_set_drvdata() should be used.
Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
---
diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c
index 8f90508..ff09809 100644
--- a/drivers/block/xen-blkfront.c
+++ b/drivers/block/xen-blkfront.c
@@ -755,12 +755,12 @@ static int blkfront_probe(struct xenbus_device *dev,
/* Front end dir is a number, which is used as the id. */
info->handle = simple_strtoul(strrchr(dev->nodename, '/')+1, NULL, 0);
- dev->dev.driver_data = info;
+ dev_set_drvdata(&dev->dev, info);
err = talk_to_backend(dev, info);
if (err) {
kfree(info);
- dev->dev.driver_data = NULL;
+ dev_set_drvdata(&dev->dev, NULL);
return err;
}
@@ -845,7 +845,7 @@ static int blkif_recover(struct blkfront_info *info)
*/
static int blkfront_resume(struct xenbus_device *dev)
{
- struct blkfront_info *info = dev->dev.driver_data;
+ struct blkfront_info *info = dev_get_drvdata(&dev->dev);
int err;
dev_dbg(&dev->dev, "blkfront_resume: %s\n", dev->nodename);
@@ -924,7 +924,7 @@ static void blkfront_connect(struct blkfront_info *info)
*/
static void blkfront_closing(struct xenbus_device *dev)
{
- struct blkfront_info *info = dev->dev.driver_data;
+ struct blkfront_info *info = dev_get_drvdata(&dev->dev);
unsigned long flags;
dev_dbg(&dev->dev, "blkfront_closing: %s removed\n", dev->nodename);
@@ -959,7 +959,7 @@ static void blkfront_closing(struct xenbus_device *dev)
static void backend_changed(struct xenbus_device *dev,
enum xenbus_state backend_state)
{
- struct blkfront_info *info = dev->dev.driver_data;
+ struct blkfront_info *info = dev_get_drvdata(&dev->dev);
struct block_device *bd;
dev_dbg(&dev->dev, "blkfront:backend_changed.\n");
@@ -997,7 +997,7 @@ static void backend_changed(struct xenbus_device *dev,
static int blkfront_remove(struct xenbus_device *dev)
{
- struct blkfront_info *info = dev->dev.driver_data;
+ struct blkfront_info *info = dev_get_drvdata(&dev->dev);
dev_dbg(&dev->dev, "blkfront_remove: %s removed\n", dev->nodename);
@@ -1010,7 +1010,7 @@ static int blkfront_remove(struct xenbus_device *dev)
static int blkfront_is_ready(struct xenbus_device *dev)
{
- struct blkfront_info *info = dev->dev.driver_data;
+ struct blkfront_info *info = dev_get_drvdata(&dev->dev);
return info->is_ready;
}
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH] xen/blkfront: remove driver_data direct access of struct device
2009-05-11 19:02 [PATCH] xen/blkfront: remove driver_data direct access of struct device Roel Kluin
@ 2009-05-11 21:02 ` Jeremy Fitzhardinge
0 siblings, 0 replies; 2+ messages in thread
From: Jeremy Fitzhardinge @ 2009-05-11 21:02 UTC (permalink / raw)
To: Roel Kluin; +Cc: virtualization, xen-devel, Greg KH, jeremy, lkml
Roel Kluin wrote:
> To avoid direct access to the driver_data pointer in struct device, the
> functions dev_get_drvdata() and dev_set_drvdata() should be used.
>
Are these the same as the ones Greg KH posted last week?
J
> Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
> ---
> diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c
> index 8f90508..ff09809 100644
> --- a/drivers/block/xen-blkfront.c
> +++ b/drivers/block/xen-blkfront.c
> @@ -755,12 +755,12 @@ static int blkfront_probe(struct xenbus_device *dev,
>
> /* Front end dir is a number, which is used as the id. */
> info->handle = simple_strtoul(strrchr(dev->nodename, '/')+1, NULL, 0);
> - dev->dev.driver_data = info;
> + dev_set_drvdata(&dev->dev, info);
>
> err = talk_to_backend(dev, info);
> if (err) {
> kfree(info);
> - dev->dev.driver_data = NULL;
> + dev_set_drvdata(&dev->dev, NULL);
> return err;
> }
>
> @@ -845,7 +845,7 @@ static int blkif_recover(struct blkfront_info *info)
> */
> static int blkfront_resume(struct xenbus_device *dev)
> {
> - struct blkfront_info *info = dev->dev.driver_data;
> + struct blkfront_info *info = dev_get_drvdata(&dev->dev);
> int err;
>
> dev_dbg(&dev->dev, "blkfront_resume: %s\n", dev->nodename);
> @@ -924,7 +924,7 @@ static void blkfront_connect(struct blkfront_info *info)
> */
> static void blkfront_closing(struct xenbus_device *dev)
> {
> - struct blkfront_info *info = dev->dev.driver_data;
> + struct blkfront_info *info = dev_get_drvdata(&dev->dev);
> unsigned long flags;
>
> dev_dbg(&dev->dev, "blkfront_closing: %s removed\n", dev->nodename);
> @@ -959,7 +959,7 @@ static void blkfront_closing(struct xenbus_device *dev)
> static void backend_changed(struct xenbus_device *dev,
> enum xenbus_state backend_state)
> {
> - struct blkfront_info *info = dev->dev.driver_data;
> + struct blkfront_info *info = dev_get_drvdata(&dev->dev);
> struct block_device *bd;
>
> dev_dbg(&dev->dev, "blkfront:backend_changed.\n");
> @@ -997,7 +997,7 @@ static void backend_changed(struct xenbus_device *dev,
>
> static int blkfront_remove(struct xenbus_device *dev)
> {
> - struct blkfront_info *info = dev->dev.driver_data;
> + struct blkfront_info *info = dev_get_drvdata(&dev->dev);
>
> dev_dbg(&dev->dev, "blkfront_remove: %s removed\n", dev->nodename);
>
> @@ -1010,7 +1010,7 @@ static int blkfront_remove(struct xenbus_device *dev)
>
> static int blkfront_is_ready(struct xenbus_device *dev)
> {
> - struct blkfront_info *info = dev->dev.driver_data;
> + struct blkfront_info *info = dev_get_drvdata(&dev->dev);
>
> return info->is_ready;
> }
> _______________________________________________
> Virtualization mailing list
> Virtualization@lists.linux-foundation.org
> https://lists.linux-foundation.org/mailman/listinfo/virtualization
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-05-11 21:02 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-05-11 19:02 [PATCH] xen/blkfront: remove driver_data direct access of struct device Roel Kluin
2009-05-11 21:02 ` Jeremy Fitzhardinge
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).