Lines Matching +full:soft +full:- +full:ip

1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * PARISC Architecture-dependent parts of process handling
6 * Copyright (C) 1999-2003 Matthew Wilcox <willy at parisc-linux.org>
8 * Copyright (C) 2000 John Marvin <jsm at parisc-linux.org>
9 * Copyright (C) 2000 David Huggins-Daines <dhd with pobox.org>
10 * Copyright (C) 2000-2003 Paul Bame <bame at parisc-linux.org>
13 * Copyright (C) 2000 Richard Hirst <rhirst with parisc-linux.org>
14 * Copyright (C) 2000 Grant Grundler <grundler with parisc-linux.org>
15 * Copyright (C) 2001 Alan Modra <amodra at parisc-linux.org>
16 * Copyright (C) 2001-2002 Ryan Bradetich <rbrad at parisc-linux.org>
17 * Copyright (C) 2001-2014 Helge Deller <deller@gmx.de>
18 * Copyright (C) 2002 Randolph Chung <tausq with parisc-linux.org>
45 #include <asm/asm-offsets.h>
106 /* Put the soft power button back under hardware control. in machine_power_off()
121 /* prevent soft lockup/stalled CPU messages for endless loop. */ in machine_power_off()
199 * Copy architecture-specific thread state
204 unsigned long clone_flags = args->flags; in copy_thread()
205 unsigned long usp = args->stack; in copy_thread()
206 unsigned long tls = args->tls; in copy_thread()
207 struct pt_regs *cregs = &(p->thread.regs); in copy_thread()
211 * function pointers aren't a pointer to the function on 64-bit. in copy_thread()
216 if (unlikely(args->fn)) { in copy_thread()
219 if (args->idle) /* idle thread */ in copy_thread()
224 cregs->ksp = (unsigned long) stack + FRAME_SIZE + PT_SZ_ALGN; in copy_thread()
225 cregs->kpc = (unsigned long) &ret_from_kernel_thread; in copy_thread()
231 cregs->gr[27] = ((unsigned long *)args->fn)[3]; in copy_thread()
232 cregs->gr[26] = ((unsigned long *)args->fn)[2]; in copy_thread()
234 cregs->gr[26] = (unsigned long) args->fn; in copy_thread()
236 cregs->gr[25] = (unsigned long) args->fn_arg; in copy_thread()
245 cregs->gr[30] = usp; in copy_thread()
247 cregs->ksp = (unsigned long) stack + FRAME_SIZE; in copy_thread()
248 cregs->kpc = (unsigned long) &child_return; in copy_thread()
252 cregs->cr27 = tls; in copy_thread()
262 unsigned long ip; in __get_wchan() local
275 ip = info.ip; in __get_wchan()
276 if (!in_sched_functions(ip)) in __get_wchan()
277 return ip; in __get_wchan()