.. | .. |
---|
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 *)®s; |
---|
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 | | - ®s, 0, sizeof(regs)); |
---|
| 98 | + return 0; |
---|
104 | 99 | } |
---|
105 | 100 | |
---|
106 | 101 | static int regs_set(struct task_struct *target, |
---|
.. | .. |
---|
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 | }; |
---|