----- "Nathan Scott" <nathans@xxxxxxxxxx> wrote:
> ----- "Ken McDonell" <kenj@xxxxxxxxxxxxxxxx> wrote:
>
> > Changes committed to git://oss.sgi.com/kenj/pcp.git dev
>
> Hmm, somethings not quite right here...
>
> 15:42 nathans@verge /source/git/pcp/src/libpcp/src 253> pminfo
> -Dcontext -L -f mmv
> build_dsotab: parsing /etc/pmcd/pmcd.conf
> [6] domain=60, name=/var/lib/pcp/pmdas/linux/pmda_linux.so,
> init=linux_init
> __pmLocalPMDA(op=ADD, domain=60,
> name=/var/lib/pcp/pmdas/linux/pmda_linux.so, init=linux_init)
> Local Context PMDA Table
> 0x9c049a0 [0] domain=60 name=/var/lib/pcp/pmdas/linux/pmda_linux.so
> init=linux_init handle=(nil)
> [7] domain=70, name=/var/lib/pcp/pmdas/mmv/pmda_mmv.so, init=mmv_init
> __pmLocalPMDA(op=ADD, domain=70,
> name=/var/lib/pcp/pmdas/mmv/pmda_mmv.so, init=mmv_init)
> Local Context PMDA Table
> 0x9c04a18 [0] domain=60 name=/var/lib/pcp/pmdas/linux/pmda_linux.so
> init=linux_init handle=(nil)
> 0x9c04a5c [1] domain=70 name=/var/lib/pcp/pmdas/mmv/pmda_mmv.so
> init=mmv_init handle=(nil)
> [9] domain=30, name=/var/lib/pcp/pmdas/sample/pmda_sample.so,
> init=sample_init
> __pmLocalPMDA(op=ADD, domain=30,
> name=/var/lib/pcp/pmdas/sample/pmda_sample.so, init=sample_init)
> Local Context PMDA Table
> 0x9c04ad0 [0] domain=60 name=/var/lib/pcp/pmdas/linux/pmda_linux.so
> init=linux_init handle=(nil)
> 0x9c04b14 [1] domain=70 name=/var/lib/pcp/pmdas/mmv/pmda_mmv.so
> init=mmv_init handle=(nil)
> 0x9c04b58 [2] domain=30 name=/var/lib/pcp/pmdas/sample/pmda_sample.so
> init=sample_init handle=(nil)
> pmNewContext(3, (null)) -> 0
>
Also, you can't call mmap() on Windows - theres no entry point. The
Win32 API equivalent is wrapped in __pmMemoryMap(...), but it wont do
private writable mappings (dunno if thats possible on Windows, we do
not have any other code in PCP doing that...!).
So, I started to convert this to the portable interface but it doesn't
work cos we're writing a null into the mapping in a couple of places
to terminate strings. Can we rework that bit? (copy the string out a
bit earlier & null terminate the on-stack copy or something?) It got
a bit hairy at that point, so decided to chuck the attached patch back
over the fence to you to sort out ... :-)
cheers.
--
Nathan
memorymap.patch
Description: Text Data
|