From 611e5c7ea245995d9a3f48f9290862f9371a1440 Mon Sep 17 00:00:00 2001 From: Kelly Brazil Date: Sat, 24 Sep 2022 15:48:22 -0700 Subject: [PATCH] proc_pid tests --- tests/fixtures/linux-proc/pid_fdinfo.json | 1 + tests/fixtures/linux-proc/pid_fdinfo_dma.json | 1 + .../fixtures/linux-proc/pid_fdinfo_epoll.json | 1 + .../linux-proc/pid_fdinfo_fanotify.json | 1 + .../linux-proc/pid_fdinfo_inotify.json | 1 + .../linux-proc/pid_fdinfo_timerfd.json | 1 + tests/fixtures/linux-proc/pid_io.json | 1 + tests/fixtures/linux-proc/pid_maps.json | 1 + tests/fixtures/linux-proc/pid_mountinfo.json | 1 + tests/fixtures/linux-proc/pid_numa_maps.json | 1 + tests/test_proc_pid_fdinfo.py | 94 +++++++++++++++++++ tests/test_proc_pid_io.py | 44 +++++++++ tests/test_proc_pid_maps.py | 44 +++++++++ tests/test_proc_pid_mountinfo.py | 44 +++++++++ tests/test_proc_pid_numa_maps.py | 44 +++++++++ 15 files changed, 280 insertions(+) create mode 100644 tests/fixtures/linux-proc/pid_fdinfo.json create mode 100644 tests/fixtures/linux-proc/pid_fdinfo_dma.json create mode 100644 tests/fixtures/linux-proc/pid_fdinfo_epoll.json create mode 100644 tests/fixtures/linux-proc/pid_fdinfo_fanotify.json create mode 100644 tests/fixtures/linux-proc/pid_fdinfo_inotify.json create mode 100644 tests/fixtures/linux-proc/pid_fdinfo_timerfd.json create mode 100644 tests/fixtures/linux-proc/pid_io.json create mode 100644 tests/fixtures/linux-proc/pid_maps.json create mode 100644 tests/fixtures/linux-proc/pid_mountinfo.json create mode 100644 tests/fixtures/linux-proc/pid_numa_maps.json create mode 100644 tests/test_proc_pid_fdinfo.py create mode 100644 tests/test_proc_pid_io.py create mode 100644 tests/test_proc_pid_maps.py create mode 100644 tests/test_proc_pid_mountinfo.py create mode 100644 tests/test_proc_pid_numa_maps.py diff --git a/tests/fixtures/linux-proc/pid_fdinfo.json b/tests/fixtures/linux-proc/pid_fdinfo.json new file mode 100644 index 00000000..f787616a --- /dev/null +++ b/tests/fixtures/linux-proc/pid_fdinfo.json @@ -0,0 +1 @@ +{"pos":0,"flags":2004002,"mnt_id":9,"scm_fds":"0","ino":63107,"lock":"1: FLOCK ADVISORY WRITE 359 00:13:11691 0 EOF"} diff --git a/tests/fixtures/linux-proc/pid_fdinfo_dma.json b/tests/fixtures/linux-proc/pid_fdinfo_dma.json new file mode 100644 index 00000000..9fc5b3f1 --- /dev/null +++ b/tests/fixtures/linux-proc/pid_fdinfo_dma.json @@ -0,0 +1 @@ +{"pos":0,"flags":4002,"mnt_id":9,"ino":63107,"size":32768,"count":2,"exp_name":"system-heap"} diff --git a/tests/fixtures/linux-proc/pid_fdinfo_epoll.json b/tests/fixtures/linux-proc/pid_fdinfo_epoll.json new file mode 100644 index 00000000..90d1e98f --- /dev/null +++ b/tests/fixtures/linux-proc/pid_fdinfo_epoll.json @@ -0,0 +1 @@ +{"pos":0,"flags":2,"mnt_id":9,"ino":63107,"epoll":{"tfd":5,"events":"1d","data":"ffffffffffffffff","pos":0,"ino":"61af","sdev":"7"}} diff --git a/tests/fixtures/linux-proc/pid_fdinfo_fanotify.json b/tests/fixtures/linux-proc/pid_fdinfo_fanotify.json new file mode 100644 index 00000000..029f99ec --- /dev/null +++ b/tests/fixtures/linux-proc/pid_fdinfo_fanotify.json @@ -0,0 +1 @@ +{"pos":0,"flags":2,"mnt_id":9,"ino":63107,"fanotify":{"flags":"10","event-flags":"0","mnt_id":"12","mflags":"0","mask":"3b","ignored_mask":"40000000","ino":"4f969","sdev":"800013","fhandle-bytes":"8","fhandle-type":"1","f_handle":"69f90400c275b5b4"}} diff --git a/tests/fixtures/linux-proc/pid_fdinfo_inotify.json b/tests/fixtures/linux-proc/pid_fdinfo_inotify.json new file mode 100644 index 00000000..0c990895 --- /dev/null +++ b/tests/fixtures/linux-proc/pid_fdinfo_inotify.json @@ -0,0 +1 @@ +{"pos":0,"flags":2000000,"mnt_id":9,"ino":63107,"inotify":{"wd":3,"ino":"9e7e","sdev":"800013","mask":"800afce","ignored_mask":"0","fhandle-bytes":"8","fhandle-type":"1","f_handle":"7e9e0000640d1b6d"}} diff --git a/tests/fixtures/linux-proc/pid_fdinfo_timerfd.json b/tests/fixtures/linux-proc/pid_fdinfo_timerfd.json new file mode 100644 index 00000000..d0bf262c --- /dev/null +++ b/tests/fixtures/linux-proc/pid_fdinfo_timerfd.json @@ -0,0 +1 @@ +{"pos":0,"flags":2,"mnt_id":9,"ino":63107,"clockid":0,"ticks":0,"settime flags":1,"it_value":[0,49406829],"it_interval":[1,0]} diff --git a/tests/fixtures/linux-proc/pid_io.json b/tests/fixtures/linux-proc/pid_io.json new file mode 100644 index 00000000..96035be5 --- /dev/null +++ b/tests/fixtures/linux-proc/pid_io.json @@ -0,0 +1 @@ +{"rchar":4699288382,"wchar":2931802997,"syscr":661897,"syscw":890910,"read_bytes":168468480,"write_bytes":27357184,"cancelled_write_bytes":16883712} diff --git a/tests/fixtures/linux-proc/pid_maps.json b/tests/fixtures/linux-proc/pid_maps.json new file mode 100644 index 00000000..30f4109a --- /dev/null +++ b/tests/fixtures/linux-proc/pid_maps.json @@ -0,0 +1 @@ +[{"perms":["read","private"],"offset":"00000000","inode":798126,"pathname":"/usr/lib/systemd/systemd","start":"55a9e753c000","end":"55a9e7570000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00034000","inode":798126,"pathname":"/usr/lib/systemd/systemd","start":"55a9e7570000","end":"55a9e763a000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"000fe000","inode":798126,"pathname":"/usr/lib/systemd/systemd","start":"55a9e763a000","end":"55a9e7694000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00158000","inode":798126,"pathname":"/usr/lib/systemd/systemd","start":"55a9e7695000","end":"55a9e76da000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"0019d000","inode":798126,"pathname":"/usr/lib/systemd/systemd","start":"55a9e76da000","end":"55a9e76db000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"pathname":"[heap]","start":"55a9e8cd4000","end":"55a9e8f68000","maj":"00","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53a4000000","end":"7f53a4021000","maj":"00","min":"00"},{"perms":["private"],"offset":"00000000","inode":0,"start":"7f53a4021000","end":"7f53a8000000","maj":"00","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53ac000000","end":"7f53ac021000","maj":"00","min":"00"},{"perms":["private"],"offset":"00000000","inode":0,"start":"7f53ac021000","end":"7f53b0000000","maj":"00","min":"00"},{"perms":["private"],"offset":"00000000","inode":0,"start":"7f53b2fb8000","end":"7f53b2fb9000","maj":"00","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53b2fb9000","end":"7f53b37b9000","maj":"00","min":"00"},{"perms":["private"],"offset":"00000000","inode":0,"start":"7f53b37b9000","end":"7f53b37ba000","maj":"00","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53b37ba000","end":"7f53b3fc1000","maj":"00","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793156,"pathname":"/usr/lib/x86_64-linux-gnu/libm-2.32.so","start":"7f53b3fc1000","end":"7f53b3fd0000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"0000f000","inode":793156,"pathname":"/usr/lib/x86_64-linux-gnu/libm-2.32.so","start":"7f53b3fd0000","end":"7f53b4077000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"000b6000","inode":793156,"pathname":"/usr/lib/x86_64-linux-gnu/libm-2.32.so","start":"7f53b4077000","end":"7f53b410e000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0014c000","inode":793156,"pathname":"/usr/lib/x86_64-linux-gnu/libm-2.32.so","start":"7f53b410e000","end":"7f53b410f000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"0014d000","inode":793156,"pathname":"/usr/lib/x86_64-linux-gnu/libm-2.32.so","start":"7f53b410f000","end":"7f53b4110000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":788923,"pathname":"/usr/lib/x86_64-linux-gnu/libudev.so.1.6.18","start":"7f53b4110000","end":"7f53b4114000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00004000","inode":788923,"pathname":"/usr/lib/x86_64-linux-gnu/libudev.so.1.6.18","start":"7f53b4114000","end":"7f53b412d000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0001d000","inode":788923,"pathname":"/usr/lib/x86_64-linux-gnu/libudev.so.1.6.18","start":"7f53b412d000","end":"7f53b4136000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00025000","inode":788923,"pathname":"/usr/lib/x86_64-linux-gnu/libudev.so.1.6.18","start":"7f53b4136000","end":"7f53b4137000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00026000","inode":788923,"pathname":"/usr/lib/x86_64-linux-gnu/libudev.so.1.6.18","start":"7f53b4137000","end":"7f53b4138000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793263,"pathname":"/usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0","start":"7f53b4138000","end":"7f53b4148000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00010000","inode":793263,"pathname":"/usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0","start":"7f53b4148000","end":"7f53b417e000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00046000","inode":793263,"pathname":"/usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0","start":"7f53b417e000","end":"7f53b42b5000","maj":"fd","min":"00"},{"perms":["private"],"offset":"0017d000","inode":793263,"pathname":"/usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0","start":"7f53b42b5000","end":"7f53b42b6000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0017d000","inode":793263,"pathname":"/usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0","start":"7f53b42b6000","end":"7f53b42b9000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00180000","inode":793263,"pathname":"/usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0","start":"7f53b42b9000","end":"7f53b42ba000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793102,"pathname":"/usr/lib/x86_64-linux-gnu/libgpg-error.so.0.29.0","start":"7f53b42ba000","end":"7f53b42bf000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00005000","inode":793102,"pathname":"/usr/lib/x86_64-linux-gnu/libgpg-error.so.0.29.0","start":"7f53b42bf000","end":"7f53b42d4000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0001a000","inode":793102,"pathname":"/usr/lib/x86_64-linux-gnu/libgpg-error.so.0.29.0","start":"7f53b42d4000","end":"7f53b42de000","maj":"fd","min":"00"},{"perms":["private"],"offset":"00024000","inode":793102,"pathname":"/usr/lib/x86_64-linux-gnu/libgpg-error.so.0.29.0","start":"7f53b42de000","end":"7f53b42df000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00024000","inode":793102,"pathname":"/usr/lib/x86_64-linux-gnu/libgpg-error.so.0.29.0","start":"7f53b42df000","end":"7f53b42e0000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00025000","inode":793102,"pathname":"/usr/lib/x86_64-linux-gnu/libgpg-error.so.0.29.0","start":"7f53b42e0000","end":"7f53b42e1000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793139,"pathname":"/usr/lib/x86_64-linux-gnu/libjson-c.so.5.1.0","start":"7f53b42e1000","end":"7f53b42e5000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00004000","inode":793139,"pathname":"/usr/lib/x86_64-linux-gnu/libjson-c.so.5.1.0","start":"7f53b42e5000","end":"7f53b42ee000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0000d000","inode":793139,"pathname":"/usr/lib/x86_64-linux-gnu/libjson-c.so.5.1.0","start":"7f53b42ee000","end":"7f53b42f2000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00010000","inode":793139,"pathname":"/usr/lib/x86_64-linux-gnu/libjson-c.so.5.1.0","start":"7f53b42f2000","end":"7f53b42f3000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00011000","inode":793139,"pathname":"/usr/lib/x86_64-linux-gnu/libjson-c.so.5.1.0","start":"7f53b42f3000","end":"7f53b42f4000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53b42f4000","end":"7f53b42f6000","maj":"00","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793030,"pathname":"/usr/lib/x86_64-linux-gnu/libargon2.so.1","start":"7f53b42f6000","end":"7f53b42f7000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00001000","inode":793030,"pathname":"/usr/lib/x86_64-linux-gnu/libargon2.so.1","start":"7f53b42f7000","end":"7f53b42fc000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00006000","inode":793030,"pathname":"/usr/lib/x86_64-linux-gnu/libargon2.so.1","start":"7f53b42fc000","end":"7f53b42fe000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00007000","inode":793030,"pathname":"/usr/lib/x86_64-linux-gnu/libargon2.so.1","start":"7f53b42fe000","end":"7f53b42ff000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00008000","inode":793030,"pathname":"/usr/lib/x86_64-linux-gnu/libargon2.so.1","start":"7f53b42ff000","end":"7f53b4300000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793061,"pathname":"/usr/lib/x86_64-linux-gnu/libdevmapper.so.1.02.1","start":"7f53b4300000","end":"7f53b430a000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"0000a000","inode":793061,"pathname":"/usr/lib/x86_64-linux-gnu/libdevmapper.so.1.02.1","start":"7f53b430a000","end":"7f53b4352000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00052000","inode":793061,"pathname":"/usr/lib/x86_64-linux-gnu/libdevmapper.so.1.02.1","start":"7f53b4352000","end":"7f53b4366000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00065000","inode":793061,"pathname":"/usr/lib/x86_64-linux-gnu/libdevmapper.so.1.02.1","start":"7f53b4366000","end":"7f53b4367000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00066000","inode":793061,"pathname":"/usr/lib/x86_64-linux-gnu/libdevmapper.so.1.02.1","start":"7f53b4367000","end":"7f53b436a000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53b436a000","end":"7f53b436b000","maj":"00","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793279,"pathname":"/usr/lib/x86_64-linux-gnu/libuuid.so.1.3.0","start":"7f53b436b000","end":"7f53b436d000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00002000","inode":793279,"pathname":"/usr/lib/x86_64-linux-gnu/libuuid.so.1.3.0","start":"7f53b436d000","end":"7f53b4371000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00006000","inode":793279,"pathname":"/usr/lib/x86_64-linux-gnu/libuuid.so.1.3.0","start":"7f53b4371000","end":"7f53b4372000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00006000","inode":793279,"pathname":"/usr/lib/x86_64-linux-gnu/libuuid.so.1.3.0","start":"7f53b4372000","end":"7f53b4373000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00007000","inode":793279,"pathname":"/usr/lib/x86_64-linux-gnu/libuuid.so.1.3.0","start":"7f53b4373000","end":"7f53b4374000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":790506,"pathname":"/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1","start":"7f53b4374000","end":"7f53b43ec000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00078000","inode":790506,"pathname":"/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1","start":"7f53b43ec000","end":"7f53b458e000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0021a000","inode":790506,"pathname":"/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1","start":"7f53b458e000","end":"7f53b461e000","maj":"fd","min":"00"},{"perms":["private"],"offset":"002aa000","inode":790506,"pathname":"/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1","start":"7f53b461e000","end":"7f53b461f000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"002aa000","inode":790506,"pathname":"/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1","start":"7f53b461f000","end":"7f53b464b000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"002d6000","inode":790506,"pathname":"/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1","start":"7f53b464b000","end":"7f53b464d000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53b464d000","end":"7f53b4651000","maj":"00","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793046,"pathname":"/usr/lib/x86_64-linux-gnu/libcap-ng.so.0.0.0","start":"7f53b4651000","end":"7f53b4653000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00002000","inode":793046,"pathname":"/usr/lib/x86_64-linux-gnu/libcap-ng.so.0.0.0","start":"7f53b4653000","end":"7f53b4656000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00005000","inode":793046,"pathname":"/usr/lib/x86_64-linux-gnu/libcap-ng.so.0.0.0","start":"7f53b4656000","end":"7f53b4657000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00005000","inode":793046,"pathname":"/usr/lib/x86_64-linux-gnu/libcap-ng.so.0.0.0","start":"7f53b4657000","end":"7f53b4658000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00006000","inode":793046,"pathname":"/usr/lib/x86_64-linux-gnu/libcap-ng.so.0.0.0","start":"7f53b4658000","end":"7f53b4659000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793203,"pathname":"/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0","start":"7f53b4659000","end":"7f53b465b000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00002000","inode":793203,"pathname":"/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0","start":"7f53b465b000","end":"7f53b46bf000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00066000","inode":793203,"pathname":"/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0","start":"7f53b46bf000","end":"7f53b46e7000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0008d000","inode":793203,"pathname":"/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0","start":"7f53b46e7000","end":"7f53b46e8000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"0008e000","inode":793203,"pathname":"/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0","start":"7f53b46e8000","end":"7f53b46e9000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53b46e9000","end":"7f53b46eb000","maj":"00","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793218,"pathname":"/usr/lib/x86_64-linux-gnu/libpthread-2.32.so","start":"7f53b46eb000","end":"7f53b46f2000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00007000","inode":793218,"pathname":"/usr/lib/x86_64-linux-gnu/libpthread-2.32.so","start":"7f53b46f2000","end":"7f53b4702000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00017000","inode":793218,"pathname":"/usr/lib/x86_64-linux-gnu/libpthread-2.32.so","start":"7f53b4702000","end":"7f53b4707000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0001b000","inode":793218,"pathname":"/usr/lib/x86_64-linux-gnu/libpthread-2.32.so","start":"7f53b4707000","end":"7f53b4708000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"0001c000","inode":793218,"pathname":"/usr/lib/x86_64-linux-gnu/libpthread-2.32.so","start":"7f53b4708000","end":"7f53b4709000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53b4709000","end":"7f53b470d000","maj":"00","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793062,"pathname":"/usr/lib/x86_64-linux-gnu/libdl-2.32.so","start":"7f53b470d000","end":"7f53b470e000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00001000","inode":793062,"pathname":"/usr/lib/x86_64-linux-gnu/libdl-2.32.so","start":"7f53b470e000","end":"7f53b4710000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00003000","inode":793062,"pathname":"/usr/lib/x86_64-linux-gnu/libdl-2.32.so","start":"7f53b4710000","end":"7f53b4711000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00003000","inode":793062,"pathname":"/usr/lib/x86_64-linux-gnu/libdl-2.32.so","start":"7f53b4711000","end":"7f53b4712000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00004000","inode":793062,"pathname":"/usr/lib/x86_64-linux-gnu/libdl-2.32.so","start":"7f53b4712000","end":"7f53b4713000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793154,"pathname":"/usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4","start":"7f53b4713000","end":"7f53b4716000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00003000","inode":793154,"pathname":"/usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4","start":"7f53b4716000","end":"7f53b472e000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0001b000","inode":793154,"pathname":"/usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4","start":"7f53b472e000","end":"7f53b4739000","maj":"fd","min":"00"},{"perms":["private"],"offset":"00026000","inode":793154,"pathname":"/usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4","start":"7f53b4739000","end":"7f53b473a000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00026000","inode":793154,"pathname":"/usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4","start":"7f53b473a000","end":"7f53b473b000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00027000","inode":793154,"pathname":"/usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4","start":"7f53b473b000","end":"7f53b473c000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":792974,"pathname":"/usr/lib/x86_64-linux-gnu/libzstd.so.1.4.5","start":"7f53b473c000","end":"7f53b4740000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00004000","inode":792974,"pathname":"/usr/lib/x86_64-linux-gnu/libzstd.so.1.4.5","start":"7f53b4740000","end":"7f53b47f8000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"000bc000","inode":792974,"pathname":"/usr/lib/x86_64-linux-gnu/libzstd.so.1.4.5","start":"7f53b47f8000","end":"7f53b480a000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"000cd000","inode":792974,"pathname":"/usr/lib/x86_64-linux-gnu/libzstd.so.1.4.5","start":"7f53b480a000","end":"7f53b480b000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"000ce000","inode":792974,"pathname":"/usr/lib/x86_64-linux-gnu/libzstd.so.1.4.5","start":"7f53b480b000","end":"7f53b480c000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":787663,"pathname":"/usr/lib/x86_64-linux-gnu/liblz4.so.1.9.2","start":"7f53b480c000","end":"7f53b480e000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00002000","inode":787663,"pathname":"/usr/lib/x86_64-linux-gnu/liblz4.so.1.9.2","start":"7f53b480e000","end":"7f53b4829000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0001d000","inode":787663,"pathname":"/usr/lib/x86_64-linux-gnu/liblz4.so.1.9.2","start":"7f53b4829000","end":"7f53b482c000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0001f000","inode":787663,"pathname":"/usr/lib/x86_64-linux-gnu/liblz4.so.1.9.2","start":"7f53b482c000","end":"7f53b482d000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00020000","inode":787663,"pathname":"/usr/lib/x86_64-linux-gnu/liblz4.so.1.9.2","start":"7f53b482d000","end":"7f53b482e000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53b482e000","end":"7f53b4830000","maj":"00","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793129,"pathname":"/usr/lib/x86_64-linux-gnu/libip4tc.so.2.0.0","start":"7f53b4830000","end":"7f53b4832000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00002000","inode":793129,"pathname":"/usr/lib/x86_64-linux-gnu/libip4tc.so.2.0.0","start":"7f53b4832000","end":"7f53b4836000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00006000","inode":793129,"pathname":"/usr/lib/x86_64-linux-gnu/libip4tc.so.2.0.0","start":"7f53b4836000","end":"7f53b4838000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00007000","inode":793129,"pathname":"/usr/lib/x86_64-linux-gnu/libip4tc.so.2.0.0","start":"7f53b4838000","end":"7f53b4839000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00008000","inode":793129,"pathname":"/usr/lib/x86_64-linux-gnu/libip4tc.so.2.0.0","start":"7f53b4839000","end":"7f53b483a000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793128,"pathname":"/usr/lib/x86_64-linux-gnu/libidn2.so.0.3.7","start":"7f53b483a000","end":"7f53b483c000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00002000","inode":793128,"pathname":"/usr/lib/x86_64-linux-gnu/libidn2.so.0.3.7","start":"7f53b483c000","end":"7f53b4841000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00007000","inode":793128,"pathname":"/usr/lib/x86_64-linux-gnu/libidn2.so.0.3.7","start":"7f53b4841000","end":"7f53b485a000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0001f000","inode":793128,"pathname":"/usr/lib/x86_64-linux-gnu/libidn2.so.0.3.7","start":"7f53b485a000","end":"7f53b485b000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00020000","inode":793128,"pathname":"/usr/lib/x86_64-linux-gnu/libidn2.so.0.3.7","start":"7f53b485b000","end":"7f53b485c000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793092,"pathname":"/usr/lib/x86_64-linux-gnu/libgcrypt.so.20.2.5","start":"7f53b485c000","end":"7f53b4868000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"0000c000","inode":793092,"pathname":"/usr/lib/x86_64-linux-gnu/libgcrypt.so.20.2.5","start":"7f53b4868000","end":"7f53b4936000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"000da000","inode":793092,"pathname":"/usr/lib/x86_64-linux-gnu/libgcrypt.so.20.2.5","start":"7f53b4936000","end":"7f53b4973000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00116000","inode":793092,"pathname":"/usr/lib/x86_64-linux-gnu/libgcrypt.so.20.2.5","start":"7f53b4973000","end":"7f53b4975000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00118000","inode":793092,"pathname":"/usr/lib/x86_64-linux-gnu/libgcrypt.so.20.2.5","start":"7f53b4975000","end":"7f53b497a000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793052,"pathname":"/usr/lib/x86_64-linux-gnu/libcryptsetup.so.12.6.0","start":"7f53b497a000","end":"7f53b4981000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00007000","inode":793052,"pathname":"/usr/lib/x86_64-linux-gnu/libcryptsetup.so.12.6.0","start":"7f53b4981000","end":"7f53b49d2000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00058000","inode":793052,"pathname":"/usr/lib/x86_64-linux-gnu/libcryptsetup.so.12.6.0","start":"7f53b49d2000","end":"7f53b49ec000","maj":"fd","min":"00"},{"perms":["private"],"offset":"00072000","inode":793052,"pathname":"/usr/lib/x86_64-linux-gnu/libcryptsetup.so.12.6.0","start":"7f53b49ec000","end":"7f53b49ed000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00072000","inode":793052,"pathname":"/usr/lib/x86_64-linux-gnu/libcryptsetup.so.12.6.0","start":"7f53b49ed000","end":"7f53b49ef000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00074000","inode":793052,"pathname":"/usr/lib/x86_64-linux-gnu/libcryptsetup.so.12.6.0","start":"7f53b49ef000","end":"7f53b49f1000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793050,"pathname":"/usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0","start":"7f53b49f1000","end":"7f53b49f3000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00002000","inode":793050,"pathname":"/usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0","start":"7f53b49f3000","end":"7f53b4a08000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00017000","inode":793050,"pathname":"/usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0","start":"7f53b4a08000","end":"7f53b4a22000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00030000","inode":793050,"pathname":"/usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0","start":"7f53b4a22000","end":"7f53b4a23000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00031000","inode":793050,"pathname":"/usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0","start":"7f53b4a23000","end":"7f53b4a24000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53b4a24000","end":"7f53b4a2c000","maj":"00","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793047,"pathname":"/usr/lib/x86_64-linux-gnu/libcap.so.2.43","start":"7f53b4a2c000","end":"7f53b4a2f000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00003000","inode":793047,"pathname":"/usr/lib/x86_64-linux-gnu/libcap.so.2.43","start":"7f53b4a2f000","end":"7f53b4a33000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00007000","inode":793047,"pathname":"/usr/lib/x86_64-linux-gnu/libcap.so.2.43","start":"7f53b4a33000","end":"7f53b4a35000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00008000","inode":793047,"pathname":"/usr/lib/x86_64-linux-gnu/libcap.so.2.43","start":"7f53b4a35000","end":"7f53b4a36000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00009000","inode":793047,"pathname":"/usr/lib/x86_64-linux-gnu/libcap.so.2.43","start":"7f53b4a36000","end":"7f53b4a37000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53b4a37000","end":"7f53b4a39000","maj":"00","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793038,"pathname":"/usr/lib/x86_64-linux-gnu/libblkid.so.1.1.0","start":"7f53b4a39000","end":"7f53b4a42000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00009000","inode":793038,"pathname":"/usr/lib/x86_64-linux-gnu/libblkid.so.1.1.0","start":"7f53b4a42000","end":"7f53b4a76000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0003d000","inode":793038,"pathname":"/usr/lib/x86_64-linux-gnu/libblkid.so.1.1.0","start":"7f53b4a76000","end":"7f53b4a86000","maj":"fd","min":"00"},{"perms":["private"],"offset":"0004d000","inode":793038,"pathname":"/usr/lib/x86_64-linux-gnu/libblkid.so.1.1.0","start":"7f53b4a86000","end":"7f53b4a87000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0004d000","inode":793038,"pathname":"/usr/lib/x86_64-linux-gnu/libblkid.so.1.1.0","start":"7f53b4a87000","end":"7f53b4a8b000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00051000","inode":793038,"pathname":"/usr/lib/x86_64-linux-gnu/libblkid.so.1.1.0","start":"7f53b4a8b000","end":"7f53b4a8c000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793022,"pathname":"/usr/lib/x86_64-linux-gnu/libacl.so.1.1.2253","start":"7f53b4a8c000","end":"7f53b4a8e000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00002000","inode":793022,"pathname":"/usr/lib/x86_64-linux-gnu/libacl.so.1.1.2253","start":"7f53b4a8e000","end":"7f53b4a93000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00007000","inode":793022,"pathname":"/usr/lib/x86_64-linux-gnu/libacl.so.1.1.2253","start":"7f53b4a93000","end":"7f53b4a95000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00008000","inode":793022,"pathname":"/usr/lib/x86_64-linux-gnu/libacl.so.1.1.2253","start":"7f53b4a95000","end":"7f53b4a96000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00009000","inode":793022,"pathname":"/usr/lib/x86_64-linux-gnu/libacl.so.1.1.2253","start":"7f53b4a96000","end":"7f53b4a97000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793044,"pathname":"/usr/lib/x86_64-linux-gnu/libc-2.32.so","start":"7f53b4a97000","end":"7f53b4abd000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00026000","inode":793044,"pathname":"/usr/lib/x86_64-linux-gnu/libc-2.32.so","start":"7f53b4abd000","end":"7f53b4c2a000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00193000","inode":793044,"pathname":"/usr/lib/x86_64-linux-gnu/libc-2.32.so","start":"7f53b4c2a000","end":"7f53b4c76000","maj":"fd","min":"00"},{"perms":["private"],"offset":"001df000","inode":793044,"pathname":"/usr/lib/x86_64-linux-gnu/libc-2.32.so","start":"7f53b4c76000","end":"7f53b4c77000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"001df000","inode":793044,"pathname":"/usr/lib/x86_64-linux-gnu/libc-2.32.so","start":"7f53b4c77000","end":"7f53b4c7a000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"001e2000","inode":793044,"pathname":"/usr/lib/x86_64-linux-gnu/libc-2.32.so","start":"7f53b4c7a000","end":"7f53b4c7d000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53b4c7d000","end":"7f53b4c81000","maj":"00","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793025,"pathname":"/usr/lib/x86_64-linux-gnu/libapparmor.so.1.7.0","start":"7f53b4c81000","end":"7f53b4c84000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00003000","inode":793025,"pathname":"/usr/lib/x86_64-linux-gnu/libapparmor.so.1.7.0","start":"7f53b4c84000","end":"7f53b4c8d000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0000c000","inode":793025,"pathname":"/usr/lib/x86_64-linux-gnu/libapparmor.so.1.7.0","start":"7f53b4c8d000","end":"7f53b4c94000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00012000","inode":793025,"pathname":"/usr/lib/x86_64-linux-gnu/libapparmor.so.1.7.0","start":"7f53b4c94000","end":"7f53b4c95000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00013000","inode":793025,"pathname":"/usr/lib/x86_64-linux-gnu/libapparmor.so.1.7.0","start":"7f53b4c95000","end":"7f53b4c96000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793143,"pathname":"/usr/lib/x86_64-linux-gnu/libkmod.so.2.3.5","start":"7f53b4c96000","end":"7f53b4c99000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00003000","inode":793143,"pathname":"/usr/lib/x86_64-linux-gnu/libkmod.so.2.3.5","start":"7f53b4c99000","end":"7f53b4ca9000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00013000","inode":793143,"pathname":"/usr/lib/x86_64-linux-gnu/libkmod.so.2.3.5","start":"7f53b4ca9000","end":"7f53b4caf000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00018000","inode":793143,"pathname":"/usr/lib/x86_64-linux-gnu/libkmod.so.2.3.5","start":"7f53b4caf000","end":"7f53b4cb0000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00019000","inode":793143,"pathname":"/usr/lib/x86_64-linux-gnu/libkmod.so.2.3.5","start":"7f53b4cb0000","end":"7f53b4cb1000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793036,"pathname":"/usr/lib/x86_64-linux-gnu/libaudit.so.1.0.0","start":"7f53b4cb1000","end":"7f53b4cb4000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00003000","inode":793036,"pathname":"/usr/lib/x86_64-linux-gnu/libaudit.so.1.0.0","start":"7f53b4cb4000","end":"7f53b4cbc000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0000b000","inode":793036,"pathname":"/usr/lib/x86_64-linux-gnu/libaudit.so.1.0.0","start":"7f53b4cbc000","end":"7f53b4cd0000","maj":"fd","min":"00"},{"perms":["private"],"offset":"0001f000","inode":793036,"pathname":"/usr/lib/x86_64-linux-gnu/libaudit.so.1.0.0","start":"7f53b4cd0000","end":"7f53b4cd1000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0001f000","inode":793036,"pathname":"/usr/lib/x86_64-linux-gnu/libaudit.so.1.0.0","start":"7f53b4cd1000","end":"7f53b4cd2000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00020000","inode":793036,"pathname":"/usr/lib/x86_64-linux-gnu/libaudit.so.1.0.0","start":"7f53b4cd2000","end":"7f53b4cd3000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53b4cd3000","end":"7f53b4cdf000","maj":"00","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793193,"pathname":"/usr/lib/x86_64-linux-gnu/libpam.so.0.84.2","start":"7f53b4cdf000","end":"7f53b4ce2000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00003000","inode":793193,"pathname":"/usr/lib/x86_64-linux-gnu/libpam.so.0.84.2","start":"7f53b4ce2000","end":"7f53b4ceb000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0000c000","inode":793193,"pathname":"/usr/lib/x86_64-linux-gnu/libpam.so.0.84.2","start":"7f53b4ceb000","end":"7f53b4cef000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0000f000","inode":793193,"pathname":"/usr/lib/x86_64-linux-gnu/libpam.so.0.84.2","start":"7f53b4cef000","end":"7f53b4cf0000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00010000","inode":793193,"pathname":"/usr/lib/x86_64-linux-gnu/libpam.so.0.84.2","start":"7f53b4cf0000","end":"7f53b4cf1000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793163,"pathname":"/usr/lib/x86_64-linux-gnu/libmount.so.1.1.0","start":"7f53b4cf1000","end":"7f53b4cfb000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"0000a000","inode":793163,"pathname":"/usr/lib/x86_64-linux-gnu/libmount.so.1.1.0","start":"7f53b4cfb000","end":"7f53b4d39000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00048000","inode":793163,"pathname":"/usr/lib/x86_64-linux-gnu/libmount.so.1.1.0","start":"7f53b4d39000","end":"7f53b4d4c000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0005a000","inode":793163,"pathname":"/usr/lib/x86_64-linux-gnu/libmount.so.1.1.0","start":"7f53b4d4c000","end":"7f53b4d4e000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"0005c000","inode":793163,"pathname":"/usr/lib/x86_64-linux-gnu/libmount.so.1.1.0","start":"7f53b4d4e000","end":"7f53b4d4f000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793228,"pathname":"/usr/lib/x86_64-linux-gnu/libselinux.so.1","start":"7f53b4d4f000","end":"7f53b4d55000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00006000","inode":793228,"pathname":"/usr/lib/x86_64-linux-gnu/libselinux.so.1","start":"7f53b4d55000","end":"7f53b4d6e000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0001f000","inode":793228,"pathname":"/usr/lib/x86_64-linux-gnu/libselinux.so.1","start":"7f53b4d6e000","end":"7f53b4d76000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00026000","inode":793228,"pathname":"/usr/lib/x86_64-linux-gnu/libselinux.so.1","start":"7f53b4d76000","end":"7f53b4d77000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00027000","inode":793228,"pathname":"/usr/lib/x86_64-linux-gnu/libselinux.so.1","start":"7f53b4d77000","end":"7f53b4d78000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53b4d78000","end":"7f53b4d7a000","maj":"00","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793227,"pathname":"/usr/lib/x86_64-linux-gnu/libseccomp.so.2.4.3","start":"7f53b4d7a000","end":"7f53b4da2000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00028000","inode":793227,"pathname":"/usr/lib/x86_64-linux-gnu/libseccomp.so.2.4.3","start":"7f53b4da2000","end":"7f53b4dad000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00033000","inode":793227,"pathname":"/usr/lib/x86_64-linux-gnu/libseccomp.so.2.4.3","start":"7f53b4dad000","end":"7f53b4db1000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00036000","inode":793227,"pathname":"/usr/lib/x86_64-linux-gnu/libseccomp.so.2.4.3","start":"7f53b4db1000","end":"7f53b4dcc000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00051000","inode":793227,"pathname":"/usr/lib/x86_64-linux-gnu/libseccomp.so.2.4.3","start":"7f53b4dcc000","end":"7f53b4dcd000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793224,"pathname":"/usr/lib/x86_64-linux-gnu/librt-2.32.so","start":"7f53b4dcd000","end":"7f53b4dd0000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00003000","inode":793224,"pathname":"/usr/lib/x86_64-linux-gnu/librt-2.32.so","start":"7f53b4dd0000","end":"7f53b4dd4000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00007000","inode":793224,"pathname":"/usr/lib/x86_64-linux-gnu/librt-2.32.so","start":"7f53b4dd4000","end":"7f53b4dd6000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00008000","inode":793224,"pathname":"/usr/lib/x86_64-linux-gnu/librt-2.32.so","start":"7f53b4dd6000","end":"7f53b4dd7000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00009000","inode":793224,"pathname":"/usr/lib/x86_64-linux-gnu/librt-2.32.so","start":"7f53b4dd7000","end":"7f53b4dd8000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":798124,"pathname":"/usr/lib/systemd/libsystemd-shared-246.so","start":"7f53b4ddf000","end":"7f53b4e29000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"0004a000","inode":798124,"pathname":"/usr/lib/systemd/libsystemd-shared-246.so","start":"7f53b4e29000","end":"7f53b4fac000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"001cd000","inode":798124,"pathname":"/usr/lib/systemd/libsystemd-shared-246.so","start":"7f53b4fac000","end":"7f53b503f000","maj":"fd","min":"00"},{"perms":["private"],"offset":"00260000","inode":798124,"pathname":"/usr/lib/systemd/libsystemd-shared-246.so","start":"7f53b503f000","end":"7f53b5040000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00260000","inode":798124,"pathname":"/usr/lib/systemd/libsystemd-shared-246.so","start":"7f53b5040000","end":"7f53b5050000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00270000","inode":798124,"pathname":"/usr/lib/systemd/libsystemd-shared-246.so","start":"7f53b5050000","end":"7f53b5051000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"start":"7f53b5051000","end":"7f53b5054000","maj":"00","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":793013,"pathname":"/usr/lib/x86_64-linux-gnu/ld-2.32.so","start":"7f53b5054000","end":"7f53b5055000","maj":"fd","min":"00"},{"perms":["read","execute","private"],"offset":"00001000","inode":793013,"pathname":"/usr/lib/x86_64-linux-gnu/ld-2.32.so","start":"7f53b5055000","end":"7f53b5079000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"00025000","inode":793013,"pathname":"/usr/lib/x86_64-linux-gnu/ld-2.32.so","start":"7f53b5079000","end":"7f53b5082000","maj":"fd","min":"00"},{"perms":["read","private"],"offset":"0002d000","inode":793013,"pathname":"/usr/lib/x86_64-linux-gnu/ld-2.32.so","start":"7f53b5082000","end":"7f53b5083000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"0002e000","inode":793013,"pathname":"/usr/lib/x86_64-linux-gnu/ld-2.32.so","start":"7f53b5083000","end":"7f53b5085000","maj":"fd","min":"00"},{"perms":["read","write","private"],"offset":"00000000","inode":0,"pathname":"[stack]","start":"7ffd1b23e000","end":"7ffd1b340000","maj":"00","min":"00"},{"perms":["read","private"],"offset":"00000000","inode":0,"pathname":"[vvar]","start":"7ffd1b3b1000","end":"7ffd1b3b5000","maj":"00","min":"00"},{"perms":["read","execute","private"],"offset":"00000000","inode":0,"pathname":"[vdso]","start":"7ffd1b3b5000","end":"7ffd1b3b7000","maj":"00","min":"00"},{"perms":["execute","private"],"offset":"00000000","inode":0,"pathname":"[vsyscall]","start":"ffffffffff600000","end":"ffffffffff601000","maj":"00","min":"00"}] diff --git a/tests/fixtures/linux-proc/pid_mountinfo.json b/tests/fixtures/linux-proc/pid_mountinfo.json new file mode 100644 index 00000000..8b7fe4d6 --- /dev/null +++ b/tests/fixtures/linux-proc/pid_mountinfo.json @@ -0,0 +1 @@ +[{"mount_id":24,"parent_id":30,"maj":0,"min":22,"root":"/","mount_point":"/sys","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"master":1,"shared":7},"fs_type":"sysfs","mount_source":"sysfs","super_options":["rw"]},{"mount_id":25,"parent_id":30,"maj":0,"min":23,"root":"/","mount_point":"/proc","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":14},"fs_type":"proc","mount_source":"proc","super_options":["rw"]},{"mount_id":26,"parent_id":30,"maj":0,"min":5,"root":"/","mount_point":"/dev","mount_options":["rw","nosuid","noexec","relatime"],"optional_fields":{},"fs_type":"devtmpfs","mount_source":"udev","super_options":["rw"],"super_options_fields":{"size":1951480,"nr_inodes":487870,"mode":755}},{"mount_id":27,"parent_id":26,"maj":0,"min":24,"root":"/","mount_point":"/dev/pts","mount_options":["rw","nosuid","noexec","relatime"],"optional_fields":{"shared":3},"fs_type":"devpts","mount_source":"devpts","super_options":["rw"],"super_options_fields":{"gid":5,"mode":620,"ptmxmode":0}},{"mount_id":28,"parent_id":30,"maj":0,"min":25,"root":"/","mount_point":"/run","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":5},"fs_type":"tmpfs","mount_source":"tmpfs","super_options":["rw"],"super_options_fields":{"size":399728,"mode":755}},{"mount_id":30,"parent_id":1,"maj":253,"min":0,"root":"/","mount_point":"/","mount_options":["rw","relatime"],"optional_fields":{"shared":1},"fs_type":"ext4","mount_source":"/dev/mapper/ubuntu--vg-ubuntu--lv"},{"mount_id":31,"parent_id":24,"maj":0,"min":6,"root":"/","mount_point":"/sys/kernel/security","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"unbindable":0},"fs_type":"securityfs","mount_source":"securityfs","super_options":["rw"]},{"mount_id":32,"parent_id":26,"maj":0,"min":27,"root":"/","mount_point":"/dev/shm","mount_options":["rw","nosuid","nodev"],"optional_fields":{"shared":4},"fs_type":"tmpfs","mount_source":"tmpfs","super_options":["rw"]},{"mount_id":33,"parent_id":28,"maj":0,"min":28,"root":"/","mount_point":"/run/lock","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":6},"fs_type":"tmpfs","mount_source":"tmpfs","super_options":["rw"],"super_options_fields":{"size":5120}},{"mount_id":34,"parent_id":24,"maj":0,"min":29,"root":"/","mount_point":"/sys/fs/cgroup","mount_options":["ro","nosuid","nodev","noexec"],"optional_fields":{"shared":9},"fs_type":"tmpfs","mount_source":"tmpfs","super_options":["ro"],"super_options_fields":{"size":4096,"nr_inodes":1024,"mode":755}},{"mount_id":35,"parent_id":34,"maj":0,"min":30,"root":"/","mount_point":"/sys/fs/cgroup/unified","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":10},"fs_type":"cgroup2","mount_source":"cgroup2","super_options":["rw","nsdelegate"]},{"mount_id":36,"parent_id":34,"maj":0,"min":31,"root":"/","mount_point":"/sys/fs/cgroup/systemd","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":11},"fs_type":"cgroup","mount_source":"cgroup","super_options":["rw","xattr"],"super_options_fields":{"name":null}},{"mount_id":37,"parent_id":24,"maj":0,"min":32,"root":"/","mount_point":"/sys/fs/pstore","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":12},"fs_type":"pstore","mount_source":"pstore","super_options":["rw"]},{"mount_id":38,"parent_id":24,"maj":0,"min":33,"root":"/","mount_point":"/sys/fs/bpf","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":13},"fs_type":"bpf","mount_source":"none","super_options":["rw"],"super_options_fields":{"mode":700}},{"mount_id":39,"parent_id":34,"maj":0,"min":34,"root":"/","mount_point":"/sys/fs/cgroup/hugetlb","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":15},"fs_type":"cgroup","mount_source":"cgroup","super_options":["rw","hugetlb"]},{"mount_id":40,"parent_id":34,"maj":0,"min":35,"root":"/","mount_point":"/sys/fs/cgroup/net_cls,net_prio","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":16},"fs_type":"cgroup","mount_source":"cgroup","super_options":["rw","net_cls","net_prio"]},{"mount_id":41,"parent_id":34,"maj":0,"min":36,"root":"/","mount_point":"/sys/fs/cgroup/pids","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":17},"fs_type":"cgroup","mount_source":"cgroup","super_options":["rw","pids"]},{"mount_id":42,"parent_id":34,"maj":0,"min":37,"root":"/","mount_point":"/sys/fs/cgroup/blkio","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":18},"fs_type":"cgroup","mount_source":"cgroup","super_options":["rw","blkio"]},{"mount_id":43,"parent_id":34,"maj":0,"min":38,"root":"/","mount_point":"/sys/fs/cgroup/memory","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":19},"fs_type":"cgroup","mount_source":"cgroup","super_options":["rw","memory"]},{"mount_id":44,"parent_id":34,"maj":0,"min":39,"root":"/","mount_point":"/sys/fs/cgroup/devices","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":20},"fs_type":"cgroup","mount_source":"cgroup","super_options":["rw","devices"]},{"mount_id":45,"parent_id":34,"maj":0,"min":40,"root":"/","mount_point":"/sys/fs/cgroup/cpu,cpuacct","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":21},"fs_type":"cgroup","mount_source":"cgroup","super_options":["rw","cpu","cpuacct"]},{"mount_id":46,"parent_id":34,"maj":0,"min":41,"root":"/","mount_point":"/sys/fs/cgroup/rdma","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":22},"fs_type":"cgroup","mount_source":"cgroup","super_options":["rw","rdma"]},{"mount_id":47,"parent_id":34,"maj":0,"min":42,"root":"/","mount_point":"/sys/fs/cgroup/perf_event","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":23},"fs_type":"cgroup","mount_source":"cgroup","super_options":["rw","perf_event"]},{"mount_id":48,"parent_id":34,"maj":0,"min":43,"root":"/","mount_point":"/sys/fs/cgroup/freezer","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":24},"fs_type":"cgroup","mount_source":"cgroup","super_options":["rw","freezer"]},{"mount_id":49,"parent_id":34,"maj":0,"min":44,"root":"/","mount_point":"/sys/fs/cgroup/cpuset","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":25},"fs_type":"cgroup","mount_source":"cgroup","super_options":["rw","cpuset"]},{"mount_id":50,"parent_id":25,"maj":0,"min":45,"root":"/","mount_point":"/proc/sys/fs/binfmt_misc","mount_options":["rw","relatime"],"optional_fields":{"shared":26},"fs_type":"autofs","mount_source":"systemd-1","super_options":["rw","direct"],"super_options_fields":{"fd":28,"pgrp":1,"timeout":0,"minproto":5,"maxproto":5,"pipe_ino":29773}},{"mount_id":51,"parent_id":26,"maj":0,"min":46,"root":"/","mount_point":"/dev/hugepages","mount_options":["rw","relatime"],"optional_fields":{"shared":27},"fs_type":"hugetlbfs","mount_source":"hugetlbfs","super_options":["rw"],"super_options_fields":{"pagesize":2}},{"mount_id":52,"parent_id":26,"maj":0,"min":20,"root":"/","mount_point":"/dev/mqueue","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":28},"fs_type":"mqueue","mount_source":"mqueue","super_options":["rw"]},{"mount_id":53,"parent_id":24,"maj":0,"min":7,"root":"/","mount_point":"/sys/kernel/debug","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":29},"fs_type":"debugfs","mount_source":"debugfs","super_options":["rw"]},{"mount_id":54,"parent_id":24,"maj":0,"min":11,"root":"/","mount_point":"/sys/kernel/tracing","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":30},"fs_type":"tracefs","mount_source":"tracefs","super_options":["rw"]},{"mount_id":55,"parent_id":24,"maj":0,"min":47,"root":"/","mount_point":"/sys/fs/fuse/connections","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":31},"fs_type":"fusectl","mount_source":"fusectl","super_options":["rw"]},{"mount_id":56,"parent_id":24,"maj":0,"min":21,"root":"/","mount_point":"/sys/kernel/config","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":32},"fs_type":"configfs","mount_source":"configfs","super_options":["rw"]},{"mount_id":125,"parent_id":30,"maj":8,"min":2,"root":"/","mount_point":"/boot","mount_options":["rw","relatime"],"optional_fields":{"shared":67},"fs_type":"ext4","mount_source":"/dev/sda2","super_options":["rw"]},{"mount_id":131,"parent_id":30,"maj":7,"min":0,"root":"/","mount_point":"/snap/core18/2538","mount_options":["ro","nodev","relatime"],"optional_fields":{"shared":71},"fs_type":"squashfs","mount_source":"/dev/loop0","super_options":["ro"]},{"mount_id":134,"parent_id":30,"maj":7,"min":1,"root":"/","mount_point":"/snap/core18/2409","mount_options":["ro","nodev","relatime"],"optional_fields":{"shared":73},"fs_type":"squashfs","mount_source":"/dev/loop1","super_options":["ro"]},{"mount_id":137,"parent_id":30,"maj":7,"min":3,"root":"/","mount_point":"/snap/core20/1587","mount_options":["ro","nodev","relatime"],"optional_fields":{"shared":75},"fs_type":"squashfs","mount_source":"/dev/loop3","super_options":["ro"]},{"mount_id":140,"parent_id":30,"maj":7,"min":5,"root":"/","mount_point":"/snap/snapd/16292","mount_options":["ro","nodev","relatime"],"optional_fields":{"shared":77},"fs_type":"squashfs","mount_source":"/dev/loop5","super_options":["ro"]},{"mount_id":146,"parent_id":30,"maj":7,"min":7,"root":"/","mount_point":"/snap/lxd/23339","mount_options":["ro","nodev","relatime"],"optional_fields":{"shared":81},"fs_type":"squashfs","mount_source":"/dev/loop7","super_options":["ro"]},{"mount_id":149,"parent_id":30,"maj":7,"min":6,"root":"/","mount_point":"/snap/snapd/16010","mount_options":["ro","nodev","relatime"],"optional_fields":{"shared":83},"fs_type":"squashfs","mount_source":"/dev/loop6","super_options":["ro"]},{"mount_id":466,"parent_id":28,"maj":0,"min":25,"root":"/snapd/ns","mount_point":"/run/snapd/ns","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{},"fs_type":"tmpfs","mount_source":"tmpfs","super_options":["rw"],"super_options_fields":{"size":399728,"mode":755}},{"mount_id":832,"parent_id":28,"maj":0,"min":52,"root":"/","mount_point":"/run/user/1000","mount_options":["rw","nosuid","nodev","relatime"],"optional_fields":{"shared":426},"fs_type":"tmpfs","mount_source":"tmpfs","super_options":["rw"],"super_options_fields":{"size":399724,"nr_inodes":99931,"mode":700,"uid":1000,"gid":1000}},{"mount_id":849,"parent_id":30,"maj":7,"min":8,"root":"/","mount_point":"/snap/core20/1611","mount_options":["ro","nodev","relatime"],"optional_fields":{"shared":434},"fs_type":"squashfs","mount_source":"/dev/loop8","super_options":["ro"]},{"mount_id":128,"parent_id":30,"maj":7,"min":2,"root":"/","mount_point":"/snap/lxd/23537","mount_options":["ro","nodev","relatime"],"optional_fields":{"shared":69},"fs_type":"squashfs","mount_source":"/dev/loop2","super_options":["ro"]},{"mount_id":481,"parent_id":466,"maj":0,"min":4,"root":"mnt:[4026532641]","mount_point":"/run/snapd/ns/lxd.mnt","mount_options":["rw"],"optional_fields":{},"fs_type":"nsfs","mount_source":"nsfs","super_options":["rw"]},{"mount_id":143,"parent_id":50,"maj":0,"min":53,"root":"/","mount_point":"/proc/sys/fs/binfmt_misc","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":70},"fs_type":"binfmt_misc","mount_source":"binfmt_misc","super_options":["rw"]},{"mount_id":493,"parent_id":53,"maj":0,"min":11,"root":"/","mount_point":"/sys/kernel/debug/tracing","mount_options":["rw","nosuid","nodev","noexec","relatime"],"optional_fields":{"shared":265},"fs_type":"tracefs","mount_source":"tracefs","super_options":["rw"]}] diff --git a/tests/fixtures/linux-proc/pid_numa_maps.json b/tests/fixtures/linux-proc/pid_numa_maps.json new file mode 100644 index 00000000..400c781c --- /dev/null +++ b/tests/fixtures/linux-proc/pid_numa_maps.json @@ -0,0 +1 @@ +[{"address":"55a9e753c000","policy":"default","file":"/usr/lib/systemd/systemd","mapped":52,"mapmax":2,"active":16,"N0":52,"kernelpagesize_kB":4},{"address":"55a9e7570000","policy":"default","file":"/usr/lib/systemd/systemd","mapped":200,"mapmax":3,"active":120,"N0":200,"kernelpagesize_kB":4},{"address":"55a9e763a000","policy":"default","file":"/usr/lib/systemd/systemd","mapped":69,"mapmax":3,"N0":69,"kernelpagesize_kB":4},{"address":"55a9e7695000","policy":"default","file":"/usr/lib/systemd/systemd","anon":63,"dirty":63,"mapped":67,"mapmax":3,"active":63,"N0":67,"kernelpagesize_kB":4},{"address":"55a9e76da000","policy":"default","file":"/usr/lib/systemd/systemd","anon":1,"dirty":1,"N0":1,"kernelpagesize_kB":4},{"address":"55a9e8cd4000","policy":"default","anon":611,"dirty":611,"mapmax":2,"N0":611,"kernelpagesize_kB":4,"options":["heap"]},{"address":"7f53a4000000","policy":"default","anon":3,"dirty":3,"N0":3,"kernelpagesize_kB":4},{"address":"7f53a4021000","policy":"default"},{"address":"7f53ac000000","policy":"default","anon":3,"dirty":3,"N0":3,"kernelpagesize_kB":4},{"address":"7f53ac021000","policy":"default"},{"address":"7f53b2fb8000","policy":"default"},{"address":"7f53b2fb9000","policy":"default","anon":2,"dirty":2,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b37b9000","policy":"default"},{"address":"7f53b37ba000","policy":"default","anon":8,"dirty":8,"mapmax":2,"N0":8,"kernelpagesize_kB":4},{"address":"7f53b3fc1000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libm-2.32.so","mapped":14,"mapmax":12,"N0":14,"kernelpagesize_kB":4},{"address":"7f53b3fd0000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libm-2.32.so","mapped":71,"mapmax":12,"N0":71,"kernelpagesize_kB":4},{"address":"7f53b4077000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libm-2.32.so"},{"address":"7f53b410e000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libm-2.32.so","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b410f000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libm-2.32.so","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4110000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libudev.so.1.6.18","mapped":4,"mapmax":9,"N0":4,"kernelpagesize_kB":4},{"address":"7f53b4114000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libudev.so.1.6.18","mapped":16,"mapmax":9,"N0":16,"kernelpagesize_kB":4},{"address":"7f53b412d000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libudev.so.1.6.18"},{"address":"7f53b4136000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libudev.so.1.6.18","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4137000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libudev.so.1.6.18","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4138000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0","mapped":16,"mapmax":7,"N0":16,"kernelpagesize_kB":4},{"address":"7f53b4148000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0","mapped":15,"mapmax":7,"N0":15,"kernelpagesize_kB":4},{"address":"7f53b417e000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0"},{"address":"7f53b42b5000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0"},{"address":"7f53b42b6000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0","anon":3,"dirty":3,"mapmax":2,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b42b9000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b42ba000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libgpg-error.so.0.29.0","mapped":5,"mapmax":17,"N0":5,"kernelpagesize_kB":4},{"address":"7f53b42bf000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libgpg-error.so.0.29.0","mapped":20,"mapmax":17,"N0":20,"kernelpagesize_kB":4},{"address":"7f53b42d4000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libgpg-error.so.0.29.0","mapped":9,"mapmax":17,"N0":9,"kernelpagesize_kB":4},{"address":"7f53b42de000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libgpg-error.so.0.29.0"},{"address":"7f53b42df000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libgpg-error.so.0.29.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b42e0000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libgpg-error.so.0.29.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b42e1000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libjson-c.so.5.1.0","mapped":4,"mapmax":7,"N0":4,"kernelpagesize_kB":4},{"address":"7f53b42e5000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libjson-c.so.5.1.0","mapped":8,"mapmax":7,"N0":8,"kernelpagesize_kB":4},{"address":"7f53b42ee000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libjson-c.so.5.1.0"},{"address":"7f53b42f2000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libjson-c.so.5.1.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b42f3000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libjson-c.so.5.1.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b42f4000","policy":"default","anon":2,"dirty":2,"mapmax":2,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b42f6000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libargon2.so.1","mapped":1,"mapmax":7,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b42f7000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libargon2.so.1","mapped":5,"mapmax":7,"N0":5,"kernelpagesize_kB":4},{"address":"7f53b42fc000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libargon2.so.1"},{"address":"7f53b42fe000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libargon2.so.1","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b42ff000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libargon2.so.1","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4300000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libdevmapper.so.1.02.1","mapped":10,"mapmax":8,"N0":10,"kernelpagesize_kB":4},{"address":"7f53b430a000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libdevmapper.so.1.02.1","mapped":15,"mapmax":8,"N0":15,"kernelpagesize_kB":4},{"address":"7f53b4352000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libdevmapper.so.1.02.1","mapped":16,"mapmax":8,"N0":16,"kernelpagesize_kB":4},{"address":"7f53b4366000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libdevmapper.so.1.02.1","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4367000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libdevmapper.so.1.02.1","anon":2,"dirty":2,"mapped":3,"mapmax":8,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b436a000","policy":"default"},{"address":"7f53b436b000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libuuid.so.1.3.0","mapped":2,"mapmax":8,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b436d000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libuuid.so.1.3.0","mapped":4,"mapmax":8,"N0":4,"kernelpagesize_kB":4},{"address":"7f53b4371000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libuuid.so.1.3.0"},{"address":"7f53b4372000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libuuid.so.1.3.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4373000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libuuid.so.1.3.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4374000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1","mapped":120,"mapmax":13,"N0":120,"kernelpagesize_kB":4},{"address":"7f53b43ec000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1","mapped":45,"mapmax":13,"N0":45,"kernelpagesize_kB":4},{"address":"7f53b458e000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1","mapped":16,"mapmax":13,"N0":16,"kernelpagesize_kB":4},{"address":"7f53b461e000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1"},{"address":"7f53b461f000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1","anon":44,"dirty":44,"mapmax":2,"N0":44,"kernelpagesize_kB":4},{"address":"7f53b464b000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1","anon":2,"dirty":2,"mapmax":2,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b464d000","policy":"default","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4651000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcap-ng.so.0.0.0","mapped":2,"mapmax":17,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b4653000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcap-ng.so.0.0.0","mapped":3,"mapmax":18,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b4656000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcap-ng.so.0.0.0"},{"address":"7f53b4657000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcap-ng.so.0.0.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4658000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcap-ng.so.0.0.0","anon":1,"dirty":1,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4659000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0","mapped":2,"mapmax":22,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b465b000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0","mapped":15,"mapmax":21,"N0":15,"kernelpagesize_kB":4},{"address":"7f53b46bf000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0"},{"address":"7f53b46e7000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b46e8000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b46e9000","policy":"default","anon":2,"dirty":2,"mapmax":2,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b46eb000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpthread-2.32.so","mapped":7,"mapmax":26,"N0":7,"kernelpagesize_kB":4},{"address":"7f53b46f2000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpthread-2.32.so","mapped":16,"mapmax":28,"N0":16,"kernelpagesize_kB":4},{"address":"7f53b4702000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpthread-2.32.so","mapped":5,"mapmax":17,"N0":5,"kernelpagesize_kB":4},{"address":"7f53b4707000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpthread-2.32.so","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4708000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpthread-2.32.so","anon":1,"dirty":1,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4709000","policy":"default","anon":1,"dirty":1,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b470d000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libdl-2.32.so","mapped":1,"mapmax":28,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b470e000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libdl-2.32.so","mapped":2,"mapmax":27,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b4710000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libdl-2.32.so"},{"address":"7f53b4711000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libdl-2.32.so","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4712000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libdl-2.32.so","anon":1,"dirty":1,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4713000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4","mapped":3,"mapmax":19,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b4716000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4","mapped":15,"mapmax":19,"N0":15,"kernelpagesize_kB":4},{"address":"7f53b472e000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4"},{"address":"7f53b4739000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4"},{"address":"7f53b473a000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b473b000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b473c000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libzstd.so.1.4.5","mapped":4,"mapmax":17,"N0":4,"kernelpagesize_kB":4},{"address":"7f53b4740000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libzstd.so.1.4.5","mapped":16,"mapmax":17,"N0":16,"kernelpagesize_kB":4},{"address":"7f53b47f8000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libzstd.so.1.4.5"},{"address":"7f53b480a000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libzstd.so.1.4.5","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b480b000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libzstd.so.1.4.5","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b480c000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/liblz4.so.1.9.2","mapped":2,"mapmax":17,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b480e000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/liblz4.so.1.9.2","mapped":16,"mapmax":17,"N0":16,"kernelpagesize_kB":4},{"address":"7f53b4829000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/liblz4.so.1.9.2"},{"address":"7f53b482c000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/liblz4.so.1.9.2","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b482d000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/liblz4.so.1.9.2","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b482e000","policy":"default","anon":2,"dirty":2,"mapmax":2,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b4830000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libip4tc.so.2.0.0","mapped":2,"mapmax":7,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b4832000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libip4tc.so.2.0.0","mapped":4,"mapmax":7,"N0":4,"kernelpagesize_kB":4},{"address":"7f53b4836000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libip4tc.so.2.0.0"},{"address":"7f53b4838000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libip4tc.so.2.0.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4839000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libip4tc.so.2.0.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b483a000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libidn2.so.0.3.7","mapped":2,"mapmax":7,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b483c000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libidn2.so.0.3.7","mapped":5,"mapmax":7,"N0":5,"kernelpagesize_kB":4},{"address":"7f53b4841000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libidn2.so.0.3.7"},{"address":"7f53b485a000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libidn2.so.0.3.7","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b485b000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libidn2.so.0.3.7","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b485c000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libgcrypt.so.20.2.5","mapped":12,"mapmax":17,"N0":12,"kernelpagesize_kB":4},{"address":"7f53b4868000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libgcrypt.so.20.2.5","mapped":15,"mapmax":17,"N0":15,"kernelpagesize_kB":4},{"address":"7f53b4936000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libgcrypt.so.20.2.5"},{"address":"7f53b4973000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libgcrypt.so.20.2.5","anon":2,"dirty":2,"mapmax":2,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b4975000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libgcrypt.so.20.2.5","anon":5,"dirty":5,"mapmax":2,"N0":5,"kernelpagesize_kB":4},{"address":"7f53b497a000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcryptsetup.so.12.6.0","mapped":7,"mapmax":7,"N0":7,"kernelpagesize_kB":4},{"address":"7f53b4981000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcryptsetup.so.12.6.0","mapped":16,"mapmax":7,"N0":16,"kernelpagesize_kB":4},{"address":"7f53b49d2000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcryptsetup.so.12.6.0"},{"address":"7f53b49ec000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcryptsetup.so.12.6.0"},{"address":"7f53b49ed000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcryptsetup.so.12.6.0","anon":2,"dirty":2,"mapmax":2,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b49ef000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcryptsetup.so.12.6.0","anon":2,"dirty":2,"mapmax":2,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b49f1000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0","mapped":2,"mapmax":13,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b49f3000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0","mapped":12,"mapmax":12,"N0":12,"kernelpagesize_kB":4},{"address":"7f53b4a08000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0"},{"address":"7f53b4a22000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4a23000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4a24000","policy":"default"},{"address":"7f53b4a2c000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcap.so.2.43","mapped":3,"mapmax":11,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b4a2f000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcap.so.2.43","mapped":4,"mapmax":12,"N0":4,"kernelpagesize_kB":4},{"address":"7f53b4a33000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcap.so.2.43"},{"address":"7f53b4a35000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcap.so.2.43","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4a36000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libcap.so.2.43","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4a37000","policy":"default","anon":2,"dirty":2,"mapmax":2,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b4a39000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libblkid.so.1.1.0","mapped":9,"mapmax":12,"N0":9,"kernelpagesize_kB":4},{"address":"7f53b4a42000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libblkid.so.1.1.0","mapped":15,"mapmax":12,"N0":15,"kernelpagesize_kB":4},{"address":"7f53b4a76000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libblkid.so.1.1.0"},{"address":"7f53b4a86000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libblkid.so.1.1.0"},{"address":"7f53b4a87000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libblkid.so.1.1.0","anon":4,"dirty":4,"mapmax":2,"N0":4,"kernelpagesize_kB":4},{"address":"7f53b4a8b000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libblkid.so.1.1.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4a8c000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libacl.so.1.1.2253","mapped":2,"mapmax":8,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b4a8e000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libacl.so.1.1.2253","mapped":5,"mapmax":8,"N0":5,"kernelpagesize_kB":4},{"address":"7f53b4a93000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libacl.so.1.1.2253"},{"address":"7f53b4a95000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libacl.so.1.1.2253","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4a96000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libacl.so.1.1.2253","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4a97000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libc-2.32.so","mapped":37,"mapmax":31,"N0":37,"kernelpagesize_kB":4},{"address":"7f53b4abd000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libc-2.32.so","mapped":314,"mapmax":32,"N0":314,"kernelpagesize_kB":4},{"address":"7f53b4c2a000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libc-2.32.so","mapped":36,"mapmax":32,"N0":36,"kernelpagesize_kB":4},{"address":"7f53b4c76000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libc-2.32.so"},{"address":"7f53b4c77000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libc-2.32.so","anon":3,"dirty":3,"mapmax":2,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b4c7a000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libc-2.32.so","anon":3,"dirty":3,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b4c7d000","policy":"default","anon":3,"dirty":3,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b4c81000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libapparmor.so.1.7.0","mapped":3,"mapmax":3,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b4c84000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libapparmor.so.1.7.0","mapped":9,"mapmax":3,"active":0,"N0":9,"kernelpagesize_kB":4},{"address":"7f53b4c8d000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libapparmor.so.1.7.0","mapped":6,"mapmax":2,"active":0,"N0":6,"kernelpagesize_kB":4},{"address":"7f53b4c94000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libapparmor.so.1.7.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4c95000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libapparmor.so.1.7.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4c96000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libkmod.so.2.3.5","mapped":3,"mapmax":8,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b4c99000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libkmod.so.2.3.5","mapped":16,"mapmax":8,"N0":16,"kernelpagesize_kB":4},{"address":"7f53b4ca9000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libkmod.so.2.3.5","mapped":6,"mapmax":2,"N0":6,"kernelpagesize_kB":4},{"address":"7f53b4caf000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libkmod.so.2.3.5","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4cb0000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libkmod.so.2.3.5","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4cb1000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libaudit.so.1.0.0","mapped":3,"mapmax":16,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b4cb4000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libaudit.so.1.0.0","mapped":8,"mapmax":16,"N0":8,"kernelpagesize_kB":4},{"address":"7f53b4cbc000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libaudit.so.1.0.0","mapped":15,"mapmax":6,"active":14,"N0":15,"kernelpagesize_kB":4},{"address":"7f53b4cd0000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libaudit.so.1.0.0"},{"address":"7f53b4cd1000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libaudit.so.1.0.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4cd2000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libaudit.so.1.0.0","anon":1,"dirty":1,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4cd3000","policy":"default","anon":3,"dirty":3,"mapmax":2,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b4cdf000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpam.so.0.84.2","mapped":3,"mapmax":15,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b4ce2000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpam.so.0.84.2","mapped":8,"mapmax":15,"N0":8,"kernelpagesize_kB":4},{"address":"7f53b4ceb000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpam.so.0.84.2"},{"address":"7f53b4cef000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpam.so.0.84.2","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4cf0000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libpam.so.0.84.2","anon":1,"dirty":1,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4cf1000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libmount.so.1.1.0","mapped":10,"mapmax":11,"N0":10,"kernelpagesize_kB":4},{"address":"7f53b4cfb000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libmount.so.1.1.0","mapped":52,"mapmax":11,"N0":52,"kernelpagesize_kB":4},{"address":"7f53b4d39000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libmount.so.1.1.0","mapped":15,"mapmax":2,"N0":15,"kernelpagesize_kB":4},{"address":"7f53b4d4c000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libmount.so.1.1.0","anon":2,"dirty":2,"mapmax":2,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b4d4e000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libmount.so.1.1.0","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4d4f000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libselinux.so.1","mapped":6,"mapmax":22,"N0":6,"kernelpagesize_kB":4},{"address":"7f53b4d55000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libselinux.so.1","mapped":25,"mapmax":22,"N0":25,"kernelpagesize_kB":4},{"address":"7f53b4d6e000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libselinux.so.1","mapped":8,"mapmax":21,"N0":8,"kernelpagesize_kB":4},{"address":"7f53b4d76000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libselinux.so.1","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4d77000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libselinux.so.1","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4d78000","policy":"default","anon":2,"dirty":2,"mapmax":2,"N0":2,"kernelpagesize_kB":4},{"address":"7f53b4d7a000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libseccomp.so.2.4.3","mapped":40,"mapmax":7,"N0":40,"kernelpagesize_kB":4},{"address":"7f53b4da2000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libseccomp.so.2.4.3","mapped":11,"mapmax":7,"N0":11,"kernelpagesize_kB":4},{"address":"7f53b4dad000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libseccomp.so.2.4.3","mapped":4,"N0":4,"kernelpagesize_kB":4},{"address":"7f53b4db1000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libseccomp.so.2.4.3","anon":27,"dirty":27,"mapmax":2,"N0":27,"kernelpagesize_kB":4},{"address":"7f53b4dcc000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/libseccomp.so.2.4.3","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4dcd000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/librt-2.32.so","mapped":3,"mapmax":17,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b4dd0000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/librt-2.32.so","mapped":4,"mapmax":17,"N0":4,"kernelpagesize_kB":4},{"address":"7f53b4dd4000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/librt-2.32.so"},{"address":"7f53b4dd6000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/librt-2.32.so","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4dd7000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/librt-2.32.so","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b4ddf000","policy":"default","file":"/usr/lib/systemd/libsystemd-shared-246.so","mapped":74,"mapmax":7,"N0":74,"kernelpagesize_kB":4},{"address":"7f53b4e29000","policy":"default","file":"/usr/lib/systemd/libsystemd-shared-246.so","mapped":354,"mapmax":8,"active":348,"N0":354,"kernelpagesize_kB":4},{"address":"7f53b4fac000","policy":"default","file":"/usr/lib/systemd/libsystemd-shared-246.so","mapped":84,"mapmax":7,"N0":84,"kernelpagesize_kB":4},{"address":"7f53b503f000","policy":"default","file":"/usr/lib/systemd/libsystemd-shared-246.so"},{"address":"7f53b5040000","policy":"default","file":"/usr/lib/systemd/libsystemd-shared-246.so","anon":16,"dirty":16,"mapmax":2,"N0":16,"kernelpagesize_kB":4},{"address":"7f53b5050000","policy":"default","file":"/usr/lib/systemd/libsystemd-shared-246.so","anon":1,"dirty":1,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b5051000","policy":"default","anon":3,"dirty":3,"N0":3,"kernelpagesize_kB":4},{"address":"7f53b5054000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/ld-2.32.so","mapped":1,"mapmax":31,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b5055000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/ld-2.32.so","mapped":36,"mapmax":32,"N0":36,"kernelpagesize_kB":4},{"address":"7f53b5079000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/ld-2.32.so","mapped":8,"mapmax":31,"N0":8,"kernelpagesize_kB":4},{"address":"7f53b5082000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/ld-2.32.so","anon":1,"dirty":1,"mapmax":2,"N0":1,"kernelpagesize_kB":4},{"address":"7f53b5083000","policy":"default","file":"/usr/lib/x86_64-linux-gnu/ld-2.32.so","anon":2,"dirty":2,"N0":2,"kernelpagesize_kB":4},{"address":"7ffd1b23e000","policy":"default","anon":258,"dirty":258,"N0":258,"kernelpagesize_kB":4,"options":["stack"]},{"address":"7ffd1b3b1000","policy":"default"},{"address":"7ffd1b3b5000","policy":"default"}] diff --git a/tests/test_proc_pid_fdinfo.py b/tests/test_proc_pid_fdinfo.py new file mode 100644 index 00000000..ded342b2 --- /dev/null +++ b/tests/test_proc_pid_fdinfo.py @@ -0,0 +1,94 @@ +import os +import unittest +import json +from typing import Dict +import jc.parsers.proc_pid_fdinfo + +THIS_DIR = os.path.dirname(os.path.abspath(__file__)) + + +class MyTests(unittest.TestCase): + f_in: Dict = {} + f_json: Dict = {} + + @classmethod + def setUpClass(cls): + fixtures = { + 'proc_pid_fdinfo': ( + 'fixtures/linux-proc/pid_fdinfo', + 'fixtures/linux-proc/pid_fdinfo.json'), + 'proc_pid_fdinfo_dma': ( + 'fixtures/linux-proc/pid_fdinfo_dma', + 'fixtures/linux-proc/pid_fdinfo_dma.json'), + 'proc_pid_fdinfo_epoll': ( + 'fixtures/linux-proc/pid_fdinfo_epoll', + 'fixtures/linux-proc/pid_fdinfo_epoll.json'), + 'proc_pid_fdinfo_fanotify': ( + 'fixtures/linux-proc/pid_fdinfo_fanotify', + 'fixtures/linux-proc/pid_fdinfo_fanotify.json'), + 'proc_pid_fdinfo_inotify': ( + 'fixtures/linux-proc/pid_fdinfo_inotify', + 'fixtures/linux-proc/pid_fdinfo_inotify.json'), + 'proc_pid_fdinfo_timerfd': ( + 'fixtures/linux-proc/pid_fdinfo_timerfd', + 'fixtures/linux-proc/pid_fdinfo_timerfd.json') + } + + for file, filepaths in fixtures.items(): + with open(os.path.join(THIS_DIR, filepaths[0]), 'r', encoding='utf-8') as a, \ + open(os.path.join(THIS_DIR, filepaths[1]), 'r', encoding='utf-8') as b: + cls.f_in[file] = a.read() + cls.f_json[file] = json.loads(b.read()) + + + def test_proc_pid_fdinfo_nodata(self): + """ + Test 'proc_pid_fdinfo' with no data + """ + self.assertEqual(jc.parsers.proc_pid_fdinfo.parse('', quiet=True), {}) + + def test_proc_pid_fdinfo(self): + """ + Test '/proc//fdinfo/' + """ + self.assertEqual(jc.parsers.proc_pid_fdinfo.parse(self.f_in['proc_pid_fdinfo'], quiet=True), + self.f_json['proc_pid_fdinfo']) + + def test_proc_pid_fdinfo_dma(self): + """ + Test '/proc//fdinfo/' dma file + """ + self.assertEqual(jc.parsers.proc_pid_fdinfo.parse(self.f_in['proc_pid_fdinfo_dma'], quiet=True), + self.f_json['proc_pid_fdinfo_dma']) + + def test_proc_pid_fdinfo_epoll(self): + """ + Test '/proc//fdinfo/' epoll file + """ + self.assertEqual(jc.parsers.proc_pid_fdinfo.parse(self.f_in['proc_pid_fdinfo_epoll'], quiet=True), + self.f_json['proc_pid_fdinfo_epoll']) + + def test_proc_pid_fdinfo_fanotify(self): + """ + Test '/proc//fdinfo/' fanotify file + """ + self.assertEqual(jc.parsers.proc_pid_fdinfo.parse(self.f_in['proc_pid_fdinfo_fanotify'], quiet=True), + self.f_json['proc_pid_fdinfo_fanotify']) + + def test_proc_pid_fdinfo_inotify(self): + """ + Test '/proc//fdinfo/' inotify file + """ + self.assertEqual(jc.parsers.proc_pid_fdinfo.parse(self.f_in['proc_pid_fdinfo_inotify'], quiet=True), + self.f_json['proc_pid_fdinfo_inotify']) + + def test_proc_pid_fdinfo_timerfd(self): + """ + Test '/proc//fdinfo/' timerfd file + """ + self.assertEqual(jc.parsers.proc_pid_fdinfo.parse(self.f_in['proc_pid_fdinfo_timerfd'], quiet=True), + self.f_json['proc_pid_fdinfo_timerfd']) + + +if __name__ == '__main__': + unittest.main() diff --git a/tests/test_proc_pid_io.py b/tests/test_proc_pid_io.py new file mode 100644 index 00000000..e7752687 --- /dev/null +++ b/tests/test_proc_pid_io.py @@ -0,0 +1,44 @@ +import os +import unittest +import json +from typing import Dict +import jc.parsers.proc_pid_io + +THIS_DIR = os.path.dirname(os.path.abspath(__file__)) + + +class MyTests(unittest.TestCase): + f_in: Dict = {} + f_json: Dict = {} + + @classmethod + def setUpClass(cls): + fixtures = { + 'proc_pid_io': ( + 'fixtures/linux-proc/pid_io', + 'fixtures/linux-proc/pid_io.json') + } + + for file, filepaths in fixtures.items(): + with open(os.path.join(THIS_DIR, filepaths[0]), 'r', encoding='utf-8') as a, \ + open(os.path.join(THIS_DIR, filepaths[1]), 'r', encoding='utf-8') as b: + cls.f_in[file] = a.read() + cls.f_json[file] = json.loads(b.read()) + + + def test_proc_pid_io_nodata(self): + """ + Test 'proc_pid_io' with no data + """ + self.assertEqual(jc.parsers.proc_pid_io.parse('', quiet=True), {}) + + def test_proc_pid_io(self): + """ + Test '/proc//io' + """ + self.assertEqual(jc.parsers.proc_pid_io.parse(self.f_in['proc_pid_io'], quiet=True), + self.f_json['proc_pid_io']) + + +if __name__ == '__main__': + unittest.main() diff --git a/tests/test_proc_pid_maps.py b/tests/test_proc_pid_maps.py new file mode 100644 index 00000000..295254aa --- /dev/null +++ b/tests/test_proc_pid_maps.py @@ -0,0 +1,44 @@ +import os +import unittest +import json +from typing import Dict +import jc.parsers.proc_pid_maps + +THIS_DIR = os.path.dirname(os.path.abspath(__file__)) + + +class MyTests(unittest.TestCase): + f_in: Dict = {} + f_json: Dict = {} + + @classmethod + def setUpClass(cls): + fixtures = { + 'proc_pid_maps': ( + 'fixtures/linux-proc/pid_maps', + 'fixtures/linux-proc/pid_maps.json') + } + + for file, filepaths in fixtures.items(): + with open(os.path.join(THIS_DIR, filepaths[0]), 'r', encoding='utf-8') as a, \ + open(os.path.join(THIS_DIR, filepaths[1]), 'r', encoding='utf-8') as b: + cls.f_in[file] = a.read() + cls.f_json[file] = json.loads(b.read()) + + + def test_proc_pid_maps_nodata(self): + """ + Test 'proc_pid_maps' with no data + """ + self.assertEqual(jc.parsers.proc_pid_maps.parse('', quiet=True), []) + + def test_proc_pid_maps(self): + """ + Test '/proc//maps' + """ + self.assertEqual(jc.parsers.proc_pid_maps.parse(self.f_in['proc_pid_maps'], quiet=True), + self.f_json['proc_pid_maps']) + + +if __name__ == '__main__': + unittest.main() diff --git a/tests/test_proc_pid_mountinfo.py b/tests/test_proc_pid_mountinfo.py new file mode 100644 index 00000000..4a58f4ef --- /dev/null +++ b/tests/test_proc_pid_mountinfo.py @@ -0,0 +1,44 @@ +import os +import unittest +import json +from typing import Dict +import jc.parsers.proc_pid_mountinfo + +THIS_DIR = os.path.dirname(os.path.abspath(__file__)) + + +class MyTests(unittest.TestCase): + f_in: Dict = {} + f_json: Dict = {} + + @classmethod + def setUpClass(cls): + fixtures = { + 'proc_pid_mountinfo': ( + 'fixtures/linux-proc/pid_mountinfo', + 'fixtures/linux-proc/pid_mountinfo.json') + } + + for file, filepaths in fixtures.items(): + with open(os.path.join(THIS_DIR, filepaths[0]), 'r', encoding='utf-8') as a, \ + open(os.path.join(THIS_DIR, filepaths[1]), 'r', encoding='utf-8') as b: + cls.f_in[file] = a.read() + cls.f_json[file] = json.loads(b.read()) + + + def test_proc_pid_mountinfo_nodata(self): + """ + Test 'proc_pid_mountinfo' with no data + """ + self.assertEqual(jc.parsers.proc_pid_mountinfo.parse('', quiet=True), []) + + def test_proc_pid_mountinfo(self): + """ + Test '/proc//mountinfo' + """ + self.assertEqual(jc.parsers.proc_pid_mountinfo.parse(self.f_in['proc_pid_mountinfo'], quiet=True), + self.f_json['proc_pid_mountinfo']) + + +if __name__ == '__main__': + unittest.main() diff --git a/tests/test_proc_pid_numa_maps.py b/tests/test_proc_pid_numa_maps.py new file mode 100644 index 00000000..d73d19a1 --- /dev/null +++ b/tests/test_proc_pid_numa_maps.py @@ -0,0 +1,44 @@ +import os +import unittest +import json +from typing import Dict +import jc.parsers.proc_pid_numa_maps + +THIS_DIR = os.path.dirname(os.path.abspath(__file__)) + + +class MyTests(unittest.TestCase): + f_in: Dict = {} + f_json: Dict = {} + + @classmethod + def setUpClass(cls): + fixtures = { + 'proc_pid_numa_maps': ( + 'fixtures/linux-proc/pid_numa_maps', + 'fixtures/linux-proc/pid_numa_maps.json') + } + + for file, filepaths in fixtures.items(): + with open(os.path.join(THIS_DIR, filepaths[0]), 'r', encoding='utf-8') as a, \ + open(os.path.join(THIS_DIR, filepaths[1]), 'r', encoding='utf-8') as b: + cls.f_in[file] = a.read() + cls.f_json[file] = json.loads(b.read()) + + + def test_proc_pid_numa_maps_nodata(self): + """ + Test 'proc_pid_numa_maps' with no data + """ + self.assertEqual(jc.parsers.proc_pid_numa_maps.parse('', quiet=True), []) + + def test_proc_pid_numa_maps(self): + """ + Test '/proc//numa_maps' + """ + self.assertEqual(jc.parsers.proc_pid_numa_maps.parse(self.f_in['proc_pid_numa_maps'], quiet=True), + self.f_json['proc_pid_numa_maps']) + + +if __name__ == '__main__': + unittest.main()