On Sun, Sep 4, 2011 at 9:28 AM, Brandon Gooch <jamesbrandongooch_at_gmail.com> wrote: > On Fri, Sep 02, 2011 at 08:25:05PM -0400, Rick Macklem wrote: >> Brandon Gooch wrote: >> > On Thu, Sep 1, 2011 at 8:09 PM, Brandon Gooch >> > <jamesbrandongooch_at_gmail.com> wrote: >> > > On Fri, May 27, 2011 at 8:09 AM, Rick Macklem <rmacklem_at_uoguelph.ca> >> > > wrote: >> > >>> On Thu, 26 May 2011, Rick Macklem wrote: >> > >>> ... >> > >>> > ??http://people.freebsd.org/~rmacklem/dtrace.patch >> > >>> > >> > >>> Hmm. Is it just me? >> > >>> Trying to test the patch I get: >> > >>> >> > >>> (fs)(root) patch -C < dtrace.patch >> > >>> Hmm... I can't seem to find a patch in there anywhere. >> > >>> >> > >> Here's how I apply the patch. >> > >> - download dtrace.patch to somewhere, lets say /tmp, then >> > >> # cd /usr/src/sys <-- sys subdirectory of a current head, >> > >> ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? which you don't mind messing up >> > >> ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? doesn't have to be at /usr/src/sys, >> > >> ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? of course. >> > >> # patch -p1 < /tmp/dtrace.patch >> > >> >> > >> rick >> > >> >> > > >> > > What's the status on this patch? It would be nice to get >> > > dtrace/newnfs >> > > going for 9.0...it's not too late, right? >> > > >> > > I'll test the patch too BTW :) >> > > >> > > -Brandon >> > > >> > >> > So it looks like the patch was committed to HEAD, but the bits to >> > support the New NFS implementation were never flipped on -- is that >> > for a good reason? >> > >> I know nothing about Dtrace, so if something needs to be changed/fixed, >> someone who understands these things will have to let me know. >> >> When I built a kernel with "options KDTRACE_HOOKS" and set >> dtraceall_load="YES" in /etc/rc.conf, >> it booted and >> # dtrace -l >> - seemed to find the stuff (it's called "dtnfscl", btw). >> >> Someone told me that's how you check it's loaded and that's all I >> know how to do w.r.t. dtrace. >> >> If you can test/debug it, that would be great, rick > > Actually, the problem is not with DTrace functioning, but with the > dtnfsclient.ko module: > > brandon_at_m6500:~$ sudo kldload dtnfsclient > kldload: can't load dtnfsclient: Exec format error > > brandon_at_m6500:~$ dmesg > ... > link_elf_obj: symbol nfsclient_accesscache_flush_done_id undefined > linker_load_file: Unsupported file type > ... After fixing a DTrace module related build bug (see kern/160463), I was able to build and install dtrace and both the old and new NFS client dtrace providers were loaded: $ sudo dtrace -l | grep nfs | wc -l 2472 $ kldstat -v | grep dtnfs 22 1 0xffffffff8133d000 57ca dtnfscl.ko (/boot/kernel/dtnfscl.ko) 234 dtnfscl 24 1 0xffffffff81385000 4f64 dtnfsclient.ko (/boot/kernel/dtnfsclient.ko) 237 dtnfsclient Be sure to read through what's required to get DTrace going from the handbook: http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/dtrace-enable.html . > Any hints on debugging undefined symbols? This is a runtime linker error because it can't find the symbol -- in particular if you don't define some of the required options (like DDB_CTF, WITH_CTF=1), things don't load too terribly well. HTH, -GarrettReceived on Sun Sep 04 2011 - 17:41:54 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:17 UTC