Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
629b77a4
K
Kernel
项目概览
openeuler
/
Kernel
12 个月 前同步成功
通知
5
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
Kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
629b77a4
编写于
10月 27, 2005
作者:
G
Greg Kroah-Hartman
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[PATCH] INPUT: Fix oops when accessing sysfs files of nested input devices
Signed-off-by:
N
Greg Kroah-Hartman
<
gregkh@suse.de
>
上级
967ca692
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
12 addition
and
7 deletion
+12
-7
drivers/input/input.c
drivers/input/input.c
+12
-7
未找到文件。
drivers/input/input.c
浏览文件 @
629b77a4
...
...
@@ -642,17 +642,22 @@ static ssize_t input_dev_show_##name(struct class_device *dev, char *buf) \
up(&input_dev->sem); \
\
return retval; \
}
} \
static CLASS_DEVICE_ATTR(name, S_IRUGO, input_dev_show_##name, NULL);
INPUT_DEV_STRING_ATTR_SHOW
(
name
);
INPUT_DEV_STRING_ATTR_SHOW
(
phys
);
INPUT_DEV_STRING_ATTR_SHOW
(
uniq
);
static
struct
class_device_attribute
input_dev_attrs
[]
=
{
__ATTR
(
name
,
S_IRUGO
,
input_dev_show_name
,
NULL
),
__ATTR
(
phys
,
S_IRUGO
,
input_dev_show_phys
,
NULL
),
__ATTR
(
uniq
,
S_IRUGO
,
input_dev_show_uniq
,
NULL
),
__ATTR_NULL
static
struct
attribute
*
input_dev_attrs
[]
=
{
&
class_device_attr_name
.
attr
,
&
class_device_attr_phys
.
attr
,
&
class_device_attr_uniq
.
attr
,
NULL
};
static
struct
attribute_group
input_dev_group
=
{
.
attrs
=
input_dev_attrs
,
};
#define INPUT_DEV_ID_ATTR(name) \
...
...
@@ -728,7 +733,6 @@ static void input_dev_release(struct class_device *class_dev)
struct
class
input_dev_class
=
{
.
name
=
"input_dev"
,
.
release
=
input_dev_release
,
.
class_dev_attrs
=
input_dev_attrs
,
};
struct
input_dev
*
input_allocate_device
(
void
)
...
...
@@ -766,6 +770,7 @@ static void input_register_classdevice(struct input_dev *dev)
kfree
(
path
);
class_device_add
(
&
dev
->
cdev
);
sysfs_create_group
(
&
dev
->
cdev
.
kobj
,
&
input_dev_group
);
sysfs_create_group
(
&
dev
->
cdev
.
kobj
,
&
input_dev_id_attr_group
);
sysfs_create_group
(
&
dev
->
cdev
.
kobj
,
&
input_dev_caps_attr_group
);
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录