37
37
38
38
static int gpr_get (struct task_struct * target ,
39
39
const struct user_regset * regset ,
40
- unsigned int pos , unsigned int count ,
41
- void * kbuf , void __user * ubuf )
40
+ struct membuf to )
42
41
{
43
42
struct pt_regs * regs = task_pt_regs (target );
44
43
struct user_pt_regs newregs = {
@@ -60,8 +59,7 @@ static int gpr_get(struct task_struct *target,
60
59
regs -> areg ,
61
60
(WSBITS - regs -> windowbase ) * 16 );
62
61
63
- return user_regset_copyout (& pos , & count , & kbuf , & ubuf ,
64
- & newregs , 0 , -1 );
62
+ return membuf_write (& to , & newregs , sizeof (newregs ));
65
63
}
66
64
67
65
static int gpr_set (struct task_struct * target ,
@@ -115,8 +113,7 @@ static int gpr_set(struct task_struct *target,
115
113
116
114
static int tie_get (struct task_struct * target ,
117
115
const struct user_regset * regset ,
118
- unsigned int pos , unsigned int count ,
119
- void * kbuf , void __user * ubuf )
116
+ struct membuf to )
120
117
{
121
118
int ret ;
122
119
struct pt_regs * regs = task_pt_regs (target );
@@ -141,8 +138,7 @@ static int tie_get(struct task_struct *target,
141
138
newregs -> cp6 = ti -> xtregs_cp .cp6 ;
142
139
newregs -> cp7 = ti -> xtregs_cp .cp7 ;
143
140
#endif
144
- ret = user_regset_copyout (& pos , & count , & kbuf , & ubuf ,
145
- newregs , 0 , -1 );
141
+ ret = membuf_write (& to , newregs , sizeof (* newregs ));
146
142
kfree (newregs );
147
143
return ret ;
148
144
}
@@ -197,15 +193,15 @@ static const struct user_regset xtensa_regsets[] = {
197
193
.n = sizeof (struct user_pt_regs ) / sizeof (u32 ),
198
194
.size = sizeof (u32 ),
199
195
.align = sizeof (u32 ),
200
- .get = gpr_get ,
196
+ .regset_get = gpr_get ,
201
197
.set = gpr_set ,
202
198
},
203
199
[REGSET_TIE ] = {
204
200
.core_note_type = NT_PRFPREG ,
205
201
.n = sizeof (elf_xtregs_t ) / sizeof (u32 ),
206
202
.size = sizeof (u32 ),
207
203
.align = sizeof (u32 ),
208
- .get = tie_get ,
204
+ .regset_get = tie_get ,
209
205
.set = tie_set ,
210
206
},
211
207
};
0 commit comments