]> nv-tegra.nvidia Code Review - linux-2.6.git/commitdiff
ACPI: export ACPI events via acpi_mc_group multicast group
authorZhang Rui <rui.zhang@intel.com>
Fri, 20 Jul 2007 08:41:14 +0000 (16:41 +0800)
committerLen Brown <len.brown@intel.com>
Sun, 22 Jul 2007 05:05:16 +0000 (01:05 -0400)
This is an incremental patch for the recent genetlink
multicast changes.

Now ACPI events are exported via generic netlink multicast group.

Thanks for Johannes' help on developing this patch

Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/event.c

index de4def9b55150afc213c133972594079172b3f8d..dfa5853b17f097555095c9b87668d03a39ba6bd8 100644 (file)
@@ -132,30 +132,19 @@ enum {
 };
 #define ACPI_GENL_CMD_MAX (__ACPI_GENL_CMD_MAX - 1)
 
 };
 #define ACPI_GENL_CMD_MAX (__ACPI_GENL_CMD_MAX - 1)
 
-#define ACPI_GENL_NAME         "acpi_event"
-#define ACPI_GENL_VERSION      0x01
+#define ACPI_GENL_FAMILY_NAME          "acpi_event"
+#define ACPI_GENL_VERSION              0x01
+#define ACPI_GENL_MCAST_GROUP_NAME     "acpi_mc_group"
 
 static struct genl_family acpi_event_genl_family = {
        .id = GENL_ID_GENERATE,
 
 static struct genl_family acpi_event_genl_family = {
        .id = GENL_ID_GENERATE,
-       .name = ACPI_GENL_NAME,
+       .name = ACPI_GENL_FAMILY_NAME,
        .version = ACPI_GENL_VERSION,
        .maxattr = ACPI_GENL_ATTR_MAX,
 };
 
        .version = ACPI_GENL_VERSION,
        .maxattr = ACPI_GENL_ATTR_MAX,
 };
 
-/* .doit: standard command callback */
-static int acpi_genl_cmd_event(struct sk_buff *skb, struct genl_info *info)
-{
-       struct acpi_genl_event *event = info->userhdr;
-
-       if (!event)
-               ACPI_DEBUG_PRINT((ACPI_DB_WARN, "ACPI event: NULL\n"));
-
-       return 0;
-}
-
-static struct genl_ops acpi_event_genl_ops = {
-       .cmd = ACPI_GENL_CMD_EVENT,
-       .doit = acpi_genl_cmd_event,
+static struct genl_multicast_group acpi_event_mcgrp = {
+       .name = ACPI_GENL_MCAST_GROUP_NAME,
 };
 
 int acpi_bus_generate_genetlink_event(struct acpi_device *device,
 };
 
 int acpi_bus_generate_genetlink_event(struct acpi_device *device,
@@ -215,7 +204,7 @@ int acpi_bus_generate_genetlink_event(struct acpi_device *device,
        }
 
        result =
        }
 
        result =
-           genlmsg_multicast(skb, 0, acpi_event_genl_family.id, GFP_ATOMIC);
+           genlmsg_multicast(skb, 0, acpi_event_mcgrp.id, GFP_ATOMIC);
        if (result)
                ACPI_DEBUG_PRINT((ACPI_DB_INFO,
                                  "Failed to send a Genetlink message!\n"));
        if (result)
                ACPI_DEBUG_PRINT((ACPI_DB_INFO,
                                  "Failed to send a Genetlink message!\n"));
@@ -230,8 +219,8 @@ static int acpi_event_genetlink_init(void)
        if (result)
                return result;
 
        if (result)
                return result;
 
-       result =
-           genl_register_ops(&acpi_event_genl_family, &acpi_event_genl_ops);
+       result = genl_register_mc_group(&acpi_event_genl_family,
+                                       &acpi_event_mcgrp);
        if (result)
                genl_unregister_family(&acpi_event_genl_family);
 
        if (result)
                genl_unregister_family(&acpi_event_genl_family);