From 6c11da28809b6af444ff8920582f372e2a550367 Mon Sep 17 00:00:00 2001 From: Tonis Tiigi Date: Fri, 30 Jun 2017 15:33:08 -0700 Subject: [PATCH] fs: fix hardlinks detection on usage calc Signed-off-by: Tonis Tiigi --- fs/du_unix.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/fs/du_unix.go b/fs/du_unix.go index 3d0af20e6..d8654d32f 100644 --- a/fs/du_unix.go +++ b/fs/du_unix.go @@ -27,8 +27,13 @@ func diskUsage(roots ...string) (Usage, error) { } stat := fi.Sys().(*syscall.Stat_t) - inodes[inode{dev: uint64(stat.Dev), ino: uint64(stat.Ino)}] = struct{}{} - size += fi.Size() + + inoKey := inode{dev: uint64(stat.Dev), ino: uint64(stat.Ino)} + if _, ok := inodes[inoKey]; !ok { + inodes[inoKey] = struct{}{} + size += fi.Size() + } + return nil }); err != nil { return Usage{}, err