X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fnat%2Flinux-nat.h;h=7dd18feffface61e806470e3955da00465fe07ba;hb=a121b7c1ac76833018f4fc3adaeddc3147272dd0;hp=c534944631891c3375c1934e1bc9c1b9f9230bb2;hpb=6d4ee8c6ad7d5b04e524b2b48ffe5639028594a5;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/nat/linux-nat.h b/gdb/nat/linux-nat.h index c534944631..7dd18fefff 100644 --- a/gdb/nat/linux-nat.h +++ b/gdb/nat/linux-nat.h @@ -1,6 +1,6 @@ /* Code for native debugging support for GNU/Linux (LWP layer). - Copyright (C) 2000-2015 Free Software Foundation, Inc. + Copyright (C) 2000-2017 Free Software Foundation, Inc. This file is part of GDB. @@ -20,7 +20,15 @@ #ifndef LINUX_NAT_H #define LINUX_NAT_H +#include "target/waitstatus.h" + struct lwp_info; +struct arch_lwp_info; + +/* This is the kernel's hard limit. Not to be confused with SIGRTMIN. */ +#ifndef __SIGRTMIN +#define __SIGRTMIN 32 +#endif /* Unlike other extended result codes, WSTOPSIG (status) on PTRACE_O_TRACESYSGOOD syscall events doesn't return SIGTRAP, but @@ -47,4 +55,39 @@ extern struct lwp_info *iterate_over_lwps (ptid_t filter, iterate_over_lwps_ftype callback, void *data); +/* Return the ptid of LWP. */ + +extern ptid_t ptid_of_lwp (struct lwp_info *lwp); + +/* Set the architecture-specific data of LWP. This function must be + provided by the client. */ + +extern void lwp_set_arch_private_info (struct lwp_info *lwp, + struct arch_lwp_info *info); + +/* Return the architecture-specific data of LWP. This function must + be provided by the client. */ + +extern struct arch_lwp_info *lwp_arch_private_info (struct lwp_info *lwp); + +/* Return nonzero if LWP is stopped, zero otherwise. This function + must be provided by the client. */ + +extern int lwp_is_stopped (struct lwp_info *lwp); + +/* Return the reason the LWP last stopped. This function must be + provided by the client. */ + +extern enum target_stop_reason lwp_stop_reason (struct lwp_info *lwp); + +/* Cause LWP to stop. This function must be provided by the + client. */ + +extern void linux_stop_lwp (struct lwp_info *lwp); + +/* Return nonzero if we are single-stepping this LWP at the ptrace + level. */ + +extern int lwp_is_stepping (struct lwp_info *lwp); + #endif /* LINUX_NAT_H */