-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Open
Labels
area: filesystemIssue related to filesystemIssue related to filesystemtype: bugSomething isn't workingSomething isn't working
Description
Description
I am trying to move a file into directory mounted on the host with mountpoint and getting the following error:
root@ce843bdb8afa:/# mv r.txt test-mount/
mv: preserving times for 'test-mount/r.txt': Operation not permitted
This operation succeeds fine with runc
, and the issue seems to me to be that utimensat
is returning with operation not permitted on the file that is mounted.
Steps to reproduce
Application code moving the file:
import modal
from modal import Image, Secret, CloudBucketMount
app = modal.App("copy-example")
cuda_image = (
Image.debian_slim()
)
@app.function(
image=cuda_image,
volumes={
"/mnt/output": CloudBucketMount(
bucket_name="modal-s3mount-test-bucket",
secret=Secret.from_name("aws-secret", required_keys=["AWS_ACCESS_KEY_ID", "AWS_SECRET_ACCESS_KEY"]),
read_only=False
),
}
)
def move():
import shutil
temp_output = "/r.txt"
output_filename = "/mnt/output/output.txt"
with open(temp_output, "wb") as f:
shutil.move(temp_output, output_filename)
@app.local_entrypoint()
def main():
move.remote()
if __name__ == "__main__":
pass
runsc version
runsc version c5c74f4c90ac
spec: 1.1.0-rc.1
docker version (if using docker)
Docker version 27.3.1, build ce12230
uname
Linux ip-10-1-1-135.ec2.internal 6.11.0-0.el9ueknext.x86_64 #2 SMP PREEMPT_DYNAMIC Thu Oct 24 05:41:36 PDT 2024 x86_64 x86_64 x86_64 GNU/Linux
kubectl (if using Kubernetes)
repo state (if built from source)
No response
runsc debug logs (if available)
D0121 18:24:27.493213 1 usertrap_amd64.go:210] [ 5: 5] Found the pattern at ip 7eaebcb1a948:sysno 16
D0121 18:24:27.493226 1 usertrap_amd64.go:122] [ 5: 5] Allocate a new trap: 0xc000620480 26
D0121 18:24:27.493235 1 usertrap_amd64.go:223] [ 5: 5] Apply the binary patch addr 7eaebcb1a948 trap addr 60820 ([184 16 0 0 0 15 5] -> [255 36 37 32 8 6 0])
I0121 18:24:27.493247 1 strace.go:567] [ 5: 5] mv E ioctl(0x4 /test-mount/r.txt, 0x40049409, 0x3)
I0121 18:24:27.493258 1 strace.go:605] [ 5: 5] mv X ioctl(0x4 /test-mount/r.txt, 0x40049409, 0x3) = 0 (0x0) errno=25 (not a typewriter) (1.174µs)
D0121 18:24:27.493279 1 usertrap_amd64.go:210] [ 5: 5] Found the pattern at ip 7eaebcb18d37:sysno 221
D0121 18:24:27.493284 1 usertrap_amd64.go:122] [ 5: 5] Allocate a new trap: 0xc000620480 27
D0121 18:24:27.493289 1 usertrap_amd64.go:223] [ 5: 5] Apply the binary patch addr 7eaebcb18d37 trap addr 60870 ([184 221 0 0 0 15 5] -> [255 36 37 112 8 6 0])
I0121 18:24:27.493353 1 strace.go:570] [ 5: 5] mv E fadvise64(0x3 /r.txt, 0x0, 0x0, 0x2)
I0121 18:24:27.493363 1 strace.go:608] [ 5: 5] mv X fadvise64(0x3 /r.txt, 0x0, 0x0, 0x2) = 0 (0x0) (556ns)
D0121 18:24:27.493435 1 usertrap_amd64.go:210] [ 5: 5] Found the pattern at ip 7eaebcb1ea20:sysno 9
D0121 18:24:27.493443 1 usertrap_amd64.go:122] [ 5: 5] Allocate a new trap: 0xc000620480 28
D0121 18:24:27.493449 1 usertrap_amd64.go:223] [ 5: 5] Apply the binary patch addr 7eaebcb1ea20 trap addr 608c0 ([184 9 0 0 0 15 5] -> [255 36 37 192 8 6 0])
I0121 18:24:27.493498 1 strace.go:576] [ 5: 5] mv E mmap(0x0, 0x22000, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0xffffffffffffffff (bad FD), 0x0)
I0121 18:24:27.493540 1 strace.go:614] [ 5: 5] mv X mmap(0x0, 0x22000, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0xffffffffffffffff (bad FD), 0x0) = 139288957579264 (0x7eaebcd67000) (28.022µs)
I0121 18:24:27.493626 1 strace.go:567] [ 5: 5] mv E read(0x3 /r.txt, 0x7eaebcd68000, 0x20000)
I0121 18:24:27.493647 1 strace.go:605] [ 5: 5] mv X read(0x3 /r.txt, , 0x20000) = 0 (0x0) (11.717µs)
D0121 18:24:27.493664 1 usertrap_amd64.go:210] [ 5: 5] Found the pattern at ip 7eaebcb19277:sysno 280
D0121 18:24:27.493672 1 usertrap_amd64.go:122] [ 5: 5] Allocate a new trap: 0xc000620480 29
D0121 18:24:27.493678 1 usertrap_amd64.go:223] [ 5: 5] Apply the binary patch addr 7eaebcb19277 trap addr 60910 ([184 24 1 0 0 15 5] -> [255 36 37 16 9 6 0])
I0121 18:24:27.493689 1 strace.go:570] [ 5: 5] mv E utimensat(0x4 /test-mount/r.txt, <null>, 0x7ec711a98c30 {sec=1737483855 nsec=71940244}, 0x0)
I0121 18:24:27.504782 1 strace.go:608] [ 5: 5] mv X utimensat(0x4 /test-mount/r.txt, <null>, 0x7ec711a98c30 {sec=1737483855 nsec=71940244}, 0x0) = 0 (0x0) errno=1 (operation not permitted) (11.080018ms)
Metadata
Metadata
Assignees
Labels
area: filesystemIssue related to filesystemIssue related to filesystemtype: bugSomething isn't workingSomething isn't working