View | Details | Raw Unified | Return to bug 83143
Collapse All | Expand All

(-)linux/arch/x86_64/kernel/ptrace.c (-4 / +4 lines)
Lines 257-269 static int putreg(struct task_struct *ch Link Here
257
			value &= 0xffff;
257
			value &= 0xffff;
258
			return 0;
258
			return 0;
259
		case offsetof(struct user_regs_struct,fs_base):
259
		case offsetof(struct user_regs_struct,fs_base):
260
			if (!((value >> 48) == 0 || (value >> 48) == 0xffff))
260
			if (value >= TASK_SIZE)
261
				return -EIO; 
261
				return -EIO;
262
			child->thread.fs = value;
262
			child->thread.fs = value;
263
			return 0;
263
			return 0;
264
		case offsetof(struct user_regs_struct,gs_base):
264
		case offsetof(struct user_regs_struct,gs_base):
265
			if (!((value >> 48) == 0 || (value >> 48) == 0xffff))
265
			if (value >= TASK_SIZE)
266
				return -EIO; 
266
				return -EIO;
267
			child->thread.gs = value;
267
			child->thread.gs = value;
268
			return 0;
268
			return 0;
269
		case offsetof(struct user_regs_struct, eflags):
269
		case offsetof(struct user_regs_struct, eflags):

Return to bug 83143