/
usr
/
include
/
sys
/
/usr/include/sys
mkdir
upload
Name
Size
Mode
Actions
acct.h
3296
0644
edit
dl
rm
auxv.h
1259
0644
edit
dl
rm
bitypes.h
86
0644
edit
dl
rm
capability.h
7233
0644
edit
dl
rm
cdefs.h
20682
0644
edit
dl
rm
debugreg.h
3575
0644
edit
dl
rm
dir.h
921
0644
edit
dl
rm
elf.h
1023
0644
edit
dl
rm
epoll.h
4410
0644
edit
dl
rm
errno.h
19
0644
edit
dl
rm
eventfd.h
1399
0644
edit
dl
rm
fanotify.h
1291
0644
edit
dl
rm
fcntl.h
19
0644
edit
dl
rm
file.h
1674
0644
edit
dl
rm
fsuid.h
1187
0644
edit
dl
rm
gmon.h
6230
0644
edit
dl
rm
gmon_out.h
2635
0644
edit
dl
rm
inotify.h
3837
0644
edit
dl
rm
io.h
5085
0644
edit
dl
rm
ioctl.h
1739
0644
edit
dl
rm
ipc.h
1461
0644
edit
dl
rm
kd.h
1111
0644
edit
dl
rm
klog.h
1203
0644
edit
dl
rm
mman.h
5551
0644
edit
dl
rm
mount.h
5611
0644
edit
dl
rm
msg.h
2365
0644
edit
dl
rm
mtio.h
11162
0644
edit
dl
rm
param.h
3148
0644
edit
dl
rm
pci.h
922
0644
edit
dl
rm
perm.h
1126
0644
edit
dl
rm
personality.h
2722
0644
edit
dl
rm
poll.h
2549
0644
edit
dl
rm
prctl.h
1058
0644
edit
dl
rm
procfs.h
4985
0644
edit
dl
rm
profil.h
1958
0644
edit
dl
rm
psx_syscall.h
2833
0644
edit
dl
rm
ptrace.h
5988
0644
edit
dl
rm
queue.h
19539
0644
edit
dl
rm
quota.h
5172
0644
edit
dl
rm
random.h
1443
0644
edit
dl
rm
raw.h
1181
0644
edit
dl
rm
reboot.h
1632
0644
edit
dl
rm
reg.h
1826
0644
edit
dl
rm
resource.h
3645
0644
edit
dl
rm
sdt-config.h
276
0644
edit
dl
rm
sdt.h
22157
0644
edit
dl
rm
select.h
4140
0644
edit
dl
rm
sem.h
2036
0644
edit
dl
rm
sendfile.h
1805
0644
edit
dl
rm
shm.h
1873
0644
edit
dl
rm
signal.h
20
0644
edit
dl
rm
signalfd.h
1599
0644
edit
dl
rm
socket.h
10203
0644
edit
dl
rm
socketvar.h
141
0644
edit
dl
rm
soundcard.h
29
0644
edit
dl
rm
stat.h
16236
0644
edit
dl
rm
statfs.h
2093
0644
edit
dl
rm
statvfs.h
2819
0644
edit
dl
rm
swap.h
1592
0644
edit
dl
rm
syscall.h
1335
0644
edit
dl
rm
sysctl.h
2004
0644
edit
dl
rm
sysinfo.h
1517
0644
edit
dl
rm
syslog.h
7702
0644
edit
dl
rm
sysmacros.h
2102
0644
edit
dl
rm
termios.h
74
0644
edit
dl
rm
time.h
6656
0644
edit
dl
rm
timeb.h
1376
0644
edit
dl
rm
timerfd.h
1873
0644
edit
dl
rm
times.h
1596
0644
edit
dl
rm
timex.h
2205
0644
edit
dl
rm
ttychars.h
2499
0644
edit
dl
rm
ttydefaults.h
3568
0644
edit
dl
rm
types.h
5712
0644
edit
dl
rm
ucontext.h
5841
0644
edit
dl
rm
uio.h
6279
0644
edit
dl
rm
un.h
1452
0644
edit
dl
rm
unistd.h
20
0644
edit
dl
rm
user.h
5207
0644
edit
dl
rm
utsname.h
2480
0644
edit
dl
rm
vfs.h
161
0644
edit
dl
rm
vlimit.h
1879
0644
edit
dl
rm
vm86.h
1198
0644
edit
dl
rm
vt.h
22
0644
edit
dl
rm
vtimes.h
2462
0644
edit
dl
rm
wait.h
5604
0644
edit
dl
rm
xattr.h
4274
0644
edit
dl
rm
Edit:
/usr/include/sys/debugreg.h
(3575B)
/* Copyright (C) 2001-2018 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ #ifndef _SYS_DEBUGREG_H #define _SYS_DEBUGREG_H 1 /* Indicate the register numbers for a number of the specific debug registers. Registers 0-3 contain the addresses we wish to trap on */ #define DR_FIRSTADDR 0 /* u_debugreg[DR_FIRSTADDR] */ #define DR_LASTADDR 3 /* u_debugreg[DR_LASTADDR] */ #define DR_STATUS 6 /* u_debugreg[DR_STATUS] */ #define DR_CONTROL 7 /* u_debugreg[DR_CONTROL] */ /* Define a few things for the status register. We can use this to determine which debugging register was responsible for the trap. The other bits are either reserved or not of interest to us. */ #define DR_TRAP0 (0x1) /* db0 */ #define DR_TRAP1 (0x2) /* db1 */ #define DR_TRAP2 (0x4) /* db2 */ #define DR_TRAP3 (0x8) /* db3 */ #define DR_STEP (0x4000) /* single-step */ #define DR_SWITCH (0x8000) /* task switch */ /* Now define a bunch of things for manipulating the control register. The top two bytes of the control register consist of 4 fields of 4 bits - each field corresponds to one of the four debug registers, and indicates what types of access we trap on, and how large the data field is that we are looking at */ #define DR_CONTROL_SHIFT 16 /* Skip this many bits in ctl register */ #define DR_CONTROL_SIZE 4 /* 4 control bits per register */ #define DR_RW_EXECUTE (0x0) /* Settings for the access types to trap on */ #define DR_RW_WRITE (0x1) #define DR_RW_READ (0x3) #define DR_LEN_1 (0x0) /* Settings for data length to trap on */ #define DR_LEN_2 (0x4) #define DR_LEN_4 (0xC) #ifdef __x86_64__ # define DR_LEN_8 (0x8) #endif /* The low byte to the control register determine which registers are enabled. There are 4 fields of two bits. One bit is "local", meaning that the processor will reset the bit after a task switch and the other is global meaning that we have to explicitly reset the bit. With linux, you can use either one, since we explicitly zero the register when we enter kernel mode. */ #define DR_LOCAL_ENABLE_SHIFT 0 /* Extra shift to the local enable bit */ #define DR_GLOBAL_ENABLE_SHIFT 1 /* Extra shift to the global enable bit */ #define DR_ENABLE_SIZE 2 /* 2 enable bits per register */ #define DR_LOCAL_ENABLE_MASK (0x55) /* Set local bits for all 4 regs */ #define DR_GLOBAL_ENABLE_MASK (0xAA) /* Set global bits for all 4 regs */ /* The second byte to the control register has a few special things. */ #ifdef __x86_64__ # define DR_CONTROL_RESERVED (0xFFFFFFFF0000FC00ULL) /* Reserved */ #else # define DR_CONTROL_RESERVED (0x00FC00U) /* Reserved */ #endif #define DR_LOCAL_SLOWDOWN (0x100) /* Local slow the pipeline */ #define DR_GLOBAL_SLOWDOWN (0x200) /* Global slow the pipeline */ #endif /* sys/debugreg.h */
Save
cmd:
run