Preparing report...

Report for github.com/atmanos/atmanos

A+    Excellent!    Found 20 issues across 36 files

Tweet

gofmt97%

Gofmt formats Go programs. We run gofmt -s on your code, where -s is for the "simplify" command


go_vet100%

go vet examines Go source code and reports suspicious constructs, such as Printf calls whose arguments do not align with the format string.

No problems detected. Good job!


gocyclo100%

Gocyclo calculates cyclomatic complexities of functions in Go source code. The cyclomatic complexity of a function is calculated according to the following rules: 1 is the base complexity of a function +1 for each 'if', 'for', 'case', '&&' or '||' Go Report Card warns on functions with cyclomatic complexity > 15.

No problems detected. Good job!


golint44%

Golint is a linter for Go source code.

    • atmanos/src/syscall/syscall_atman.go
    • Line 17: warning: exported const EINVAL should have comment (or a comment on this block) or be unexported (golint)
    • Line 25: warning: exported const O_RDONLY should have comment (or a comment on this block) or be unexported (golint)
    • Line 36: warning: exported const EPOLLIN should have comment (or a comment on this block) or be unexported (golint)
    • Line 44: warning: exported var Stdin should have comment or be unexported (golint)
    • Line 49: warning: exported type Timespec should have comment or be unexported (golint)
    • Line 54: warning: exported type Timeval should have comment or be unexported (golint)
    • Line 59: warning: exported type SysProcAttr should have comment or be unexported (golint)
    • Line 61: warning: exported function Getenv should have comment or be unexported (golint)
    • Line 65: warning: exported function Setenv should have comment or be unexported (golint)
    • Line 69: warning: exported function Unsetenv should have comment or be unexported (golint)
    • Line 73: warning: exported function Environ should have comment or be unexported (golint)
    • Line 77: warning: exported function Clearenv should have comment or be unexported (golint)
    • Line 79: warning: exported function Getppid should have comment or be unexported (golint)
    • Line 81: warning: exported function Getpid should have comment or be unexported (golint)
    • Line 83: warning: exported function Getuid should have comment or be unexported (golint)
    • Line 84: warning: exported function Geteuid should have comment or be unexported (golint)
    • Line 85: warning: exported function Getgid should have comment or be unexported (golint)
    • Line 86: warning: exported function Getegid should have comment or be unexported (golint)
    • Line 87: warning: exported function Getgroups should have comment or be unexported (golint)
    • Line 89: warning: exported const ImplementsGetwd should have comment or be unexported (golint)
    • Line 91: warning: exported function Getwd should have comment or be unexported (golint)
    • Line 95: warning: exported function Chdir should have comment or be unexported (golint)
    • Line 99: warning: exported function Fchdir should have comment or be unexported (golint)
    • Line 103: warning: exported function Mkdir should have comment or be unexported (golint)
    • Line 107: warning: exported function Exit should have comment or be unexported (golint)
    • Line 130: warning: don't use underscores in Go names; type Stat_t should be StatT (golint)
    • Line 130: warning: exported type Stat_t should have comment or be unexported (golint)
    • atmanos/src/atman/xen/event_channel.go
    • Line 9: warning: exported type EventChannel should have comment or be unexported (golint)
    • Line 13: warning: exported function NewEventChannel should have comment or be unexported (golint)
    • Line 22: warning: exported method EventChannel.Notify should have comment or be unexported (golint)
    • Line 26: warning: exported method EventChannel.Wait should have comment or be unexported (golint)
    • atmanos/src/atman/xenstore/store.go
    • Line 82: warning: exported const MessageHeaderSize should have comment or be unexported (golint)
    • Line 84: warning: exported type MessageHeader should have comment or be unexported (golint)
    • Line 92: warning: exported const TypeDebug should have comment (or a comment on this block) or be unexported (golint)
    • Line 119: warning: exported const StateUnknown should have comment (or a comment on this block) or be unexported (golint)
    • Line 131: warning: exported const WatchPath should have comment (or a comment on this block) or be unexported (golint)
    • Line 135: warning: exported type Request should have comment or be unexported (golint)
    • Line 143: warning: exported function NewRequest should have comment or be unexported (golint)
    • Line 164: warning: exported method Request.WriteString should have comment or be unexported (golint)
    • Line 169: warning: exported method Request.WriteBytes should have comment or be unexported (golint)
    • Line 173: warning: exported method Request.WriteUint32 should have comment or be unexported (golint)
    • Line 177: warning: exported type Response should have comment or be unexported (golint)
    • Line 195: warning: exported method Response.Err should have comment or be unexported (golint)
    • Line 208: warning: exported method Response.ReadUint32 should have comment or be unexported (golint)
    • Line 222: warning: exported method Response.ReadBytes should have comment or be unexported (golint)
    • Line 243: warning: exported function Send should have comment or be unexported (golint)
    • Line 281: warning: exported function Read should have comment or be unexported (golint)
    • atmanos/src/atman/xenstore/transaction.go
    • Line 7: warning: exported type Transaction should have comment or be unexported (golint)
    • Line 12: warning: exported function TransactionStart should have comment or be unexported (golint)
    • Line 45: warning: exported method Transaction.ReadInt should have comment or be unexported (golint)
    • Line 63: warning: exported method Transaction.WriteInt should have comment or be unexported (golint)
    • Line 88: warning: exported method Transaction.Commit should have comment or be unexported (golint)
    • atmanos/src/runtime/sched_atman.go
    • Line 30: warning: exported type Task should have comment or be unexported (golint)
    • Line 182: warning: exported type TaskList should have comment or be unexported (golint)
    • Line 195: warning: comment on exported method TaskList.Add should be of the form "Add ..." (golint)
    • Line 209: warning: comment on exported method TaskList.Remove should be of the form "Remove ..." (golint)
    • Line 226: warning: exported method TaskList.AddByWakeAt should have comment or be unexported (golint)
    • atmanos/src/atman/xen/grant_table.go
    • Line 10: warning: exported const DOMID_SELF should have comment (or a comment on this block) or be unexported (golint)
    • Line 20: warning: exported type GrantTable should have comment or be unexported (golint)
    • Line 56: warning: exported method GrantTable.GrantAccess should have comment or be unexported (golint)
    • Line 75: warning: exported method GrantTable.EndAccess should have comment or be unexported (golint)
    • Line 119: warning: exported type Gref should have comment or be unexported (golint)
    • atmanos/src/runtime/console_atman.go
    • Line 8: warning: don't use underscores in Go names; var _atman_console should be _atmanConsole (golint)
    • Line 154: warning: don't use underscores in Go names; func syscall_WriteConsole should be syscallWriteConsole (golint)
    • atmanos/src/runtime/mm_atman.go
    • Line 10: warning: don't use underscores in Go names; var _atman_mm should be _atmanMm (golint)
    • Line 245: warning: don't use underscores in Go names; func mm_mapFrames should be mmMapFrames (golint)
    • Line 259: warning: don't use underscores in Go names; func mm_runtime_allocPage should be mmRuntimeAllocPage (golint)
    • atmanos/src/os/exec/lp_atman.go
    • Line 5: warning: exported var ErrNotSupported should have comment or be unexported (golint)
    • Line 7: warning: exported function LookPath should have comment or be unexported (golint)
    • atmanos/src/atman/xen/hypercall/hypercall.go
    • Line 5: warning: exported function HypercallRaw should have comment or be unexported (golint)
    • Line 8: warning: don't use underscores in Go names; const GNTTABOP_setup_table should be GNTTABOPSetupTable (golint)
    • Line 8: warning: exported const GNTTABOP_setup_table should have comment (or a comment on this block) or be unexported (golint)
    • Line 9: warning: don't use underscores in Go names; const GTF_permit_access should be GTFPermitAccess (golint)
    • Line 13: warning: don't use underscores in Go names; const GTF_readonly should be GTFReadonly (golint)
    • Line 13: warning: exported const GTF_readonly should have comment (or a comment on this block) or be unexported (golint)
    • Line 14: warning: don't use underscores in Go names; const GTF_reading should be GTFReading (golint)
    • Line 15: warning: don't use underscores in Go names; const GTF_writing should be GTFWriting (golint)
    • Line 18: warning: exported function GrantTableOp should have comment or be unexported (golint)
    • Line 19: warning: don't use underscores in Go names; const _grant_table_op should be _grantTableOp (golint)
    • Line 33: warning: don't use underscores in Go names; const EVTCHNOP_alloc_unbound should be EVTCHNOPAllocUnbound (golint)
    • Line 33: warning: exported const EVTCHNOP_alloc_unbound should have comment (or a comment on this block) or be unexported (golint)
    • Line 36: warning: exported function EventChannelOp should have comment or be unexported (golint)
    • Line 37: warning: don't use underscores in Go names; const _event_channel_op should be _eventChannelOp (golint)
    • atmanos/src/runtime/sys_atman.go
    • Line 13: warning: don't use underscores in Go names; var _atman_hypercall_page should be _atmanHypercallPage (golint)
    • Line 14: warning: don't use underscores in Go names; var _atman_shared_info_page should be _atmanSharedInfoPage (golint)
    • Line 16: warning: don't use underscores in Go names; var _atman_start_info should be _atmanStartInfo (golint)
    • Line 17: warning: don't use underscores in Go names; var _atman_shared_info should be _atmanSharedInfo (golint)
    • Line 19: warning: don't use underscores in Go names; var _atman_page_frame_list should be _atmanPageFrameList (golint)
    • Line 31: warning: don't use underscores in Go names; var _cgo_setenv should be _cgoSetenv (golint)
    • Line 32: warning: don't use underscores in Go names; var _cgo_unsetenv should be _cgoUnsetenv (golint)
    • Line 240: warning: exported const PTE_PAGE_FLAGS should have comment (or a comment on this block) or be unexported (golint)
    • atmanos/src/os/exec_atman.go
    • Line 5: warning: exported var Kill should have comment or be unexported (golint)
    • Line 31: warning: exported type ProcessState should have comment or be unexported (golint)
    • Line 33: warning: exported method ProcessState.Pid should have comment or be unexported (golint)
    • atmanos/src/os/file_atman.go
    • Line 5: warning: exported const DevNull should have comment or be unexported (golint)
    • Line 19: warning: exported function NewFile should have comment or be unexported (golint)
    • Line 26: warning: exported function OpenFile should have comment or be unexported (golint)
    • Line 30: warning: exported method File.Close should have comment or be unexported (golint)
    • Line 34: warning: exported method File.Stat should have comment or be unexported (golint)
    • Line 73: warning: exported function Stat should have comment or be unexported (golint)
    • Line 77: warning: exported function Lstat should have comment or be unexported (golint)
    • Line 81: warning: exported function Chmod should have comment or be unexported (golint)
    • Line 85: warning: exported function Remove should have comment or be unexported (golint)
    • Line 93: warning: exported function Readlink should have comment or be unexported (golint)
    • Line 97: warning: exported function TempDir should have comment or be unexported (golint)
    • atmanos/src/runtime/hypercall_atman.go
    • Line 8: warning: don't use underscores in Go names; func hypercall_HypercallRaw should be hypercallHypercallRaw (golint)
    • Line 12: warning: exported function HYPERVISOR_console_io should have comment or be unexported (golint)
    • Line 12: warning: don't use underscores in Go names; func HYPERVISOR_console_io should be HYPERVISORConsoleIo (golint)
    • Line 13: warning: don't use underscores in Go names; const _HYPERVISOR_console_io should be _HYPERVISORConsoleIo (golint)
    • Line 26: warning: exported function HYPERVISOR_event_channel_op should have comment or be unexported (golint)
    • Line 26: warning: don't use underscores in Go names; func HYPERVISOR_event_channel_op should be HYPERVISOREventChannelOp (golint)
    • Line 27: warning: don't use underscores in Go names; const _HYPERVISOR_event_channel_op should be _HYPERVISOREventChannelOp (golint)
    • Line 40: warning: exported function HYPERVISOR_update_va_mapping should have comment or be unexported (golint)
    • Line 40: warning: don't use underscores in Go names; func HYPERVISOR_update_va_mapping should be HYPERVISORUpdateVaMapping (golint)
    • Line 41: warning: don't use underscores in Go names; const _HYPERVISOR_update_va_mapping should be _HYPERVISORUpdateVaMapping (golint)
    • Line 59: warning: exported const DOMID_SELF should have comment or be unexported (golint)
    • Line 61: warning: exported function HYPERVISOR_mmu_update should have comment or be unexported (golint)
    • Line 61: warning: don't use underscores in Go names; func HYPERVISOR_mmu_update should be HYPERVISORMmuUpdate (golint)
    • Line 62: warning: don't use underscores in Go names; const _HYPERVISOR_mmu_update should be _HYPERVISORMmuUpdate (golint)
    • Line 82: warning: exported function HYPERVISOR_mmuext_op should have comment or be unexported (golint)
    • Line 82: warning: don't use underscores in Go names; func HYPERVISOR_mmuext_op should be HYPERVISORMmuextOp (golint)
    • Line 83: warning: don't use underscores in Go names; const _HYPERVISOR_mmuext_op should be _HYPERVISORMmuextOp (golint)
    • Line 96: warning: exported function HYPERVISOR_set_timer_op should have comment or be unexported (golint)
    • Line 96: warning: don't use underscores in Go names; func HYPERVISOR_set_timer_op should be HYPERVISORSetTimerOp (golint)
    • Line 97: warning: don't use underscores in Go names; const _HYPERVISOR_set_timer_op should be _HYPERVISORSetTimerOp (golint)
    • Line 110: warning: exported function HYPERVISOR_sched_op should have comment or be unexported (golint)
    • Line 110: warning: don't use underscores in Go names; func HYPERVISOR_sched_op should be HYPERVISORSchedOp (golint)
    • Line 111: warning: don't use underscores in Go names; const _HYPERVISOR_sched_op should be _HYPERVISORSchedOp (golint)
    • Line 124: warning: exported function HYPERVISOR_set_callbacks should have comment or be unexported (golint)
    • Line 124: warning: don't use underscores in Go names; func HYPERVISOR_set_callbacks should be HYPERVISORSetCallbacks (golint)
    • Line 125: warning: don't use underscores in Go names; const _HYPERVISOR_set_callbacks should be _HYPERVISORSetCallbacks (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign100%

IneffAssign detects ineffectual assignments in Go code.

No problems detected. Good job!


misspell100%

Misspell Finds commonly misspelled English words

No problems detected. Good job!