Linux vps-61133.fhnet.fr 4.9.0-19-amd64 #1 SMP Debian 4.9.320-2 (2022-06-30) x86_64
Apache/2.4.25 (Debian)
Server IP : 93.113.207.21 & Your IP : 216.73.216.35
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
include /
linux /
Delete
Unzip
Name
Size
Permission
Date
Action
android
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
byteorder
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
caif
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
can
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
cifs
[ DIR ]
drwxr-xr-x
2024-03-12 22:00
dvb
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
genwqe
[ DIR ]
drwxr-xr-x
2024-03-12 22:00
hdlc
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
hsi
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
iio
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
isdn
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
mmc
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
netfilter
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
netfilter_arp
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
netfilter_bridge
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
netfilter_ipv4
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
netfilter_ipv6
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
nfsd
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
raid
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
spi
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
sunrpc
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
tc_act
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
tc_ematch
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
usb
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
wimax
[ DIR ]
drwxrwxrwx
2024-03-12 22:00
a.out.h
7.15
KB
-rw-r--r--
2022-06-30 20:26
acct.h
3.58
KB
-rw-r--r--
2022-06-30 20:26
adb.h
1.05
KB
-rw-r--r--
2022-06-30 20:26
adfs_fs.h
873
B
-rw-r--r--
2022-06-30 20:26
affs_hardblocks.h
1.45
KB
-rw-r--r--
2022-06-30 20:26
agpgart.h
3.85
KB
-rw-r--r--
2022-06-30 20:26
aio_abi.h
3.1
KB
-rw-r--r--
2022-06-30 20:26
am437x-vpfe.h
3.53
KB
-rw-r--r--
2022-06-30 20:26
apm_bios.h
3.53
KB
-rw-r--r--
2022-06-30 20:26
arcfb.h
150
B
-rw-r--r--
2022-06-30 20:26
atalk.h
960
B
-rw-r--r--
2022-06-30 20:26
atm.h
7.64
KB
-rw-r--r--
2022-06-30 20:26
atm_eni.h
585
B
-rw-r--r--
2022-06-30 20:26
atm_he.h
343
B
-rw-r--r--
2022-06-30 20:26
atm_idt77105.h
892
B
-rw-r--r--
2022-06-30 20:26
atm_nicstar.h
1.19
KB
-rw-r--r--
2022-06-30 20:26
atm_tcp.h
1.52
KB
-rw-r--r--
2022-06-30 20:26
atm_zatm.h
1.44
KB
-rw-r--r--
2022-06-30 20:26
atmapi.h
889
B
-rw-r--r--
2022-06-30 20:26
atmarp.h
1.2
KB
-rw-r--r--
2022-06-30 20:26
atmbr2684.h
3.13
KB
-rw-r--r--
2022-06-30 20:26
atmclip.h
513
B
-rw-r--r--
2022-06-30 20:26
atmdev.h
7.44
KB
-rw-r--r--
2022-06-30 20:26
atmioc.h
1.55
KB
-rw-r--r--
2022-06-30 20:26
atmlec.h
2.26
KB
-rw-r--r--
2022-06-30 20:26
atmmpc.h
4.07
KB
-rw-r--r--
2022-06-30 20:26
atmppp.h
576
B
-rw-r--r--
2022-06-30 20:26
atmsap.h
4.79
KB
-rw-r--r--
2022-06-30 20:26
atmsvc.h
1.75
KB
-rw-r--r--
2022-06-30 20:26
audit.h
18.44
KB
-rw-r--r--
2022-06-30 20:26
auto_dev-ioctl.h
4.96
KB
-rw-r--r--
2022-06-30 20:26
auto_fs.h
2.15
KB
-rw-r--r--
2022-06-30 20:26
auto_fs4.h
3.95
KB
-rw-r--r--
2022-06-30 20:26
auxvec.h
1.4
KB
-rw-r--r--
2022-06-30 20:26
ax25.h
2.7
KB
-rw-r--r--
2022-06-30 20:26
b1lli.h
1.62
KB
-rw-r--r--
2022-06-30 20:26
baycom.h
820
B
-rw-r--r--
2022-06-30 20:26
bcache.h
8.11
KB
-rw-r--r--
2022-06-30 20:26
bcm933xx_hcs.h
356
B
-rw-r--r--
2022-06-30 20:26
bfs_fs.h
1.79
KB
-rw-r--r--
2022-06-30 20:26
binfmts.h
565
B
-rw-r--r--
2022-06-30 20:26
blkpg.h
1.53
KB
-rw-r--r--
2022-06-30 20:26
blktrace_api.h
4.38
KB
-rw-r--r--
2022-06-30 20:26
bpf.h
14.31
KB
-rw-r--r--
2022-06-30 20:26
bpf_common.h
1.2
KB
-rw-r--r--
2022-06-30 20:26
bpf_perf_event.h
468
B
-rw-r--r--
2022-06-30 20:26
bpqether.h
918
B
-rw-r--r--
2022-06-30 20:26
bsg.h
2.37
KB
-rw-r--r--
2022-06-30 20:26
bt-bmc.h
508
B
-rw-r--r--
2022-06-30 20:26
btrfs.h
25.29
KB
-rw-r--r--
2022-06-30 20:26
btrfs_tree.h
24.56
KB
-rw-r--r--
2022-06-30 20:26
can.h
7.62
KB
-rw-r--r--
2022-06-30 20:26
capability.h
11.07
KB
-rw-r--r--
2022-06-30 20:26
capi.h
2.99
KB
-rw-r--r--
2022-06-30 20:26
cciss_defs.h
3.14
KB
-rw-r--r--
2022-06-30 20:26
cciss_ioctl.h
2.63
KB
-rw-r--r--
2022-06-30 20:26
cdrom.h
28.12
KB
-rw-r--r--
2022-06-30 20:26
cgroupstats.h
2.1
KB
-rw-r--r--
2022-06-30 20:26
chio.h
5.16
KB
-rw-r--r--
2022-06-30 20:26
cm4000_cs.h
1.7
KB
-rw-r--r--
2022-06-30 20:26
cn_proc.h
3.19
KB
-rw-r--r--
2022-06-30 20:26
coda.h
17.09
KB
-rw-r--r--
2022-06-30 20:26
coda_psdev.h
297
B
-rw-r--r--
2022-06-30 20:26
coff.h
12.12
KB
-rw-r--r--
2022-06-30 20:26
connector.h
2.14
KB
-rw-r--r--
2022-06-30 20:26
const.h
872
B
-rw-r--r--
2022-06-30 20:26
coresight-stm.h
643
B
-rw-r--r--
2022-06-30 20:26
cramfs_fs.h
2.68
KB
-rw-r--r--
2022-06-30 20:26
cryptouser.h
3.17
KB
-rw-r--r--
2022-06-30 20:26
cuda.h
842
B
-rw-r--r--
2022-06-30 20:26
cyclades.h
16.65
KB
-rw-r--r--
2022-06-30 20:26
cycx_cfm.h
2.86
KB
-rw-r--r--
2022-06-30 20:26
dcbnl.h
24.27
KB
-rw-r--r--
2022-06-30 20:26
dccp.h
6.22
KB
-rw-r--r--
2022-06-30 20:26
devlink.h
4.12
KB
-rw-r--r--
2022-06-30 20:26
dlm.h
2.43
KB
-rw-r--r--
2022-06-30 20:26
dlm_device.h
2.42
KB
-rw-r--r--
2022-06-30 20:26
dlm_netlink.h
1.04
KB
-rw-r--r--
2022-06-30 20:26
dlm_plock.h
831
B
-rw-r--r--
2022-06-30 20:26
dlmconstants.h
4.9
KB
-rw-r--r--
2022-06-30 20:26
dm-ioctl.h
10.45
KB
-rw-r--r--
2022-06-30 20:26
dm-log-userspace.h
14.82
KB
-rw-r--r--
2022-06-30 20:26
dn.h
4.47
KB
-rw-r--r--
2022-06-30 20:26
dqblk_xfs.h
8.72
KB
-rw-r--r--
2022-06-30 20:26
edd.h
5.41
KB
-rw-r--r--
2022-06-30 20:26
efs_fs_sb.h
2.11
KB
-rw-r--r--
2022-06-30 20:26
elf-em.h
2.12
KB
-rw-r--r--
2022-06-30 20:26
elf-fdpic.h
1.04
KB
-rw-r--r--
2022-06-30 20:26
elf.h
12.59
KB
-rw-r--r--
2022-06-30 20:26
elfcore.h
2.86
KB
-rw-r--r--
2022-06-30 20:26
errno.h
23
B
-rw-r--r--
2022-06-30 20:26
errqueue.h
1.21
KB
-rw-r--r--
2022-06-30 20:26
ethtool.h
67.51
KB
-rw-r--r--
2022-06-30 20:26
eventpoll.h
2.42
KB
-rw-r--r--
2022-06-30 20:26
fadvise.h
779
B
-rw-r--r--
2022-06-30 20:26
falloc.h
3.44
KB
-rw-r--r--
2022-06-30 20:26
fanotify.h
3.42
KB
-rw-r--r--
2022-06-30 20:26
fb.h
16
KB
-rw-r--r--
2022-06-30 20:26
fcntl.h
2.16
KB
-rw-r--r--
2022-06-30 20:26
fd.h
11.34
KB
-rw-r--r--
2022-06-30 20:26
fdreg.h
5.23
KB
-rw-r--r--
2022-06-30 20:26
fib_rules.h
1.64
KB
-rw-r--r--
2022-06-30 20:26
fiemap.h
2.65
KB
-rw-r--r--
2022-06-30 20:26
filter.h
2.1
KB
-rw-r--r--
2022-06-30 20:26
firewire-cdev.h
42.86
KB
-rw-r--r--
2022-06-30 20:26
firewire-constants.h
3.16
KB
-rw-r--r--
2022-06-30 20:26
flat.h
2.04
KB
-rw-r--r--
2022-06-30 20:26
fou.h
631
B
-rw-r--r--
2022-06-30 20:26
fs.h
13.2
KB
-rw-r--r--
2022-06-30 20:26
fsl_hypervisor.h
7.05
KB
-rw-r--r--
2022-06-30 20:26
fuse.h
16.98
KB
-rw-r--r--
2022-06-30 20:26
futex.h
4.81
KB
-rw-r--r--
2022-06-30 20:26
gameport.h
834
B
-rw-r--r--
2022-06-30 20:26
gen_stats.h
1.48
KB
-rw-r--r--
2022-06-30 20:26
genetlink.h
1.77
KB
-rw-r--r--
2022-06-30 20:26
gfs2_ondisk.h
12
KB
-rw-r--r--
2022-06-30 20:26
gigaset_dev.h
1.35
KB
-rw-r--r--
2022-06-30 20:26
gpio.h
5.55
KB
-rw-r--r--
2022-06-30 20:26
gsmmux.h
978
B
-rw-r--r--
2022-06-30 20:26
gtp.h
499
B
-rw-r--r--
2022-06-30 20:26
hash_info.h
857
B
-rw-r--r--
2022-06-30 20:26
hdlc.h
574
B
-rw-r--r--
2022-06-30 20:26
hdlcdrv.h
2.78
KB
-rw-r--r--
2022-06-30 20:26
hdreg.h
22.11
KB
-rw-r--r--
2022-06-30 20:26
hid.h
1.79
KB
-rw-r--r--
2022-06-30 20:26
hiddev.h
6.13
KB
-rw-r--r--
2022-06-30 20:26
hidraw.h
1.41
KB
-rw-r--r--
2022-06-30 20:26
hpet.h
680
B
-rw-r--r--
2022-06-30 20:26
hsr_netlink.h
1017
B
-rw-r--r--
2022-06-30 20:26
hw_breakpoint.h
575
B
-rw-r--r--
2022-06-30 20:26
hyperv.h
10.26
KB
-rw-r--r--
2022-06-30 20:26
hysdn_if.h
1.29
KB
-rw-r--r--
2022-06-30 20:26
i2c-dev.h
2.49
KB
-rw-r--r--
2022-06-30 20:26
i2c.h
6.74
KB
-rw-r--r--
2022-06-30 20:26
i2o-dev.h
11.22
KB
-rw-r--r--
2022-06-30 20:26
i8k.h
1.43
KB
-rw-r--r--
2022-06-30 20:26
icmp.h
2.84
KB
-rw-r--r--
2022-06-30 20:26
icmpv6.h
3.82
KB
-rw-r--r--
2022-06-30 20:26
if.h
10.44
KB
-rw-r--r--
2022-06-30 20:26
if_addr.h
1.7
KB
-rw-r--r--
2022-06-30 20:26
if_addrlabel.h
658
B
-rw-r--r--
2022-06-30 20:26
if_alg.h
882
B
-rw-r--r--
2022-06-30 20:26
if_arcnet.h
3.57
KB
-rw-r--r--
2022-06-30 20:26
if_arp.h
6.24
KB
-rw-r--r--
2022-06-30 20:26
if_bonding.h
4.11
KB
-rw-r--r--
2022-06-30 20:26
if_bridge.h
6.22
KB
-rw-r--r--
2022-06-30 20:26
if_cablemodem.h
922
B
-rw-r--r--
2022-06-30 20:26
if_eql.h
1.26
KB
-rw-r--r--
2022-06-30 20:26
if_ether.h
7.27
KB
-rw-r--r--
2022-06-30 20:26
if_fc.h
1.63
KB
-rw-r--r--
2022-06-30 20:26
if_fddi.h
3.6
KB
-rw-r--r--
2022-06-30 20:26
if_frad.h
2.89
KB
-rw-r--r--
2022-06-30 20:26
if_hippi.h
4.07
KB
-rw-r--r--
2022-06-30 20:26
if_infiniband.h
1.13
KB
-rw-r--r--
2022-06-30 20:26
if_link.h
20
KB
-rw-r--r--
2022-06-30 20:26
if_ltalk.h
147
B
-rw-r--r--
2022-06-30 20:26
if_macsec.h
5.42
KB
-rw-r--r--
2022-06-30 20:26
if_packet.h
7.63
KB
-rw-r--r--
2022-06-30 20:26
if_phonet.h
361
B
-rw-r--r--
2022-06-30 20:26
if_plip.h
596
B
-rw-r--r--
2022-06-30 20:26
if_ppp.h
29
B
-rw-r--r--
2022-06-30 20:26
if_pppol2tp.h
3.15
KB
-rw-r--r--
2022-06-30 20:26
if_pppox.h
4.7
KB
-rw-r--r--
2022-06-30 20:26
if_slip.h
809
B
-rw-r--r--
2022-06-30 20:26
if_team.h
2.48
KB
-rw-r--r--
2022-06-30 20:26
if_tun.h
3.72
KB
-rw-r--r--
2022-06-30 20:26
if_tunnel.h
3.44
KB
-rw-r--r--
2022-06-30 20:26
if_vlan.h
1.69
KB
-rw-r--r--
2022-06-30 20:26
if_x25.h
817
B
-rw-r--r--
2022-06-30 20:26
igmp.h
2.88
KB
-rw-r--r--
2022-06-30 20:26
ila.h
760
B
-rw-r--r--
2022-06-30 20:26
in.h
9.38
KB
-rw-r--r--
2022-06-30 20:26
in6.h
7.15
KB
-rw-r--r--
2022-06-30 20:26
in_route.h
873
B
-rw-r--r--
2022-06-30 20:26
inet_diag.h
3.41
KB
-rw-r--r--
2022-06-30 20:26
inotify.h
2.85
KB
-rw-r--r--
2022-06-30 20:26
input-event-codes.h
23.87
KB
-rw-r--r--
2022-06-30 20:26
input.h
14.77
KB
-rw-r--r--
2022-06-30 20:26
ioctl.h
100
B
-rw-r--r--
2022-06-30 20:26
ip.h
4.53
KB
-rw-r--r--
2022-06-30 20:26
ip6_tunnel.h
1.67
KB
-rw-r--r--
2022-06-30 20:26
ip_vs.h
13.25
KB
-rw-r--r--
2022-06-30 20:26
ipc.h
1.99
KB
-rw-r--r--
2022-06-30 20:26
ipmi.h
15.8
KB
-rw-r--r--
2022-06-30 20:26
ipmi_msgdefs.h
4.37
KB
-rw-r--r--
2022-06-30 20:26
ipsec.h
884
B
-rw-r--r--
2022-06-30 20:26
ipv6.h
3.58
KB
-rw-r--r--
2022-06-30 20:26
ipv6_route.h
1.73
KB
-rw-r--r--
2022-06-30 20:26
ipx.h
2.23
KB
-rw-r--r--
2022-06-30 20:26
irda.h
7.31
KB
-rw-r--r--
2022-06-30 20:26
irqnr.h
104
B
-rw-r--r--
2022-06-30 20:26
isdn.h
5.58
KB
-rw-r--r--
2022-06-30 20:26
isdn_divertif.h
1.11
KB
-rw-r--r--
2022-06-30 20:26
isdn_ppp.h
1.82
KB
-rw-r--r--
2022-06-30 20:26
isdnif.h
2.25
KB
-rw-r--r--
2022-06-30 20:26
iso_fs.h
6.29
KB
-rw-r--r--
2022-06-30 20:26
ivtv.h
2.89
KB
-rw-r--r--
2022-06-30 20:26
ivtvfb.h
1.12
KB
-rw-r--r--
2022-06-30 20:26
ixjuser.h
24.53
KB
-rw-r--r--
2022-06-30 20:26
jffs2.h
6.85
KB
-rw-r--r--
2022-06-30 20:26
joystick.h
3.5
KB
-rw-r--r--
2022-06-30 20:26
kcm.h
759
B
-rw-r--r--
2022-06-30 20:26
kcmp.h
214
B
-rw-r--r--
2022-06-30 20:26
kcov.h
247
B
-rw-r--r--
2022-06-30 20:26
kd.h
6.04
KB
-rw-r--r--
2022-06-30 20:26
kdev_t.h
320
B
-rw-r--r--
2022-06-30 20:26
kernel-page-flags.h
814
B
-rw-r--r--
2022-06-30 20:26
kernel.h
131
B
-rw-r--r--
2022-06-30 20:26
kernelcapi.h
956
B
-rw-r--r--
2022-06-30 20:26
kexec.h
1.73
KB
-rw-r--r--
2022-06-30 20:26
keyboard.h
12.42
KB
-rw-r--r--
2022-06-30 20:26
keyctl.h
3.17
KB
-rw-r--r--
2022-06-30 20:26
kfd_ioctl.h
8.62
KB
-rw-r--r--
2022-06-30 20:26
kvm.h
37.19
KB
-rw-r--r--
2022-06-30 20:26
kvm_para.h
760
B
-rw-r--r--
2022-06-30 20:26
l2tp.h
5.44
KB
-rw-r--r--
2022-06-30 20:26
libc-compat.h
8.03
KB
-rw-r--r--
2022-06-30 20:26
lightnvm.h
3.69
KB
-rw-r--r--
2022-06-30 20:26
limits.h
874
B
-rw-r--r--
2022-06-30 20:26
lirc.h
4.88
KB
-rw-r--r--
2022-06-30 20:26
llc.h
2.98
KB
-rw-r--r--
2022-06-30 20:26
loop.h
2.36
KB
-rw-r--r--
2022-06-30 20:26
lp.h
3.72
KB
-rw-r--r--
2022-06-30 20:26
lwtunnel.h
811
B
-rw-r--r--
2022-06-30 20:26
magic.h
3.12
KB
-rw-r--r--
2022-06-30 20:26
major.h
4.53
KB
-rw-r--r--
2022-06-30 20:26
map_to_7segment.h
7.02
KB
-rw-r--r--
2022-06-30 20:26
matroxfb.h
1.37
KB
-rw-r--r--
2022-06-30 20:26
mdio.h
13.74
KB
-rw-r--r--
2022-06-30 20:26
media-bus-format.h
5.81
KB
-rw-r--r--
2022-06-30 20:26
media.h
11.95
KB
-rw-r--r--
2022-06-30 20:26
mei.h
4.62
KB
-rw-r--r--
2022-06-30 20:26
membarrier.h
2.38
KB
-rw-r--r--
2022-06-30 20:26
memfd.h
186
B
-rw-r--r--
2022-06-30 20:26
mempolicy.h
2.35
KB
-rw-r--r--
2022-06-30 20:26
meye.h
2.41
KB
-rw-r--r--
2022-06-30 20:26
mic_common.h
6.3
KB
-rw-r--r--
2022-06-30 20:26
mic_ioctl.h
2.14
KB
-rw-r--r--
2022-06-30 20:26
mii.h
7.83
KB
-rw-r--r--
2022-06-30 20:26
minix_fs.h
2.01
KB
-rw-r--r--
2022-06-30 20:26
mman.h
230
B
-rw-r--r--
2022-06-30 20:26
mmtimer.h
2.01
KB
-rw-r--r--
2022-06-30 20:26
module.h
192
B
-rw-r--r--
2022-06-30 20:26
mpls.h
1.38
KB
-rw-r--r--
2022-06-30 20:26
mpls_iptunnel.h
650
B
-rw-r--r--
2022-06-30 20:26
mqueue.h
2.06
KB
-rw-r--r--
2022-06-30 20:26
mroute.h
4.06
KB
-rw-r--r--
2022-06-30 20:26
mroute6.h
4.14
KB
-rw-r--r--
2022-06-30 20:26
msdos_fs.h
6.74
KB
-rw-r--r--
2022-06-30 20:26
msg.h
3.21
KB
-rw-r--r--
2022-06-30 20:26
mtio.h
7.92
KB
-rw-r--r--
2022-06-30 20:26
n_r3964.h
2.29
KB
-rw-r--r--
2022-06-30 20:26
nbd.h
2.3
KB
-rw-r--r--
2022-06-30 20:26
ncp.h
4.94
KB
-rw-r--r--
2022-06-30 20:26
ncp_fs.h
3.27
KB
-rw-r--r--
2022-06-30 20:26
ncp_mount.h
2.06
KB
-rw-r--r--
2022-06-30 20:26
ncp_no.h
651
B
-rw-r--r--
2022-06-30 20:26
ndctl.h
7.87
KB
-rw-r--r--
2022-06-30 20:26
neighbour.h
4.13
KB
-rw-r--r--
2022-06-30 20:26
net.h
1.97
KB
-rw-r--r--
2022-06-30 20:26
net_dropmon.h
1.07
KB
-rw-r--r--
2022-06-30 20:26
net_namespace.h
609
B
-rw-r--r--
2022-06-30 20:26
net_tstamp.h
3.93
KB
-rw-r--r--
2022-06-30 20:26
netconf.h
509
B
-rw-r--r--
2022-06-30 20:26
netdevice.h
2.14
KB
-rw-r--r--
2022-06-30 20:26
netfilter.h
1.69
KB
-rw-r--r--
2022-06-30 20:26
netfilter_arp.h
380
B
-rw-r--r--
2022-06-30 20:26
netfilter_bridge.h
790
B
-rw-r--r--
2022-06-30 20:26
netfilter_decnet.h
1.83
KB
-rw-r--r--
2022-06-30 20:26
netfilter_ipv4.h
2.02
KB
-rw-r--r--
2022-06-30 20:26
netfilter_ipv6.h
2.04
KB
-rw-r--r--
2022-06-30 20:26
netlink.h
5.8
KB
-rw-r--r--
2022-06-30 20:26
netlink_diag.h
1.07
KB
-rw-r--r--
2022-06-30 20:26
netrom.h
744
B
-rw-r--r--
2022-06-30 20:26
nfc.h
10.87
KB
-rw-r--r--
2022-06-30 20:26
nfs.h
4.31
KB
-rw-r--r--
2022-06-30 20:26
nfs2.h
1.37
KB
-rw-r--r--
2022-06-30 20:26
nfs3.h
2.24
KB
-rw-r--r--
2022-06-30 20:26
nfs4.h
6.13
KB
-rw-r--r--
2022-06-30 20:26
nfs4_mount.h
1.83
KB
-rw-r--r--
2022-06-30 20:26
nfs_fs.h
1.51
KB
-rw-r--r--
2022-06-30 20:26
nfs_idmap.h
2.19
KB
-rw-r--r--
2022-06-30 20:26
nfs_mount.h
2.32
KB
-rw-r--r--
2022-06-30 20:26
nfsacl.h
605
B
-rw-r--r--
2022-06-30 20:26
nilfs2_api.h
7.35
KB
-rw-r--r--
2022-06-30 20:26
nilfs2_ondisk.h
17.6
KB
-rw-r--r--
2022-06-30 20:26
nl80211.h
211.18
KB
-rw-r--r--
2022-06-30 20:26
nsfs.h
333
B
-rw-r--r--
2022-06-30 20:26
nubus.h
8.17
KB
-rw-r--r--
2022-06-30 20:26
nvme_ioctl.h
1.55
KB
-rw-r--r--
2022-06-30 20:26
nvram.h
469
B
-rw-r--r--
2022-06-30 20:26
omap3isp.h
20.19
KB
-rw-r--r--
2022-06-30 20:26
omapfb.h
5.72
KB
-rw-r--r--
2022-06-30 20:26
oom.h
448
B
-rw-r--r--
2022-06-30 20:26
openvswitch.h
29.33
KB
-rw-r--r--
2022-06-30 20:26
packet_diag.h
1.57
KB
-rw-r--r--
2022-06-30 20:26
param.h
78
B
-rw-r--r--
2022-06-30 20:26
parport.h
3.56
KB
-rw-r--r--
2022-06-30 20:26
patchkey.h
829
B
-rw-r--r--
2022-06-30 20:26
pci.h
1.29
KB
-rw-r--r--
2022-06-30 20:26
pci_regs.h
49.88
KB
-rw-r--r--
2022-06-30 20:26
perf_event.h
28.02
KB
-rw-r--r--
2022-06-30 20:26
personality.h
1.99
KB
-rw-r--r--
2022-06-30 20:26
pfkeyv2.h
10.26
KB
-rw-r--r--
2022-06-30 20:26
pg.h
2.23
KB
-rw-r--r--
2022-06-30 20:26
phantom.h
1.55
KB
-rw-r--r--
2022-06-30 20:26
phonet.h
4.51
KB
-rw-r--r--
2022-06-30 20:26
pkt_cls.h
8.99
KB
-rw-r--r--
2022-06-30 20:26
pkt_sched.h
19.54
KB
-rw-r--r--
2022-06-30 20:26
pktcdvd.h
2.56
KB
-rw-r--r--
2022-06-30 20:26
pmu.h
5.13
KB
-rw-r--r--
2022-06-30 20:26
poll.h
22
B
-rw-r--r--
2022-06-30 20:26
posix_acl.h
1.16
KB
-rw-r--r--
2022-06-30 20:26
posix_acl_xattr.h
1.03
KB
-rw-r--r--
2022-06-30 20:26
posix_types.h
1.01
KB
-rw-r--r--
2022-06-30 20:26
ppdev.h
3.07
KB
-rw-r--r--
2022-06-30 20:26
ppp-comp.h
2.41
KB
-rw-r--r--
2022-06-30 20:26
ppp-ioctl.h
5.29
KB
-rw-r--r--
2022-06-30 20:26
ppp_defs.h
4.93
KB
-rw-r--r--
2022-06-30 20:26
pps.h
4.06
KB
-rw-r--r--
2022-06-30 20:26
pr.h
1010
B
-rw-r--r--
2022-06-30 20:26
prctl.h
6.91
KB
-rw-r--r--
2022-06-30 20:26
psci.h
3.9
KB
-rw-r--r--
2022-06-30 20:26
ptp_clock.h
4.69
KB
-rw-r--r--
2022-06-30 20:26
ptrace.h
3.2
KB
-rw-r--r--
2022-06-30 20:26
qnx4_fs.h
2.21
KB
-rw-r--r--
2022-06-30 20:26
qnxtypes.h
561
B
-rw-r--r--
2022-06-30 20:26
qrtr.h
216
B
-rw-r--r--
2022-06-30 20:26
quota.h
6.17
KB
-rw-r--r--
2022-06-30 20:26
radeonfb.h
297
B
-rw-r--r--
2022-06-30 20:26
random.h
1.32
KB
-rw-r--r--
2022-06-30 20:26
raw.h
302
B
-rw-r--r--
2022-06-30 20:26
rds.h
7.88
KB
-rw-r--r--
2022-06-30 20:26
reboot.h
1.25
KB
-rw-r--r--
2022-06-30 20:26
reiserfs_fs.h
712
B
-rw-r--r--
2022-06-30 20:26
reiserfs_xattr.h
470
B
-rw-r--r--
2022-06-30 20:26
resource.h
2.23
KB
-rw-r--r--
2022-06-30 20:26
rfkill.h
3.6
KB
-rw-r--r--
2022-06-30 20:26
rio_cm_cdev.h
3.09
KB
-rw-r--r--
2022-06-30 20:26
rio_mport_cdev.h
9.03
KB
-rw-r--r--
2022-06-30 20:26
romfs_fs.h
1.15
KB
-rw-r--r--
2022-06-30 20:26
rose.h
2.12
KB
-rw-r--r--
2022-06-30 20:26
route.h
2.21
KB
-rw-r--r--
2022-06-30 20:26
rtc.h
3.85
KB
-rw-r--r--
2022-06-30 20:26
rtnetlink.h
16.38
KB
-rw-r--r--
2022-06-30 20:26
scc.h
4.43
KB
-rw-r--r--
2022-06-30 20:26
sched.h
2.19
KB
-rw-r--r--
2022-06-30 20:26
scif_ioctl.h
6.15
KB
-rw-r--r--
2022-06-30 20:26
screen_info.h
2.36
KB
-rw-r--r--
2022-06-30 20:26
sctp.h
29.22
KB
-rw-r--r--
2022-06-30 20:26
sdla.h
2.71
KB
-rw-r--r--
2022-06-30 20:26
seccomp.h
1.85
KB
-rw-r--r--
2022-06-30 20:26
securebits.h
2.58
KB
-rw-r--r--
2022-06-30 20:26
selinux_netlink.h
1.11
KB
-rw-r--r--
2022-06-30 20:26
sem.h
2.88
KB
-rw-r--r--
2022-06-30 20:26
serial.h
3.17
KB
-rw-r--r--
2022-06-30 20:26
serial_core.h
5.88
KB
-rw-r--r--
2022-06-30 20:26
serial_reg.h
15.55
KB
-rw-r--r--
2022-06-30 20:26
serio.h
1.85
KB
-rw-r--r--
2022-06-30 20:26
shm.h
2.55
KB
-rw-r--r--
2022-06-30 20:26
signal.h
325
B
-rw-r--r--
2022-06-30 20:26
signalfd.h
1.07
KB
-rw-r--r--
2022-06-30 20:26
smiapp.h
995
B
-rw-r--r--
2022-06-30 20:26
snmp.h
12.63
KB
-rw-r--r--
2022-06-30 20:26
sock_diag.h
664
B
-rw-r--r--
2022-06-30 20:26
socket.h
738
B
-rw-r--r--
2022-06-30 20:26
sockios.h
5.81
KB
-rw-r--r--
2022-06-30 20:26
sonet.h
2.17
KB
-rw-r--r--
2022-06-30 20:26
sonypi.h
5.12
KB
-rw-r--r--
2022-06-30 20:26
sound.h
1.15
KB
-rw-r--r--
2022-06-30 20:26
soundcard.h
44.96
KB
-rw-r--r--
2022-06-30 20:26
stat.h
1
KB
-rw-r--r--
2022-06-30 20:26
stddef.h
68
B
-rw-r--r--
2022-06-30 20:26
stm.h
1.52
KB
-rw-r--r--
2022-06-30 20:26
string.h
175
B
-rw-r--r--
2022-06-30 20:26
suspend_ioctls.h
1.34
KB
-rw-r--r--
2022-06-30 20:26
swab.h
6.69
KB
-rw-r--r--
2022-06-30 20:26
sync_file.h
2.75
KB
-rw-r--r--
2022-06-30 20:26
synclink.h
8.71
KB
-rw-r--r--
2022-06-30 20:26
sysctl.h
25.47
KB
-rw-r--r--
2022-06-30 20:26
sysinfo.h
986
B
-rw-r--r--
2022-06-30 20:26
target_core_user.h
3.36
KB
-rw-r--r--
2022-06-30 20:26
taskstats.h
6.83
KB
-rw-r--r--
2022-06-30 20:26
tcp.h
6.37
KB
-rw-r--r--
2022-06-30 20:26
tcp_metrics.h
1.45
KB
-rw-r--r--
2022-06-30 20:26
telephony.h
8.84
KB
-rw-r--r--
2022-06-30 20:26
termios.h
443
B
-rw-r--r--
2022-06-30 20:26
thermal.h
861
B
-rw-r--r--
2022-06-30 20:26
time.h
1.54
KB
-rw-r--r--
2022-06-30 20:26
times.h
215
B
-rw-r--r--
2022-06-30 20:26
timex.h
6.25
KB
-rw-r--r--
2022-06-30 20:26
tiocl.h
1.63
KB
-rw-r--r--
2022-06-30 20:26
tipc.h
6.84
KB
-rw-r--r--
2022-06-30 20:26
tipc_config.h
14.35
KB
-rw-r--r--
2022-06-30 20:26
tipc_netlink.h
7.74
KB
-rw-r--r--
2022-06-30 20:26
toshiba.h
1.82
KB
-rw-r--r--
2022-06-30 20:26
tty.h
1.37
KB
-rw-r--r--
2022-06-30 20:26
tty_flags.h
4.31
KB
-rw-r--r--
2022-06-30 20:26
types.h
1.4
KB
-rw-r--r--
2022-06-30 20:26
udf_fs_i.h
634
B
-rw-r--r--
2022-06-30 20:26
udp.h
1.37
KB
-rw-r--r--
2022-06-30 20:26
uhid.h
4.48
KB
-rw-r--r--
2022-06-30 20:26
uinput.h
8.98
KB
-rw-r--r--
2022-06-30 20:26
uio.h
668
B
-rw-r--r--
2022-06-30 20:26
ultrasound.h
4.39
KB
-rw-r--r--
2022-06-30 20:26
un.h
239
B
-rw-r--r--
2022-06-30 20:26
unistd.h
157
B
-rw-r--r--
2022-06-30 20:26
unix_diag.h
1.16
KB
-rw-r--r--
2022-06-30 20:26
usbdevice_fs.h
6.56
KB
-rw-r--r--
2022-06-30 20:26
usbip.h
577
B
-rw-r--r--
2022-06-30 20:26
userfaultfd.h
4.27
KB
-rw-r--r--
2022-06-30 20:26
utime.h
152
B
-rw-r--r--
2022-06-30 20:26
utsname.h
606
B
-rw-r--r--
2022-06-30 20:26
uuid.h
1.54
KB
-rw-r--r--
2022-06-30 20:26
uvcvideo.h
1.6
KB
-rw-r--r--
2022-06-30 20:26
v4l2-common.h
4
KB
-rw-r--r--
2022-06-30 20:26
v4l2-controls.h
43.41
KB
-rw-r--r--
2022-06-30 20:26
v4l2-dv-timings.h
29.49
KB
-rw-r--r--
2022-06-30 20:26
v4l2-mediabus.h
4.92
KB
-rw-r--r--
2022-06-30 20:26
v4l2-subdev.h
5.89
KB
-rw-r--r--
2022-06-30 20:26
version.h
97
B
-rw-r--r--
2022-06-30 20:26
veth.h
161
B
-rw-r--r--
2022-06-30 20:26
vfio.h
24.45
KB
-rw-r--r--
2022-06-30 20:26
vhost.h
7.13
KB
-rw-r--r--
2022-06-30 20:26
videodev2.h
80.56
KB
-rw-r--r--
2022-06-30 20:26
virtio_9p.h
1.99
KB
-rw-r--r--
2022-06-30 20:26
virtio_balloon.h
3.71
KB
-rw-r--r--
2022-06-30 20:26
virtio_blk.h
5.19
KB
-rw-r--r--
2022-06-30 20:26
virtio_config.h
3.34
KB
-rw-r--r--
2022-06-30 20:26
virtio_console.h
3.06
KB
-rw-r--r--
2022-06-30 20:26
virtio_gpu.h
7.84
KB
-rw-r--r--
2022-06-30 20:26
virtio_ids.h
2.32
KB
-rw-r--r--
2022-06-30 20:26
virtio_input.h
2.45
KB
-rw-r--r--
2022-06-30 20:26
virtio_net.h
9.89
KB
-rw-r--r--
2022-06-30 20:26
virtio_pci.h
6.91
KB
-rw-r--r--
2022-06-30 20:26
virtio_ring.h
6.2
KB
-rw-r--r--
2022-06-30 20:26
virtio_rng.h
265
B
-rw-r--r--
2022-06-30 20:26
virtio_scsi.h
5.89
KB
-rw-r--r--
2022-06-30 20:26
virtio_types.h
2.11
KB
-rw-r--r--
2022-06-30 20:26
virtio_vsock.h
3.01
KB
-rw-r--r--
2022-06-30 20:26
vm_sockets.h
5.13
KB
-rw-r--r--
2022-06-30 20:26
vt.h
2.93
KB
-rw-r--r--
2022-06-30 20:26
vtpm_proxy.h
1.04
KB
-rw-r--r--
2022-06-30 20:26
wait.h
600
B
-rw-r--r--
2022-06-30 20:26
wanrouter.h
390
B
-rw-r--r--
2022-06-30 20:26
watchdog.h
2.22
KB
-rw-r--r--
2022-06-30 20:26
wil6210_uapi.h
2.27
KB
-rw-r--r--
2022-06-30 20:26
wimax.h
8.17
KB
-rw-r--r--
2022-06-30 20:26
wireless.h
41.65
KB
-rw-r--r--
2022-06-30 20:26
x25.h
3.42
KB
-rw-r--r--
2022-06-30 20:26
xattr.h
2.62
KB
-rw-r--r--
2022-06-30 20:26
xfrm.h
11.08
KB
-rw-r--r--
2022-06-30 20:26
xilinx-v4l2-controls.h
2.84
KB
-rw-r--r--
2022-06-30 20:26
zorro.h
3.16
KB
-rw-r--r--
2022-06-30 20:26
zorro_ids.h
29.2
KB
-rw-r--r--
2022-06-30 20:26
Save
Rename
/* * Copyright (C) 2006-2009 Red Hat, Inc. * * This file is released under the LGPL. */ #ifndef __DM_LOG_USERSPACE_H__ #define __DM_LOG_USERSPACE_H__ #include <linux/dm-ioctl.h> /* For DM_UUID_LEN */ /* * The device-mapper userspace log module consists of a kernel component and * a user-space component. The kernel component implements the API defined * in dm-dirty-log.h. Its purpose is simply to pass the parameters and * return values of those API functions between kernel and user-space. * * Below are defined the 'request_types' - DM_ULOG_CTR, DM_ULOG_DTR, etc. * These request types represent the different functions in the device-mapper * dirty log API. Each of these is described in more detail below. * * The user-space program must listen for requests from the kernel (representing * the various API functions) and process them. * * User-space begins by setting up the communication link (error checking * removed for clarity): * fd = socket(PF_NETLINK, SOCK_DGRAM, NETLINK_CONNECTOR); * addr.nl_family = AF_NETLINK; * addr.nl_groups = CN_IDX_DM; * addr.nl_pid = 0; * r = bind(fd, (struct sockaddr *) &addr, sizeof(addr)); * opt = addr.nl_groups; * setsockopt(fd, SOL_NETLINK, NETLINK_ADD_MEMBERSHIP, &opt, sizeof(opt)); * * User-space will then wait to receive requests form the kernel, which it * will process as described below. The requests are received in the form, * ((struct dm_ulog_request) + (additional data)). Depending on the request * type, there may or may not be 'additional data'. In the descriptions below, * you will see 'Payload-to-userspace' and 'Payload-to-kernel'. The * 'Payload-to-userspace' is what the kernel sends in 'additional data' as * necessary parameters to complete the request. The 'Payload-to-kernel' is * the 'additional data' returned to the kernel that contains the necessary * results of the request. The 'data_size' field in the dm_ulog_request * structure denotes the availability and amount of payload data. */ /* * DM_ULOG_CTR corresponds to (found in dm-dirty-log.h): * int (*ctr)(struct dm_dirty_log *log, struct dm_target *ti, * unsigned argc, char **argv); * * Payload-to-userspace: * A single string containing all the argv arguments separated by ' 's * Payload-to-kernel: * A NUL-terminated string that is the name of the device that is used * as the backing store for the log data. 'dm_get_device' will be called * on this device. ('dm_put_device' will be called on this device * automatically after calling DM_ULOG_DTR.) If there is no device needed * for log data, 'data_size' in the dm_ulog_request struct should be 0. * * The UUID contained in the dm_ulog_request structure is the reference that * will be used by all request types to a specific log. The constructor must * record this association with the instance created. * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field, filling the * data field with the log device if necessary, and setting 'data_size' * appropriately. */ #define DM_ULOG_CTR 1 /* * DM_ULOG_DTR corresponds to (found in dm-dirty-log.h): * void (*dtr)(struct dm_dirty_log *log); * * Payload-to-userspace: * A single string containing all the argv arguments separated by ' 's * Payload-to-kernel: * None. ('data_size' in the dm_ulog_request struct should be 0.) * * The UUID contained in the dm_ulog_request structure is all that is * necessary to identify the log instance being destroyed. There is no * payload data. * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field and clearing * 'data_size' appropriately. */ #define DM_ULOG_DTR 2 /* * DM_ULOG_PRESUSPEND corresponds to (found in dm-dirty-log.h): * int (*presuspend)(struct dm_dirty_log *log); * * Payload-to-userspace: * None. * Payload-to-kernel: * None. * * The UUID contained in the dm_ulog_request structure is all that is * necessary to identify the log instance being presuspended. There is no * payload data. * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field and * 'data_size' appropriately. */ #define DM_ULOG_PRESUSPEND 3 /* * DM_ULOG_POSTSUSPEND corresponds to (found in dm-dirty-log.h): * int (*postsuspend)(struct dm_dirty_log *log); * * Payload-to-userspace: * None. * Payload-to-kernel: * None. * * The UUID contained in the dm_ulog_request structure is all that is * necessary to identify the log instance being postsuspended. There is no * payload data. * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field and * 'data_size' appropriately. */ #define DM_ULOG_POSTSUSPEND 4 /* * DM_ULOG_RESUME corresponds to (found in dm-dirty-log.h): * int (*resume)(struct dm_dirty_log *log); * * Payload-to-userspace: * None. * Payload-to-kernel: * None. * * The UUID contained in the dm_ulog_request structure is all that is * necessary to identify the log instance being resumed. There is no * payload data. * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field and * 'data_size' appropriately. */ #define DM_ULOG_RESUME 5 /* * DM_ULOG_GET_REGION_SIZE corresponds to (found in dm-dirty-log.h): * uint32_t (*get_region_size)(struct dm_dirty_log *log); * * Payload-to-userspace: * None. * Payload-to-kernel: * uint64_t - contains the region size * * The region size is something that was determined at constructor time. * It is returned in the payload area and 'data_size' is set to * reflect this. * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field appropriately. */ #define DM_ULOG_GET_REGION_SIZE 6 /* * DM_ULOG_IS_CLEAN corresponds to (found in dm-dirty-log.h): * int (*is_clean)(struct dm_dirty_log *log, region_t region); * * Payload-to-userspace: * uint64_t - the region to get clean status on * Payload-to-kernel: * int64_t - 1 if clean, 0 otherwise * * Payload is sizeof(uint64_t) and contains the region for which the clean * status is being made. * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - filling the payload with 0 (not clean) or * 1 (clean), setting 'data_size' and 'error' appropriately. */ #define DM_ULOG_IS_CLEAN 7 /* * DM_ULOG_IN_SYNC corresponds to (found in dm-dirty-log.h): * int (*in_sync)(struct dm_dirty_log *log, region_t region, * int can_block); * * Payload-to-userspace: * uint64_t - the region to get sync status on * Payload-to-kernel: * int64_t - 1 if in-sync, 0 otherwise * * Exactly the same as 'is_clean' above, except this time asking "has the * region been recovered?" vs. "is the region not being modified?" */ #define DM_ULOG_IN_SYNC 8 /* * DM_ULOG_FLUSH corresponds to (found in dm-dirty-log.h): * int (*flush)(struct dm_dirty_log *log); * * Payload-to-userspace: * If the 'integrated_flush' directive is present in the constructor * table, the payload is as same as DM_ULOG_MARK_REGION: * uint64_t [] - region(s) to mark * else * None * Payload-to-kernel: * None. * * If the 'integrated_flush' option was used during the creation of the * log, mark region requests are carried as payload in the flush request. * Piggybacking the mark requests in this way allows for fewer communications * between kernel and userspace. * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field and clearing * 'data_size' appropriately. */ #define DM_ULOG_FLUSH 9 /* * DM_ULOG_MARK_REGION corresponds to (found in dm-dirty-log.h): * void (*mark_region)(struct dm_dirty_log *log, region_t region); * * Payload-to-userspace: * uint64_t [] - region(s) to mark * Payload-to-kernel: * None. * * Incoming payload contains the one or more regions to mark dirty. * The number of regions contained in the payload can be determined from * 'data_size/sizeof(uint64_t)'. * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field and clearing * 'data_size' appropriately. */ #define DM_ULOG_MARK_REGION 10 /* * DM_ULOG_CLEAR_REGION corresponds to (found in dm-dirty-log.h): * void (*clear_region)(struct dm_dirty_log *log, region_t region); * * Payload-to-userspace: * uint64_t [] - region(s) to clear * Payload-to-kernel: * None. * * Incoming payload contains the one or more regions to mark clean. * The number of regions contained in the payload can be determined from * 'data_size/sizeof(uint64_t)'. * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field and clearing * 'data_size' appropriately. */ #define DM_ULOG_CLEAR_REGION 11 /* * DM_ULOG_GET_RESYNC_WORK corresponds to (found in dm-dirty-log.h): * int (*get_resync_work)(struct dm_dirty_log *log, region_t *region); * * Payload-to-userspace: * None. * Payload-to-kernel: * { * int64_t i; -- 1 if recovery necessary, 0 otherwise * uint64_t r; -- The region to recover if i=1 * } * 'data_size' should be set appropriately. * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field appropriately. */ #define DM_ULOG_GET_RESYNC_WORK 12 /* * DM_ULOG_SET_REGION_SYNC corresponds to (found in dm-dirty-log.h): * void (*set_region_sync)(struct dm_dirty_log *log, * region_t region, int in_sync); * * Payload-to-userspace: * { * uint64_t - region to set sync state on * int64_t - 0 if not-in-sync, 1 if in-sync * } * Payload-to-kernel: * None. * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field and clearing * 'data_size' appropriately. */ #define DM_ULOG_SET_REGION_SYNC 13 /* * DM_ULOG_GET_SYNC_COUNT corresponds to (found in dm-dirty-log.h): * region_t (*get_sync_count)(struct dm_dirty_log *log); * * Payload-to-userspace: * None. * Payload-to-kernel: * uint64_t - the number of in-sync regions * * No incoming payload. Kernel-bound payload contains the number of * regions that are in-sync (in a size_t). * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field and * 'data_size' appropriately. */ #define DM_ULOG_GET_SYNC_COUNT 14 /* * DM_ULOG_STATUS_INFO corresponds to (found in dm-dirty-log.h): * int (*status)(struct dm_dirty_log *log, STATUSTYPE_INFO, * char *result, unsigned maxlen); * * Payload-to-userspace: * None. * Payload-to-kernel: * Character string containing STATUSTYPE_INFO * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field and * 'data_size' appropriately. */ #define DM_ULOG_STATUS_INFO 15 /* * DM_ULOG_STATUS_TABLE corresponds to (found in dm-dirty-log.h): * int (*status)(struct dm_dirty_log *log, STATUSTYPE_TABLE, * char *result, unsigned maxlen); * * Payload-to-userspace: * None. * Payload-to-kernel: * Character string containing STATUSTYPE_TABLE * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field and * 'data_size' appropriately. */ #define DM_ULOG_STATUS_TABLE 16 /* * DM_ULOG_IS_REMOTE_RECOVERING corresponds to (found in dm-dirty-log.h): * int (*is_remote_recovering)(struct dm_dirty_log *log, region_t region); * * Payload-to-userspace: * uint64_t - region to determine recovery status on * Payload-to-kernel: * { * int64_t is_recovering; -- 0 if no, 1 if yes * uint64_t in_sync_hint; -- lowest region still needing resync * } * * When the request has been processed, user-space must return the * dm_ulog_request to the kernel - setting the 'error' field and * 'data_size' appropriately. */ #define DM_ULOG_IS_REMOTE_RECOVERING 17 /* * (DM_ULOG_REQUEST_MASK & request_type) to get the request type * * Payload-to-userspace: * A single string containing all the argv arguments separated by ' 's * Payload-to-kernel: * None. ('data_size' in the dm_ulog_request struct should be 0.) * * We are reserving 8 bits of the 32-bit 'request_type' field for the * various request types above. The remaining 24-bits are currently * set to zero and are reserved for future use and compatibility concerns. * * User-space should always use DM_ULOG_REQUEST_TYPE to acquire the * request type from the 'request_type' field to maintain forward compatibility. */ #define DM_ULOG_REQUEST_MASK 0xFF #define DM_ULOG_REQUEST_TYPE(request_type) \ (DM_ULOG_REQUEST_MASK & (request_type)) /* * DM_ULOG_REQUEST_VERSION is incremented when there is a * change to the way information is passed between kernel * and userspace. This could be a structure change of * dm_ulog_request or a change in the way requests are * issued/handled. Changes are outlined here: * version 1: Initial implementation * version 2: DM_ULOG_CTR allowed to return a string containing a * device name that is to be registered with DM via * 'dm_get_device'. * version 3: DM_ULOG_FLUSH is capable of carrying payload for marking * regions. This "integrated flush" reduces the number of * requests between the kernel and userspace by effectively * merging 'mark' and 'flush' requests. A constructor table * argument ('integrated_flush') is required to turn this * feature on, so it is backwards compatible with older * userspace versions. */ #define DM_ULOG_REQUEST_VERSION 3 struct dm_ulog_request { /* * The local unique identifier (luid) and the universally unique * identifier (uuid) are used to tie a request to a specific * mirror log. A single machine log could probably make due with * just the 'luid', but a cluster-aware log must use the 'uuid' and * the 'luid'. The uuid is what is required for node to node * communication concerning a particular log, but the 'luid' helps * differentiate between logs that are being swapped and have the * same 'uuid'. (Think "live" and "inactive" device-mapper tables.) */ uint64_t luid; char uuid[DM_UUID_LEN]; char padding[3]; /* Padding because DM_UUID_LEN = 129 */ uint32_t version; /* See DM_ULOG_REQUEST_VERSION */ int32_t error; /* Used to report back processing errors */ uint32_t seq; /* Sequence number for request */ uint32_t request_type; /* DM_ULOG_* defined above */ uint32_t data_size; /* How much data (not including this struct) */ char data[0]; }; #endif /* __DM_LOG_USERSPACE_H__ */