@@ -87,20 +87,15 @@ int h8300_put_reg(struct task_struct *task, int regno, unsigned long data)
87
87
88
88
static int regs_get (struct task_struct * target ,
89
89
const struct user_regset * regset ,
90
- unsigned int pos , unsigned int count ,
91
- void * kbuf , void __user * ubuf )
90
+ struct membuf to )
92
91
{
93
92
int r ;
94
- struct user_regs_struct regs ;
95
- long * reg = (long * )& regs ;
96
93
97
- /* build user regs in buffer */
98
- BUILD_BUG_ON (sizeof (regs ) % sizeof (long ) != 0 );
99
- for (r = 0 ; r < sizeof (regs ) / sizeof (long ); r ++ )
100
- * reg ++ = h8300_get_reg (target , r );
94
+ BUILD_BUG_ON (sizeof (struct user_regs_struct ) % sizeof (long ) != 0 );
95
+ for (r = 0 ; r < ELF_NGREG ; r ++ )
96
+ membuf_store (& to , h8300_get_reg (target , r ));
101
97
102
- return user_regset_copyout (& pos , & count , & kbuf , & ubuf ,
103
- & regs , 0 , sizeof (regs ));
98
+ return 0 ;
104
99
}
105
100
106
101
static int regs_set (struct task_struct * target ,
@@ -139,7 +134,7 @@ static const struct user_regset h8300_regsets[] = {
139
134
.n = ELF_NGREG ,
140
135
.size = sizeof (long ),
141
136
.align = sizeof (long ),
142
- .get = regs_get ,
137
+ .regset_get = regs_get ,
143
138
.set = regs_set ,
144
139
},
145
140
};
0 commit comments