]> granicus.if.org Git - strace/commitdiff
Wire up userfaultfd, membarrier, and mlock2 syscalls
authorDmitry V. Levin <ldv@altlinux.org>
Sun, 15 Nov 2015 02:37:51 +0000 (02:37 +0000)
committerDmitry V. Levin <ldv@altlinux.org>
Tue, 17 Nov 2015 00:39:49 +0000 (00:39 +0000)
* linux/dummy.h (membarrier, mlock2, userfaultfd): New stub aliases.
* linux/32/syscallent.h (userfaultfd, membarrier, mlock2): New entries.
* linux/64/syscallent.h (userfaultfd, membarrier, mlock2): Likewise.
* linux/arm/syscallent.h (userfaultfd, membarrier, mlock2): Likewise.
* linux/hppa/syscallent.h (userfaultfd, membarrier, mlock2): Likewise.
* linux/i386/syscallent.h (userfaultfd, membarrier, mlock2): Likewise.
* linux/ia64/syscallent.h (userfaultfd, membarrier): Likewise.
* linux/m68k/syscallent.h (userfaultfd, membarrier, mlock2): Likewise.
* linux/microblaze/syscallent.h (userfaultfd, membarrier, mlock2): Likewise.
* linux/mips/syscallent-n32.h (userfaultfd, membarrier, mlock2): Likewise.
* linux/mips/syscallent-n64.h (userfaultfd, membarrier, mlock2): Likewise.
* linux/mips/syscallent-o32.h (userfaultfd, membarrier, mlock2): Likewise.
* linux/powerpc/syscallent.h (userfaultfd, membarrier): Likewise.
* linux/s390/syscallent.h (userfaultfd, membarrier, mlock2): Likewise.
* linux/s390x/syscallent.h (userfaultfd, membarrier, mlock2): Likewise.
* linux/sparc/syscallent.h (membarrier, userfaultfd, mlock2): Likewise.
* linux/x32/syscallent.h (userfaultfd, membarrier, mlock2): Likewise.
* linux/x86_64/syscallent.h (userfaultfd, membarrier, mlock2): Likewise.

18 files changed:
linux/32/syscallent.h
linux/64/syscallent.h
linux/arm/syscallent.h
linux/dummy.h
linux/hppa/syscallent.h
linux/i386/syscallent.h
linux/ia64/syscallent.h
linux/m68k/syscallent.h
linux/microblaze/syscallent.h
linux/mips/syscallent-n32.h
linux/mips/syscallent-n64.h
linux/mips/syscallent-o32.h
linux/powerpc/syscallent.h
linux/s390/syscallent.h
linux/s390x/syscallent.h
linux/sparc/syscallent.h
linux/x32/syscallent.h
linux/x86_64/syscallent.h

index f3731cb30579ba560a8edea020a35c75cbba0684..f3e7d194a211014a98495d93dd9ddc36191151c2 100644 (file)
 [279] = { 2,   TD,             SEN(memfd_create),              "memfd_create",         },
 [280] = { 3,   TD,             SEN(bpf),                       "bpf",                  },
 [281] = { 5,   TD|TF|TP|SE|SI, SEN(execveat),                  "execveat",             },
+[282] = { 1,   TD,             SEN(userfaultfd),               "userfaultfd",          },
+[283] = { 2,   0,              SEN(membarrier),                "membarrier",           },
+[284] = { 3,   TM,             SEN(mlock2),                    "mlock2"                },
 
 #undef ARCH_mmap
 #undef ARCH_WANT_SYNC_FILE_RANGE2
index 84c201a73b9ee579ed069a2a441e760e29db68a3..ec75d3cb833fef3fcfd15ab1ecd94a84e6c7ab12 100644 (file)
 [279] = { 2,   TD,             SEN(memfd_create),              "memfd_create",         },
 [280] = { 3,   TD,             SEN(bpf),                       "bpf",                  },
 [281] = { 5,   TD|TF|TP|SE|SI, SEN(execveat),                  "execveat",             },
+[282] = { 1,   TD,             SEN(userfaultfd),               "userfaultfd",          },
+[283] = { 2,   0,              SEN(membarrier),                "membarrier",           },
+[284] = { 3,   TM,             SEN(mlock2),                    "mlock2"                },
index d0b680fa53b2677bc3e46756831ce37fa2d6c3e1..47e119af6476e7b6cd1a19efaf5171ef95d20b23 100644 (file)
 [385] = { 2,   TD,             SEN(memfd_create),              "memfd_create",         },
 [386] = { 3,   TD,             SEN(bpf),                       "bpf",                  },
 [387] = { 5,   TD|TF|TP|SE|SI, SEN(execveat),                  "execveat",             },
-[388 ... 399] = { },
+[388] = { 1,   TD,             SEN(userfaultfd),               "userfaultfd",          },
+[389] = { 2,   0,              SEN(membarrier),                "membarrier",           },
+[390] = { 3,   TM,             SEN(mlock2),                    "mlock2"                },
+[391 ... 399] = { },
 
 #ifdef __ARM_EABI__
 # define ARM_FIRST_SHUFFLED_SYSCALL 400
index ca76d0af03ead5b079f3db549645becb10111b26..3a333ac34d57d2f7b073904a87178c02e3eef209 100644 (file)
 #define        sys_kcmp                printargs
 #define        sys_kexec_file_load     printargs
 #define        sys_lookup_dcookie      printargs
+#define        sys_membarrier          printargs
+#define        sys_mlock2              printargs
 #define        sys_name_to_handle_at   printargs
 #define        sys_open_by_handle_at   printargs
 #define        sys_sysfs               printargs
+#define        sys_userfaultfd         printargs
 #define        sys_vm86                printargs
 #define        sys_vm86old             printargs
 
index 4ef47b2cb27a9ac3987fc75e2f25ee94d8f6699e..10ba33e56e8789d2a27a73dcae705a1b32c4f5cd 100644 (file)
 [340] = { 2,   TD,             SEN(memfd_create),              "memfd_create",         },
 [341] = { 3,   TD,             SEN(bpf),                       "bpf",                  },
 [342] = { 5,   TD|TF|TP|SE|SI, SEN(execveat),                  "execveat",             },
+[343] = { 1,   TD,             SEN(userfaultfd),               "userfaultfd",          },
+[344] = { 2,   0,              SEN(membarrier),                "membarrier",           },
+[345] = { 3,   TM,             SEN(mlock2),                    "mlock2"                },
index 7817c44d388038036a70017ae775501c8b4c8923..1d9ad31afdade9f30c9481278b5556999606be04 100644 (file)
 [371] = { 6,   TN,             SEN(recvfrom),                  "recvfrom"              },
 [372] = { 3,   TN,             SEN(recvmsg),                   "recvmsg"               },
 [373] = { 2,   TN,             SEN(shutdown),                  "shutdown"              },
-[374 ... 399] = { },
+[374] = { 1,   TD,             SEN(userfaultfd),               "userfaultfd",          },
+[375] = { 2,   0,              SEN(membarrier),                "membarrier",           },
+[376] = { 3,   TM,             SEN(mlock2),                    "mlock2"                },
+[377 ... 399] = { },
 
 #define SYS_socket_subcall     400
 #include "subcall.h"
index b2b2fb9c840b2f95b9d3fc25c7f8cbab803c33cd..58fa3a27523af2884196a928115cdfef639d50a9 100644 (file)
 [1340] = { 2,  TD,             SEN(memfd_create),              "memfd_create",         },
 [1341] = { 3,  TD,             SEN(bpf),                       "bpf",                  },
 [1342] = { 5,  TD|TF|TP|SE|SI, SEN(execveat),                  "execveat",             },
+[1343] = { 1,  TD,             SEN(userfaultfd),               "userfaultfd",          },
+[1344] = { 2,  0,              SEN(membarrier),                "membarrier",           },
index 4e55d133d2715e93d6b2e13b427c4f2651a8a6e5..c1dcf7258bee27f2afb486dcb33ba5a5054845d7 100644 (file)
 [370] = { 2,   TN,             SEN(shutdown),                  "shutdown"              },
 [371] = { 5,   TN,             SEN(recvmmsg),                  "recvmmsg"              },
 [372] = { 4,   TN,             SEN(sendmmsg),                  "sendmmsg"              },
-[373 ... 399] = { },
+[373] = { 1,   TD,             SEN(userfaultfd),               "userfaultfd",          },
+[374] = { 2,   0,              SEN(membarrier),                "membarrier",           },
+[375] = { 3,   TM,             SEN(mlock2),                    "mlock2"                },
+[376 ... 399] = { },
 
 #define SYS_socket_subcall     400
 #include "subcall.h"
index 379e6cf09fe7057d41d104d3b116535af03666d6..1bdb8a702b8737a85445f9f931c81fb01ffa9153 100644 (file)
 [386] = { 2,   TD,             SEN(memfd_create),              "memfd_create",         },
 [387] = { 3,   TD,             SEN(bpf),                       "bpf",                  },
 [388] = { 5,   TD|TF|TP|SE|SI, SEN(execveat),                  "execveat",             },
+[389] = { 1,   TD,             SEN(userfaultfd),               "userfaultfd",          },
+[390] = { 2,   0,              SEN(membarrier),                "membarrier",           },
+[391] = { 3,   TM,             SEN(mlock2),                    "mlock2"                },
index ea3fb98158eed09dd2836d9a8f44bec1bf9f2353..ea53b22ced23f354495a2a3f55885960310a5d18 100644 (file)
 [6318] = { 2,  TD,             SEN(memfd_create),              "memfd_create",         },
 [6319] = { 3,  TD,             SEN(bpf),                       "bpf",                  },
 [6320] = { 5,  TD|TF|TP|SE|SI, SEN(execveat),                  "execveat",             },
-[6321 ... 6399] = { },
+[6321] = { 1,  TD,             SEN(userfaultfd),               "userfaultfd",          },
+[6322] = { 2,  0,              SEN(membarrier),                "membarrier",           },
+[6323] = { 3,  TM,             SEN(mlock2),                    "mlock2"                },
+[6324 ... 6399] = { },
 
 # define SYS_socket_subcall      6400
 # include "subcall.h"
index 1a7147ed6e9eb463f45a94525d4ceaa925bf0f04..47b1ba1ae1be4ac4b1290cd1b9fd9f54dc8adc7f 100644 (file)
 [5314] = { 2,  TD,             SEN(memfd_create),              "memfd_create",         },
 [5315] = { 3,  TD,             SEN(bpf),                       "bpf",                  },
 [5316] = { 5,  TD|TF|TP|SE|SI, SEN(execveat),                  "execveat",             },
-[5317 ... 5399] = { },
+[5317] = { 1,  TD,             SEN(userfaultfd),               "userfaultfd",          },
+[5318] = { 2,  0,              SEN(membarrier),                "membarrier",           },
+[5319] = { 3,  TM,             SEN(mlock2),                    "mlock2"                },
+[5320 ... 5399] = { },
 
 # define SYS_socket_subcall      5400
 # include "subcall.h"
index ef9752dfe3eb9b8a4c8fe0725fd3d8c00c5afa94..8045676a437eef78fa9690dd6e75951c77be8974 100644 (file)
 [4354] = { 2,  TD,             SEN(memfd_create),              "memfd_create",         },
 [4355] = { 3,  TD,             SEN(bpf),                       "bpf",                  },
 [4356] = { 5,  TD|TF|TP|SE|SI, SEN(execveat),                  "execveat",             },
-[4357 ... 4399] = { },
+[4357] = { 1,  TD,             SEN(userfaultfd),               "userfaultfd",          },
+[4358] = { 2,  0,              SEN(membarrier),                "membarrier",           },
+[4359] = { 3,  TM,             SEN(mlock2),                    "mlock2"                },
+[4360 ... 4399] = { },
 
 # define SYS_socket_subcall      4400
 # include "subcall.h"
index 2b7c02845dff0a48a2fa5f9732425475f86af891..1bc3f071bdd6ef48845767c28b1754b9a416be98 100644 (file)
 [361] = { 3,   TD,             SEN(bpf),                       "bpf",                  },
 [362] = { 5,   TD|TF|TP|SE|SI, SEN(execveat),                  "execveat",             },
 [363] = { 0,   0,              SEN(printargs),                 "switch_endian"         },
-[364 ... 399] = { },
+[364] = { 1,   TD,             SEN(userfaultfd),               "userfaultfd",          },
+[365] = { 2,   0,              SEN(membarrier),                "membarrier",           },
+[366 ... 399] = { },
 
 #define SYS_socket_subcall     400
 #include "subcall.h"
index 8e3a653c477d6803995cd4d502f7da500abf4059..925d92addf5d5ecd00bd7d031736ce24d30c58fa 100644 (file)
 [352] = { 3,   0,              SEN(printargs),                 "s390_pci_mmio_write",  },
 [353] = { 3,   0,              SEN(printargs),                 "s390_pci_mmio_read",   },
 [354] = { 5,   TD|TF|TP|SE|SI, SEN(execveat),                  "execveat",             },
-[355] = { 1,   0,              SEN(printargs),                 "userfaultfd",          },
-[356] = { 2,   0,              SEN(printargs),                 "membarrier",           },
+[355] = { 1,   TD,             SEN(userfaultfd),               "userfaultfd",          },
+[356] = { 2,   0,              SEN(membarrier),                "membarrier",           },
 [357] = { 5,   TN,             SEN(recvmmsg),                  "recvmmsg"              },
 [358] = { 4,   TN,             SEN(sendmmsg),                  "sendmmsg"              },
 [359] = { 3,   TN,             SEN(socket),                    "socket"                },
 [371] = { 6,   TN,             SEN(recvfrom),                  "recvfrom"              },
 [372] = { 3,   TN,             SEN(recvmsg),                   "recvmsg"               },
 [373] = { 2,   TN,             SEN(shutdown),                  "shutdown"              },
-[374 ... 399] = { },
+[374] = { 3,   TM,             SEN(mlock2),                    "mlock2"                },
+[375 ... 399] = { },
 
 #define SYS_socket_subcall     400
 #include "subcall.h"
index 9aab5b9e89a89f6c81e8850c22aa7e7232d77730..228f25bbb485a5ae3da9e2029976c368ae5815ec 100644 (file)
 [352] = { 3,   0,              SEN(printargs),                 "s390_pci_mmio_write",  },
 [353] = { 3,   0,              SEN(printargs),                 "s390_pci_mmio_read",   },
 [354] = { 5,   TD|TF|TP|SE|SI, SEN(execveat),                  "execveat",             },
-[355] = { 1,   0,              SEN(printargs),                 "userfaultfd",          },
-[356] = { 2,   0,              SEN(printargs),                 "membarrier",           },
+[355] = { 1,   TD,             SEN(userfaultfd),               "userfaultfd",          },
+[356] = { 2,   0,              SEN(membarrier),                "membarrier",           },
 [357] = { 5,   TN,             SEN(recvmmsg),                  "recvmmsg"              },
 [358] = { 4,   TN,             SEN(sendmmsg),                  "sendmmsg"              },
 [359] = { 3,   TN,             SEN(socket),                    "socket"                },
 [371] = { 6,   TN,             SEN(recvfrom),                  "recvfrom"              },
 [372] = { 3,   TN,             SEN(recvmsg),                   "recvmsg"               },
 [373] = { 2,   TN,             SEN(shutdown),                  "shutdown"              },
-[374 ... 399] = { },
+[374] = { 3,   TM,             SEN(mlock2),                    "mlock2"                },
+[375 ... 399] = { },
 
 #define SYS_socket_subcall     400
 #include "subcall.h"
index ea03930943024830fb3c5e50276ddc9277f605b2..01a10b3f2de64b2d187a3e25ab874945f6f964c7 100644 (file)
 [348] = { 2,   TD,             SEN(memfd_create),              "memfd_create",         },
 [349] = { 3,   TD,             SEN(bpf),                       "bpf",                  },
 [350] = { 5,   TD|TF|TP|SE|SI, SEN(execveat),                  "execveat",             },
-[351 ... 399] = { },
+[351] = { 2,   0,              SEN(membarrier),                "membarrier",           },
+[352] = { 1,   TD,             SEN(userfaultfd),               "userfaultfd",          },
+[353] = { 3,   TM,             SEN(mlock2),                    "mlock2"                },
+[354 ... 399] = { },
 
 #define SYS_socket_subcall     400
 #include "subcall.h"
index 7171b138bf2f42e7a8b6395b7ddac5d36dcb8a60..566f63fbfd0d2afa33b7adb505b3915cd2617340 100644 (file)
 [320] = { 5,   TD,             SEN(kexec_file_load),           "kexec_file_load",      },
 [321] = { 3,   TD,             SEN(bpf),                       "bpf",                  },
 [322] = { 5,   TD|TF|TP|SE|SI, SEN(printargs),                 "64:execveat",          },
-[323 ... 511] = { },
+[323] = { 1,   TD,             SEN(userfaultfd),               "userfaultfd",          },
+[324] = { 2,   0,              SEN(membarrier),                "membarrier",           },
+[325] = { 3,   TM,             SEN(mlock2),                    "mlock2"                },
+[326 ... 511] = { },
 /*
  * x32-specific system call numbers start at 512 to avoid cache impact
  * for native 64-bit operation.
index ebf135f3d610782ce2108a7efb6e2ac6f2cab45a..4d70b1752537065429f99303bb1bf9ce055e20ba 100644 (file)
 [320] = { 5,   TD,             SEN(kexec_file_load),           "kexec_file_load",      },
 [321] = { 3,   TD,             SEN(bpf),                       "bpf",                  },
 [322] = { 5,   TD|TF|TP|SE|SI, SEN(execveat),                  "execveat",             },
+[323] = { 1,   TD,             SEN(userfaultfd),               "userfaultfd",          },
+[324] = { 2,   0,              SEN(membarrier),                "membarrier",           },
+[325] = { 3,   TM,             SEN(mlock2),                    "mlock2"                },