Operating System - HP-UX
1831645 Members
2063 Online
110029 Solutions
New Discussion

Re: error executing adb command on HPUX11i 64 bit

 
SOLVED
Go to solution
Pilar Serna
New Member

error executing adb command on HPUX11i 64 bit

Hi,
When I try to execute the command on HPUX11i 64bit platform in order to print the names and values of external variables as follow:

# adb -k -w /stand/vmunix /dev/kmem > /tmp/file
$e
$q

The following error message appear:
" data address not found "

Could you please help me.
Many Thanks
12 REPLIES 12
Dagmar Boelen
Frequent Advisor

Re: error executing adb command on HPUX11i 64 bit

you should use adb64 instead of adb.
Massimo Bianchi
Honored Contributor

Re: error executing adb command on HPUX11i 64 bit

Hi,
check this link for your error, looks like a typo !



http://forums.itrc.hp.com/cm/QuestionAnswer/1,,0xba5a28c64656d71190080090279cd0f9,00.html


Massimo
Dagmar Boelen
Frequent Advisor

Re: error executing adb command on HPUX11i 64 bit

Hi,

Check this link.

http://www.tek-tips.com/gfaqs.cfm/pid/51/fid/1184

You provides lots of examples using adb64 (not adb!!!!) on 64-bit platform.

regards,

D.
Pete Randall
Outstanding Contributor

Re: error executing adb command on HPUX11i 64 bit

First off, from "man adb":

"adb calls adb64 to process 64 bit files."

so that's not a problem.

Secondly, I cut and pasted the command as shown and it works fine, so where is this typo?


Pete



Pete
Massimo Bianchi
Honored Contributor

Re: error executing adb command on HPUX11i 64 bit

Hi Pete,
the command worked also for me.

Searching for a smilir error in the forum lead to this consenquence: in that thread was a typo, maybe a second try will work also for him/her

Massimo
Pilar Serna
New Member

Re: error executing adb command on HPUX11i 64 bit

Thanks to everyone for your help.

I've tried to run the command several times using adb ( or adb64 ) on HPUX11i 64 bit platform in different servers and still give me the same message everytime I type " $e" but it's working fine on HPUX11.00 64bit platform.

Do you know if I need to setup or export any path/libraries in order to get all the external variables?

Cheers,
Pilar
James Murtagh
Honored Contributor

Re: error executing adb command on HPUX11i 64 bit

Hi Pilar,

Its good to see you on the forums!

What this is saying is a global variable is not in memory. What I did to check which one was the following, rather ugly loop:

# for i in $(nm /stand/vmunix|egrep "\..*data\||bss"|awk -F"|" '{print $8}'|egrep -v '\$|.data|.rodata|.sdata')
do
echo $i/D|adb -k /stand/vmunix /dev/kmem >>/tmp/adb.out 2>&1
done

Checking the output showed the variable topIcs gave the error. This was found in the following libraries:

libinit-pdk.a[locore.o]
libinit-pdk.a[boot_machdep.o]
libkgdb-pdk.a[kgdb_system_console.o]

No idea what it is, possibly related to the Interrupt Control Stack. In any case I did a quick check and it appears your adb command still outputs the rest of the symbols.

You can check this is the same on your server, just beware this loop is a CPU killer, although I'm pretty sure this is a test box you are on.

Regards,

James.
Pilar Serna
New Member

Re: error executing adb command on HPUX11i 64 bit

Hello James,
It is very nice to hear from you.
I try to test if we are suffering from wakeup issue on HP-UX 11i 64bit with KAIO up and running. There is a kernel variable called "_ncolls" which maintains a count of the number of times selwakeup() is called with the collision (global) flag set, this can be easily pulled from the kernel using the adb:

echo "_ncolls/D" | adb -k /stand/vmunix /dev/kmem

When I run this command on HPUX 11i the follow message appear:
"symbol not found"

I don't know if this kernel variable "_ncolls" is available for HPUX11i. For that reason I ran the "$e" variable in order to get all external variables and it's when the error "data address not found" appear. It's true I can get many external variables even with the output error but not the required one.
Could you please let me know if "_ncolls" variable is available for HPUX11i or have been replaced for another one and if you know any way to fix the output error when $e is executed under adb command?

Many thanks in advance,
Pila
James Murtagh
Honored Contributor

Re: error executing adb command on HPUX11i 64 bit

Hi Pila,

Oh I see, I did wonder why you were doing that! :-)

I can't find that symbol on my 11i boxes, so I guess its been replaced, unfortunately I don't have access to an 11.00 box at the moment. I'll need to do a bit more digging though. Can you run the following command for me on an 11.00 server from /usr/conf/lib :

# nm -A *|grep -i ncolls

I don't think the message you are seeing using the adb command is stopping it, so I think you are getting all the symbols. I ran a check and the adb and nm outputs seemed to match up even though I got the warning too.

Regards,

James.


Pilar Serna
New Member

Re: error executing adb command on HPUX11i 64 bit

James,

The output of running "nm -A *|grep ncolls" under /usr/conf/lib directory is:

[52] | 4 | 4|OBJT |GLOB |0| ANSI CO | libhp-ux.a[sys_gen.o]:_ncolls

I hope this can help you.
Cheers,
Pilar
James Murtagh
Honored Contributor
Solution

Re: error executing adb command on HPUX11i 64 bit

Hi Pilar,

Sorry for the delay in getting back to you.

The code for select was completely re-written for 11i to try and stop the "thundering herd" syndrome I think you experienced on 11.00, where all threads waiting on a select are suddenly awakened even if they are not waiting on the resource freed. It also tries to minimise spinlock contention.

The _ncolls counter is not implemented in 11i, or can I see a similar one. I don't whether this is due to the above re-write being so successfull. The select collisions are now held in a per processor structure, per_processor_selects. However, I cannot at this time pull this imformation in a sensible format out of the kernel, even using q4. Its seems from this view it is implemented as a base address to an array which is difficult to read. I also cannot find a way to check this through a system call or tools like glance. I've checked some recent bsd/linux code and while something similar to _ncolls was implemented before I don't see it now.

If you want to check all the functions, symbols relating to select, you can few the object symbol table:

# cd /usr/conf/lib
# ar -x libfs.a select.o
# nm select.o

This is a patch on 11i for select and poll hangs, PHKL_25233, I would check this out. If you think the problem is in this area I would raise a call with HP to get an authorative answer to the missing kernel counter, otherwise maybe describe the performance problems you are facing - it may be another issue?

Cheers,

James.
Pilar Serna
New Member

Re: error executing adb command on HPUX11i 64 bit

James,
Many thanks for your answer, it's good enough for me.
I was suffered performance issues on UX11.00 with KAIO active on few servers.For that reason, I just wanted to check that it's no happen with HP-UX11i with KAIO in. At the moment everything is look ok and no action need to be taken.

Cheers,
Pilar