From b27ee00bf5e377a4b59b454c68c8617ea9666bc8 Mon Sep 17 00:00:00 2001 From: Lucas De Marchi Date: Thu, 26 Apr 2012 13:36:02 -0300 Subject: udev: use container_of() macro --- src/udev/udevd.c | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) (limited to 'src/udev/udevd.c') diff --git a/src/udev/udevd.c b/src/udev/udevd.c index 59e2cfac6b..0d85960e63 100644 --- a/src/udev/udevd.c +++ b/src/udev/udevd.c @@ -99,13 +99,9 @@ struct event { int ifindex; }; -static struct event *node_to_event(struct udev_list_node *node) +static inline struct event *node_to_event(struct udev_list_node *node) { - char *event; - - event = (char *)node; - event -= offsetof(struct event, node); - return (struct event *)event; + return container_of(node, struct event, node); } static void event_queue_cleanup(struct udev *udev, enum event_state type); @@ -134,13 +130,9 @@ struct worker_message { int exitcode; }; -static struct worker *node_to_worker(struct udev_list_node *node) +static inline struct worker *node_to_worker(struct udev_list_node *node) { - char *worker; - - worker = (char *)node; - worker -= offsetof(struct worker, node); - return (struct worker *)worker; + return container_of(node, struct worker, node); } static void event_queue_delete(struct event *event, bool export) -- cgit v1.2.3-54-g00ecf