diff mbox

Input: serio - fix sysfs layout

Message ID 20131207154116.GA9902@core.coreip.homeip.net (mailing list archive)
State New, archived
Headers show

Commit Message

Dmitry Torokhov Dec. 7, 2013, 3:41 p.m. UTC
Restore previous layout of sysfs attributes that was broken by commit
3778a2129bcce84f684cc0017ed20d2524afd289 (input: serio: remove bus usage of
dev_attrs) which moved all serio device attributes into 'id' group, when
only 'type', 'proto', 'id', and 'extra' should be in 'id' group and the
rest of attributes should be attached directly to the device.

Reported-by: Thomas Hellstrom <thellstrom@vmware.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
---
 drivers/input/serio/serio.c | 24 +++++++++++++++++-------
 1 file changed, 17 insertions(+), 7 deletions(-)

Comments

Greg KH Dec. 7, 2013, 5:12 p.m. UTC | #1
On Sat, Dec 07, 2013 at 07:41:19AM -0800, Dmitry Torokhov wrote:
> Restore previous layout of sysfs attributes that was broken by commit
> 3778a2129bcce84f684cc0017ed20d2524afd289 (input: serio: remove bus usage of
> dev_attrs) which moved all serio device attributes into 'id' group, when
> only 'type', 'proto', 'id', and 'extra' should be in 'id' group and the
> rest of attributes should be attached directly to the device.

Ick, sorry about that.

> Reported-by: Thomas Hellstrom <thellstrom@vmware.com>
> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>

Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Thomas Hellstrom Dec. 7, 2013, 8:51 p.m. UTC | #2
On 12/07/2013 04:41 PM, Dmitry Torokhov wrote:
> Restore previous layout of sysfs attributes that was broken by commit
> 3778a2129bcce84f684cc0017ed20d2524afd289 (input: serio: remove bus usage of
> dev_attrs) which moved all serio device attributes into 'id' group, when
> only 'type', 'proto', 'id', and 'extra' should be in 'id' group and the
> rest of attributes should be attached directly to the device.

Thanks for doing this. Makes vmmouse work again.

>
> Reported-by: Thomas Hellstrom <thellstrom@vmware.com>
> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>

Tested-by: Thomas Hellstrom <thellstrom@vmware.com>


> ---
>   drivers/input/serio/serio.c | 24 +++++++++++++++++-------
>   1 file changed, 17 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/input/serio/serio.c b/drivers/input/serio/serio.c
> index 98707fb..8f4c4ab 100644
> --- a/drivers/input/serio/serio.c
> +++ b/drivers/input/serio/serio.c
> @@ -455,16 +455,26 @@ static DEVICE_ATTR_RO(type);
>   static DEVICE_ATTR_RO(proto);
>   static DEVICE_ATTR_RO(id);
>   static DEVICE_ATTR_RO(extra);
> -static DEVICE_ATTR_RO(modalias);
> -static DEVICE_ATTR_WO(drvctl);
> -static DEVICE_ATTR(description, S_IRUGO, serio_show_description, NULL);
> -static DEVICE_ATTR(bind_mode, S_IWUSR | S_IRUGO, serio_show_bind_mode, serio_set_bind_mode);
>   
>   static struct attribute *serio_device_id_attrs[] = {
>   	&dev_attr_type.attr,
>   	&dev_attr_proto.attr,
>   	&dev_attr_id.attr,
>   	&dev_attr_extra.attr,
> +	NULL
> +};
> +
> +static struct attribute_group serio_id_attr_group = {
> +	.name	= "id",
> +	.attrs	= serio_device_id_attrs,
> +};
> +
> +static DEVICE_ATTR_RO(modalias);
> +static DEVICE_ATTR_WO(drvctl);
> +static DEVICE_ATTR(description, S_IRUGO, serio_show_description, NULL);
> +static DEVICE_ATTR(bind_mode, S_IWUSR | S_IRUGO, serio_show_bind_mode, serio_set_bind_mode);
> +
> +static struct attribute *serio_device_attrs[] = {
>   	&dev_attr_modalias.attr,
>   	&dev_attr_description.attr,
>   	&dev_attr_drvctl.attr,
> @@ -472,13 +482,13 @@ static struct attribute *serio_device_id_attrs[] = {
>   	NULL
>   };
>   
> -static struct attribute_group serio_id_attr_group = {
> -	.name	= "id",
> -	.attrs	= serio_device_id_attrs,
> +static struct attribute_group serio_device_attr_group = {
> +	.attrs	= serio_device_attrs,
>   };
>   
>   static const struct attribute_group *serio_device_attr_groups[] = {
>   	&serio_id_attr_group,
> +	&serio_device_attr_group,
>   	NULL
>   };
>   
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/input/serio/serio.c b/drivers/input/serio/serio.c
index 98707fb..8f4c4ab 100644
--- a/drivers/input/serio/serio.c
+++ b/drivers/input/serio/serio.c
@@ -455,16 +455,26 @@  static DEVICE_ATTR_RO(type);
 static DEVICE_ATTR_RO(proto);
 static DEVICE_ATTR_RO(id);
 static DEVICE_ATTR_RO(extra);
-static DEVICE_ATTR_RO(modalias);
-static DEVICE_ATTR_WO(drvctl);
-static DEVICE_ATTR(description, S_IRUGO, serio_show_description, NULL);
-static DEVICE_ATTR(bind_mode, S_IWUSR | S_IRUGO, serio_show_bind_mode, serio_set_bind_mode);
 
 static struct attribute *serio_device_id_attrs[] = {
 	&dev_attr_type.attr,
 	&dev_attr_proto.attr,
 	&dev_attr_id.attr,
 	&dev_attr_extra.attr,
+	NULL
+};
+
+static struct attribute_group serio_id_attr_group = {
+	.name	= "id",
+	.attrs	= serio_device_id_attrs,
+};
+
+static DEVICE_ATTR_RO(modalias);
+static DEVICE_ATTR_WO(drvctl);
+static DEVICE_ATTR(description, S_IRUGO, serio_show_description, NULL);
+static DEVICE_ATTR(bind_mode, S_IWUSR | S_IRUGO, serio_show_bind_mode, serio_set_bind_mode);
+
+static struct attribute *serio_device_attrs[] = {
 	&dev_attr_modalias.attr,
 	&dev_attr_description.attr,
 	&dev_attr_drvctl.attr,
@@ -472,13 +482,13 @@  static struct attribute *serio_device_id_attrs[] = {
 	NULL
 };
 
-static struct attribute_group serio_id_attr_group = {
-	.name	= "id",
-	.attrs	= serio_device_id_attrs,
+static struct attribute_group serio_device_attr_group = {
+	.attrs	= serio_device_attrs,
 };
 
 static const struct attribute_group *serio_device_attr_groups[] = {
 	&serio_id_attr_group,
+	&serio_device_attr_group,
 	NULL
 };