@@ -137,6 +137,18 @@ static int nubus_proc_rsrc_show(struct seq_file *m, void *v)
137
137
return 0 ;
138
138
}
139
139
140
+ static int nubus_rsrc_proc_open (struct inode * inode , struct file * file )
141
+ {
142
+ return single_open (file , nubus_proc_rsrc_show , inode );
143
+ }
144
+
145
+ static const struct proc_ops nubus_rsrc_proc_ops = {
146
+ .proc_open = nubus_rsrc_proc_open ,
147
+ .proc_read = seq_read ,
148
+ .proc_lseek = seq_lseek ,
149
+ .proc_release = single_release ,
150
+ };
151
+
140
152
void nubus_proc_add_rsrc_mem (struct proc_dir_entry * procdir ,
141
153
const struct nubus_dirent * ent ,
142
154
unsigned int size )
@@ -152,8 +164,8 @@ void nubus_proc_add_rsrc_mem(struct proc_dir_entry *procdir,
152
164
pded = nubus_proc_alloc_pde_data (nubus_dirptr (ent ), size );
153
165
else
154
166
pded = NULL ;
155
- proc_create_single_data (name , S_IFREG | 0444 , procdir ,
156
- nubus_proc_rsrc_show , pded );
167
+ proc_create_data (name , S_IFREG | 0444 , procdir ,
168
+ & nubus_rsrc_proc_ops , pded );
157
169
}
158
170
159
171
void nubus_proc_add_rsrc (struct proc_dir_entry * procdir ,
@@ -166,9 +178,9 @@ void nubus_proc_add_rsrc(struct proc_dir_entry *procdir,
166
178
return ;
167
179
168
180
snprintf (name , sizeof (name ), "%x" , ent -> type );
169
- proc_create_single_data (name , S_IFREG | 0444 , procdir ,
170
- nubus_proc_rsrc_show ,
171
- nubus_proc_alloc_pde_data (data , 0 ));
181
+ proc_create_data (name , S_IFREG | 0444 , procdir ,
182
+ & nubus_rsrc_proc_ops ,
183
+ nubus_proc_alloc_pde_data (data , 0 ));
172
184
}
173
185
174
186
/*
0 commit comments