unix: add IoctlLoopConfigure on linux

LOOP_CONFIGURE ioctl is used to setup and configure all loop device
parameters in a single step.
Add to the unix package a new function that exposes LOOP_CONFIGURE.

Fixes golang/go#63962

Change-Id: Ia169d268b52b1384febc6bff9c707b721ab2bb24
GitHub-Last-Rev: f9cc4c94cb654afd596df6e28a0d0a1bf60d15eb
GitHub-Pull-Request: golang/sys#181
Reviewed-on: https://go-review.googlesource.com/c/sys/+/540075
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: David Chase <drchase@google.com>
Reviewed-by: Tobias Klauser <tobias.klauser@gmail.com>
Auto-Submit: Tobias Klauser <tobias.klauser@gmail.com>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
This commit is contained in:
Alexandru Matei
2023-11-18 01:08:36 +00:00
committed by Gopher Robot
parent 11eadc05e9
commit 13b15b780d
5 changed files with 14 additions and 0 deletions
+5
View File
@@ -231,3 +231,8 @@ func IoctlLoopGetStatus64(fd int) (*LoopInfo64, error) {
func IoctlLoopSetStatus64(fd int, value *LoopInfo64) error {
return ioctlPtr(fd, LOOP_SET_STATUS64, unsafe.Pointer(value))
}
// IoctlLoopConfigure configures all loop device parameters in a single step
func IoctlLoopConfigure(fd int, value *LoopConfig) error {
return ioctlPtr(fd, LOOP_CONFIGURE, unsafe.Pointer(value))
}