/* update the contents of the SCORE userspace general registers  */
static int genregs_set(struct task_struct *target, const struct user_regset *regset, unsigned int pos, unsigned int count, const void *kbuf, const void __user *ubuf)
/* update the contents of the SCORE userspace general registers  */
static int genregs_set(struct task_struct *target, const struct user_regset *regset, unsigned int pos, unsigned int count, const void *kbuf, const void __user *ubuf)
{
	struct pt_regs *regs = task_pt_regs(target);
	int ret;
	ret = user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
					0, offsetof(struct pt_regs, regs));
	ret = user_regset_copyin(&pos, &count, &kbuf, &ubuf,
				  regs->regs,
				  offsetof(struct pt_regs, regs),
				  offsetof(struct pt_regs, cp0_condition));
	if (!ret)
		ret = user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
						sizeof(struct pt_regs), -1);
	return ret;
}