|
@@ -272,3 +272,16 @@ func SyncFileRange(fd int, off int64, n int64, flags int) error {
|
|
|
// order of their arguments.
|
|
// order of their arguments.
|
|
|
return armSyncFileRange(fd, flags, off, n)
|
|
return armSyncFileRange(fd, flags, off, n)
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
|
|
|
|
|
+
|
|
|
|
|
+func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error {
|
|
|
|
|
+ cmdlineLen := len(cmdline)
|
|
|
|
|
+ if cmdlineLen > 0 {
|
|
|
|
|
+ // Account for the additional NULL byte added by
|
|
|
|
|
+ // BytePtrFromString in kexecFileLoad. The kexec_file_load
|
|
|
|
|
+ // syscall expects a NULL-terminated string.
|
|
|
|
|
+ cmdlineLen++
|
|
|
|
|
+ }
|
|
|
|
|
+ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags)
|
|
|
|
|
+}
|