Commit Graph

212 Commits (43566581f00d5cd84a0ccab1d80e83d3abf050ac)

Author SHA1 Message Date
Matthieu MOREL b673968d5d
enable errorlint linter 3 years ago
shirou 4c3edcfe56 [mac] fix deprecated code in macOS Monterey 3 years ago
shirou d2e27c1712 fix dependabot v2 deletion. 3 years ago
shirou 0969c9436b delete v2 directory, move v3 to top #1078 3 years ago
shirou b39f8bb90e
[v2][disk][linux] apply DiskPartiton change to v2 4 years ago
Guillaume Ballet 992d17af94 add support for OpenBSD arm64 4 years ago
shirou 1f733a99dc [disk] move without context functions to disk.go. 4 years ago
shirou fb1c75054a [disk] Partition returns all list even if argument is False.
According to https://github.com/giampaolo/psutil/issues/906,
all BSD system returns same information `df` and `df -a`.
4 years ago
Lomanic 32d4603d01 [disk][darwin] fix build with latest golang.org/x/sys/unix
Fixes #958
4 years ago
shirou b94f262e7d
Merge pull request #949 from boogie-byte/vet-target
Add "vet" target to the Makefile
4 years ago
Sergey Vinogradov 8ff2ab3187 Add "vet" target to the Makefile
Making the "vet" target will run "go vet ./..." for each supported
GOOS.

Also, some of the warnings produced by go 1.15 vet were mitigated.
4 years ago
Aman Karmani 23d63601d1 [disk][linux] flag bind mounts 5 years ago
Lomanic 4cfc60d68b
Merge pull request #928 from Lomanic/skip-tests-when-not-implemented 5 years ago
Lomanic 84afaae670 [host][mem][process][openbsd] Add 386 const and types definitions
Continuation of #721, this type using mktypes.sh that I didn't know at the time.
Weirdly, `go tool cgo -godefs` doesn't produce propery go-fmt-ed code, had to do run go-fmt manually afterwards.
5 years ago
Lomanic b7781f5858 [disk] Skip tests on non-implemented platforms #446 5 years ago
Tobias Klauser d5eecd689d Fix FreeBSD build with latest x/sys/unix
There was a breaking change in upstream golang.org/x/sys/unix which
changed the type of some Statvfs members, see #853. As it looks like
this change won't be reverted, adjust gopsutil to work with it and allow
to build against the latest version of x/sys/unix.
5 years ago
Lomanic 5aca383d4f [disk][darwin][cgo] Rename C files dependencies to more descriptive names 5 years ago
Lomanic f98100720e [process][windows] Fix #846 use win32 API in disk.IOCounters() instead of slow WMI call returning wrong values 5 years ago
shirou dce23de000
Merge pull request #819 from devopsext/disk-fix_2.19.11
Fix for track disk stats when running in container
5 years ago
Ilya Prudnikov 256e00319e implement proposed solution 5 years ago
Ilya Prudnikov 7277cdf050 Fix for track disk stats when running in container 5 years ago
shirou bcf28f0c37
Merge pull request #812 from tklauser/darwin-getfsstat
Use Getfsstat from golang.org/x/sys/unix on Darwin
5 years ago
Tobias Klauser 7f9e55b000 Use Getfsstat from golang.org/x/sys/unix on OpenBSD
Use the syscall wrapper and types from golang.org/x/sys/unix instead of
implementing them locally.

Also remove unused generated types and consts.

Follow-up for #810 and #812
5 years ago
Tobias Klauser 422c4f61a1 Use Getfsstat from golang.org/x/sys/unix on Darwin
Starting with Go 1.12, direct syscalls on darwin are no longer
supported. Instead, libSystem is used when making syscalls. See
https://golang.org/doc/go1.12#darwin

In order to still support Getfsstat, use the syscall wrapper and types
from golang.org/x/sys/unix which uses the correct syscall method
depending on the Go version.

Also use the correct MNT_* consts and their respective strings according
to the mount(8) manpage.

Follow-up for #810
5 years ago
Tobias Klauser 6aae71ca26 Use Getstatfs from golang.org/x/sys/unix for 64-bit inode support on FreeBSD 12
Use unix.Getstatfs and its associated Statfs_t type instead of
implementing them locally in this package. This allows to use 64-bit
inode fields on FreeBSD 12 while still keeping backwards compatibility
for old FreeBSD versions, as unix.Getfsstat will use the correct syscall
number and data structure version and convert its result
correspondingly.

Also see https://golang.org/cl/136816 for details.
5 years ago
Tobias Klauser 4d6c82fb03 Add missing OpenBSD mount option strings
Add missing mount option string decoding according to the OpenBSD
mount(8) manpage: https://man.openbsd.org/mount
5 years ago
Tobias Klauser 10cdcee035 Fix typos in FreeBSD mount option strings
Fix typos in FreeBSD mount option strings so they match the values given
in the mount(8) manpage: https://www.freebsd.org/cgi/man.cgi?mount(8)
5 years ago
Tobias Klauser 214c5bdb50 Use MNT_* consts from golang.org/x/sys/unix on freebsd and openbsd
Update vendored version of golang.org/x/sys/unix and use the MNT_*
constants there to replace the locally generated ones.
5 years ago
Dmitri Goutnik 270f6afc22
Add support for freebsd/arm64 5 years ago
Lomanic e4ec7b275a [disk][linux] Fix #555 for kernels >=2.6.26 6 years ago
Lomanic dc5a4756c9 [disk][darwin] Fix #560 using github.com/lufia/iostat cgo implementation 6 years ago
Aman Gupta 74d3cea10f Proper fix for unavailable /proc/filesystems 6 years ago
John Floren 93e08ea089 Fixes a problem when using Docker on a host with an encrypted LLVM root. A docker container with a volume mounted from the host will see /dev/mapper in its mount info file, but will not be able to read it. 6 years ago
eshimizu 91b1c81467
Update disk_linux.go 6 years ago
Aman Gupta 34b030b41c
Ignore getFileSystems errors when requesting all partitions 6 years ago
Aman Gupta ea0f864aef ignore /proc/filesystems errors on android 6 years ago
Simon Frei fb73f7095e Revert "[disk][openbsd] Use fallback for openBSD not on amd64"
This reverts commit 3aa75af2ac.
6 years ago
shirou 47ef3260b6
Merge pull request #720 from imsodin/diskOpenBSDFallback
[disk][openbsd] Use fallback for openBSD not on amd64
6 years ago
Lomanic 8abc5387a0 [disk][openbsd] Add 386 const and types definitions 6 years ago
Simon Frei 3aa75af2ac [disk][openbsd] Use fallback for openBSD not on amd64 6 years ago
Tony Lambiris 80ceab90aa
Add support for hfsplus file system 6 years ago
Lomanic d7405fd873 [disk][linux] Follow symlinks with filepath.EvalSymlinks for LVM volumes
See #686
6 years ago
Tony Lambiris 8037dc42c8
Add a check for logical volume paths 6 years ago
shirou b2eb6640fb [disk][windows]: does not define ret at begining of the function.
To reduce memory when error happend. commented on #653.
6 years ago
mingrammer 017c9f9cbc Fix typos 6 years ago
Lomanic 368a865910 [disk][linux] Fix comment in PartitionsWithContext 6 years ago
Lomanic 0d3a2ac515
[disk][linux] Fix comment in PartitionsWithContext 6 years ago
JHE a08b926ce6 It could be another error than the "self/mountinfo" missing 6 years ago
JHE 06a21ae66a Fix some issue. 6 years ago
JHE a5cb715e64 if mountinfo not found, use mounts 6 years ago
JHE d141349619 if mountinfo not found, use mounts 6 years ago
JHE a45f6d8a03 if mountinfo not found, use mounts 6 years ago
shirou 0714469421
Merge pull request #593 from nvinzens/master
replace self/mounts with self/mountinfo
6 years ago
shirou 64d607539e add FreeBSD ARM support. copied from i386 6 years ago
Nico Vinzens 1a7a39a789
Merge branch 'master' into master 6 years ago
Remy Mathieu fda98ebc34 disk: trim the device mapper name.
While reading the value of the file with `ioutil.ReadFile`,
the name is suffixed with a `\n`

Tested on Ubuntu 18.10
6 years ago
shirou 852c7686b5
Merge pull request #613 from tmm1/allow-a-b-windows-drives
do not ignore A: and B: drives on windows
6 years ago
Aman Gupta d021425af3 do not ignore A: and B: drives on windows
from https://www.howtogeek.com/122891/what-are-the-windows-a-and-b-drives-used-for/

>if your computer does not have floppy disk drives, you can assign A and B to volumes
6 years ago
Aman Gupta ab57d4a5fe fix minor typo in disk_windows 6 years ago
Lomanic 8888537497 [disk][linux] Fix #555 Unescape escaped sequences in fstab path in disk.Partitions 6 years ago
Nico Vinzens 1079f31626 change the way we handle the mountinfo lines 7 years ago
Nico Vinzens 23dfe98621 use HostSys to construct device path 7 years ago
Nico Vinzens 813c630e9c replace self/mounts with self/mountinfo 7 years ago
shirou 8048a2e9c5 [disk] add an comment. 7 years ago
Tomasz Kolodziej 8e2d09ee63 Removed unnecessary line 7 years ago
Tomasz Kolodziej 573f3336a4 Fixing calculation of UsedPercent.
Now it is calculated based of available disk space for user,
not including reserved space for root. This is compatible
with psutil and df command.
7 years ago
Lomanic 00bbeb757e [disk][unix] Fix #555 Unescape escaped sequences in fstab path in disk.Usage 7 years ago
Jaime Soriano Pastor 61902bc2a5 Use HOST_* environment variables for getting disk serial number in Linux 7 years ago
shirou 8563278a9d Revert "Merge pull request #541 from sify21/fix_435"
This reverts commit a9c2f23bc2, reversing
changes made to ebfe800cf9.
7 years ago
司芳源 1b641b25eb not export custom types 7 years ago
司芳源 98cd971621 wrong variable 7 years ago
司芳源 facd46a4a5 Implement disk.GetDiskSerialNumber for Windows via WMI. Parameter should be drive letter, so it can be used in IOCountersStat. See last part of https://msdn.microsoft.com/en-us/library/windows/desktop/aa394592(v=vs.85).aspx. 7 years ago
Michal Rostecki ff2e736f72 disk: Check for error objects returned by Getfsstat 7 years ago
shirou d813235a11 disk[linux]: cast uint64 for build on MIPS
related: #533
7 years ago
Jaime Soriano Pastor f03124bf86 Read disk model and serial from udev data or sysfs on Linux
It reads model and serial data directly from files instead of using
`udevadm` command. This way obtaining the disk serial number doesn't
depend on command execution, and can be also possible even if udev or
udevadm are not available.
7 years ago
shirou 57f370e130 [disk]linux: fix test 7 years ago
shirou 6a55ce0958 [disk]linux: fix Getlabel 7 years ago
Ofek Lev 0f8edaa97e address review 7 years ago
Ofek Lev 35ed9c11c7 [disk][linux] add label based on devicemapper name of disk 7 years ago
shirou 145dca90f7 change to use CommandContext. 7 years ago
shirou 837fc76f68 [disk] darwin i386: add definition for darwin/386
and change to use Statfs. it is same as freebsd/openbsd.
7 years ago
Laurie Clark-Michalek 413cb32b6c Use static initialisation for invoke instances, instead of init funcs
The order of init function execution is dependant on the order that the
source files are passed to the compiler. This causes issues when
building under other build systems, such as bazel or buck, as they are
not guarenteed to maintain the same file order as the default go tool.
7 years ago
sada 8dd42707e2 windows: fix WithContext functions
set timeout only if parent context doesn't set.
7 years ago
shirou cd61c36c4f
Merge branch 'master' into feature/add_context_support 7 years ago
shirou 756e91c8f5 [disk]linux: use basename such as sda1 for IOCounters 7 years ago
shirou 4c73494c78 Add WithContext functions. 7 years ago
leaf 65598d98cc To prevent hang if wmi.Query hangs, add a context-aware wrapper for it. 7 years ago
Marco Pfatschbacher d62768abc9 Fix IOCounters for OpenBSD
Use SysctlRaw instead of Sysctl.
The latter assumes NUL terminated strings
which returns the lenght off by one.
Therefore, only n-1 disks where reported.
7 years ago
WAKAYAMA Shirou 114c78c777 [host]: add not implemented methods. 8 years ago
James Nugent 95e4816cce disk: Remove -mmacosx-version-min from darwin+cgo
The presence of the -mmacosx-version-min flag in disk_darwin_cgo.go
makes it impossible to build the other cgo components on modern Mac OS X
(10.12), since the object files with which they must link are not built
with that flag. Errors present from Go Tip (1.9, effectively) in the
form:

ld: warning: object file (whatever.o) was built for newer OSX version
(10.12) than being linked (10.10)

This commit removes the minimum version flag, instead targeting the
version of OS X on which a binary is compiled as the minimum. Without
this, I believe (though have not verified it actually works) that the
only way to build without without warnings/undefined behaviour if the OS
X 10.10 headers and objects are installed and configured correctly.
8 years ago
WAKAYAMA Shirou 66b0ca3121 [disk] Add comment to disk.Usage(). 8 years ago
Sean Chittenden 635b971c0e
Move from the `syscall` package to the `golang.org/x/sys/{unix,windows}` 8 years ago
Aman Gupta a08587b348 Update disk_linux.go 8 years ago
Aman Gupta e346d3829a remove obsolete comment 8 years ago
Aman Gupta 5e1770d1f2 read disk partitions on linux from /proc/mounts intead of /etc/mtab 8 years ago
shirou 37c114fe6c Merge pull request #366 from tmm1/patch-2
Ignore GetVolumeInformation errors on DRIVE_REMOVABLE volumes
8 years ago
Aman Gupta f2cbbac707 Ignore GetVolumeInformation errors on DRIVE_REMOVABLE volumes 8 years ago
Aman Gupta b59c2a2be3 Include "DRIVE_REMOTE" volumes on windows 8 years ago
Daniel Nelson 3830ed16b4
Make IOCounters a variadic function
Remove IOCountersForNames that was recently added in favor of variadic
function with same capabilities.
8 years ago
WAKAYAMA Shirou dfbb3e40da fix build bugs. 8 years ago