2

On a Solaris 10 box, I am getting errors from lsof:

can't read vnode at 0x7d900000000
can't read vnode at 0x7b

But I have the same lsof binary in another similar Solaris 10 box where it doesn't give the same error.

On that other box, lsof successfully lists the open files information.

Has anybody else encountered the same problem and has been able to resolve it?

Snippet from full output:

$ lsof
lsof: WARNING: compiled for Solaris release 5.9; this is 5.10.
COMMAND     PID     USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
(unknown)     1     root  cwd                             can't read vnode at 0x7d900000000
(unknown)     1     root  rtd                             can't read vnode at 0x7b
(unknown)     9     root  cwd                             can't read vnode at 0x7d900000000
....

Output of isainfo -kv and file:

$ isainfo -kv
64-bit sparcv9 kernel modules
$ file `which lsof`
/usr/local/bin/lsof:    ELF 32-bit MSB executable SPARC Version 1, dynamically linked, stripped

Output of uname -a on the server where lsof works:

$ uname -a
SunOS server009 5.10 Generic_150400-26 sun4u sparc SUNW,SPARC-Enterprise

Output of uname -a on the server where lsof doesn't work:

$ uname -a
SunOS server043 5.10 Generic_150400-12 sun4u sparc SUNW,Sun-Fire-V890
user55570
  • 458
  • 6
  • 18

1 Answers1

2

lsof: WARNING: compiled for Solaris release 5.9; this is 5.10.

That sounds suspiciously like lsof tells you that it is broken and you need to rebuild the lsof binary from source (or in other words: upgrade ) to reliably work with your current Solaris version.

If that is not an option, this answer might help you work around the issue.

HBruijn
  • 77,029
  • 24
  • 135
  • 201
  • The same binary does work on another machine. I'll review that other page you cited. There maybe something useful there. – user55570 Sep 08 '15 at 05:28
  • 1
    Post the output of `uname -a` from both servers. Not all versions of Solaris 10 are the same. And even if they are the same, file systems can differ - Solaris 9 didn't have ZFS, for example, so I suspect an `lsof` binary from Solaris 9 might have problems on Solaris 10, especially with ZFS. – Andrew Henle Sep 08 '15 at 21:52
  • i added the output of `uname -a`. Both systems do not have ZFS. Their is a slight difference in patch level but would that account for it? – user55570 Sep 09 '15 at 11:27
  • 1
    It's not likely the patch level as the later machine is the one that works. It could be hardware - the servers are different. It could also be the environment. But given it's an out-of-date version of `lsof`, the first thing I'd recommend doing is an update of `lsof`. – Andrew Henle Sep 10 '15 at 10:16
  • is there a place where i can get a binary for solaris 10 version of lsof? – user55570 Sep 11 '15 at 11:46