[patch 03/47] cio: Use helpers instead of container_of().

From: Martin Schwidefsky
Date: Thu Dec 20 2007 - 10:22:36 EST


From: Cornelia Huck <cornelia.huck@xxxxxxxxxx>

- Introduce to_cssdriver.
- Use to_xxx instead of container_of where possible.

Signed-off-by: Cornelia Huck <cornelia.huck@xxxxxxxxxx>
Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
---

drivers/s390/cio/ccwgroup.c | 4 ++--
drivers/s390/cio/css.c | 6 +++---
drivers/s390/cio/css.h | 2 ++
3 files changed, 7 insertions(+), 5 deletions(-)

Index: quilt-2.6/drivers/s390/cio/ccwgroup.c
===================================================================
--- quilt-2.6.orig/drivers/s390/cio/ccwgroup.c
+++ quilt-2.6/drivers/s390/cio/ccwgroup.c
@@ -35,8 +35,8 @@ ccwgroup_bus_match (struct device * dev,
struct ccwgroup_device *gdev;
struct ccwgroup_driver *gdrv;

- gdev = container_of(dev, struct ccwgroup_device, dev);
- gdrv = container_of(drv, struct ccwgroup_driver, driver);
+ gdev = to_ccwgroupdev(dev);
+ gdrv = to_ccwgroupdrv(drv);

if (gdev->creator_id == gdrv->driver_id)
return 1;
Index: quilt-2.6/drivers/s390/cio/css.c
===================================================================
--- quilt-2.6.orig/drivers/s390/cio/css.c
+++ quilt-2.6/drivers/s390/cio/css.c
@@ -787,8 +787,8 @@ int sch_is_pseudo_sch(struct subchannel
static int
css_bus_match (struct device *dev, struct device_driver *drv)
{
- struct subchannel *sch = container_of (dev, struct subchannel, dev);
- struct css_driver *driver = container_of (drv, struct css_driver, drv);
+ struct subchannel *sch = to_subchannel(dev);
+ struct css_driver *driver = to_cssdriver(drv);

if (sch->st == driver->subchannel_type)
return 1;
@@ -802,7 +802,7 @@ css_probe (struct device *dev)
struct subchannel *sch;

sch = to_subchannel(dev);
- sch->driver = container_of (dev->driver, struct css_driver, drv);
+ sch->driver = to_cssdriver(dev->driver);
return (sch->driver->probe ? sch->driver->probe(sch) : 0);
}

Index: quilt-2.6/drivers/s390/cio/css.h
===================================================================
--- quilt-2.6.orig/drivers/s390/cio/css.h
+++ quilt-2.6/drivers/s390/cio/css.h
@@ -134,6 +134,8 @@ struct css_driver {
void (*shutdown)(struct subchannel *);
};

+#define to_cssdriver(n) container_of(n, struct css_driver, drv)
+
/*
* all css_drivers have the css_bus_type
*/

--
blue skies,
Martin.

"Reality continues to ruin my life." - Calvin.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/