summaryrefslogtreecommitdiffhomepage
path: root/runsc/boot/compat_amd64.go
diff options
context:
space:
mode:
authorFabricio Voznika <fvoznika@google.com>2020-05-18 10:21:43 -0700
committergVisor bot <gvisor-bot@google.com>2020-05-18 10:23:22 -0700
commit32ab382c80306d7dab499e983af2bfaea7770d1d (patch)
treeff9099d7b9ac0d590a6525583a200544d172661c /runsc/boot/compat_amd64.go
parentc27e334f260f6d1b2a380c8f105028a8140b7acd (diff)
Improve unsupported syscall message
PiperOrigin-RevId: 312104899
Diffstat (limited to 'runsc/boot/compat_amd64.go')
-rw-r--r--runsc/boot/compat_amd64.go22
1 files changed, 13 insertions, 9 deletions
diff --git a/runsc/boot/compat_amd64.go b/runsc/boot/compat_amd64.go
index 42b0ca8b0..8eb76b2ba 100644
--- a/runsc/boot/compat_amd64.go
+++ b/runsc/boot/compat_amd64.go
@@ -24,8 +24,12 @@ import (
"gvisor.dev/gvisor/pkg/sentry/strace"
)
-// reportLimit is the max number of events that should be reported per tracker.
-const reportLimit = 100
+const (
+ // reportLimit is the max number of events that should be reported per
+ // tracker.
+ reportLimit = 100
+ syscallLink = "https://gvisor.dev/c/linux/amd64"
+)
// newRegs create a empty Registers instance.
func newRegs() *rpb.Registers {
@@ -36,22 +40,22 @@ func newRegs() *rpb.Registers {
}
}
-func argVal(argIdx int, regs *rpb.Registers) uint32 {
+func argVal(argIdx int, regs *rpb.Registers) uint64 {
amd64Regs := regs.GetArch().(*rpb.Registers_Amd64).Amd64
switch argIdx {
case 0:
- return uint32(amd64Regs.Rdi)
+ return amd64Regs.Rdi
case 1:
- return uint32(amd64Regs.Rsi)
+ return amd64Regs.Rsi
case 2:
- return uint32(amd64Regs.Rdx)
+ return amd64Regs.Rdx
case 3:
- return uint32(amd64Regs.R10)
+ return amd64Regs.R10
case 4:
- return uint32(amd64Regs.R8)
+ return amd64Regs.R8
case 5:
- return uint32(amd64Regs.R9)
+ return amd64Regs.R9
}
panic(fmt.Sprintf("invalid syscall argument index %d", argIdx))
}