containerd / continuity

A transport-agnostic, filesystem metadata manifest system
https://containerd.io
Apache License 2.0
141 stars 67 forks source link

fs: don't convert syscall.Timespec to unix.Timespec directly #148

Closed zhsj closed 4 years ago

zhsj commented 4 years ago

This doesn't work with gccgo.

vendor/github.com/containerd/continuity/fs/copy_linux.go:54:43: error: invalid type conversion (cannot use type syscall.Timespec as type unix.Timespec)
   54 |  timespec := []unix.Timespec{unix.Timespec(StatAtime(st)), unix.Timespec(StatMtime(st))}
      |                                           ^
vendor/github.com/containerd/continuity/fs/copy_linux.go:54:73: error: invalid type conversion (cannot use type syscall.Timespec as type unix.Timespec)
   54 |  timespec := []unix.Timespec{unix.Timespec(StatAtime(st)), unix.Timespec(StatMtime(st))}
      |                                                                         ^

Instead, using an int64 nanosec variable as the bridge.