From nobody@FreeBSD.org  Mon Aug 29 07:11:21 2011
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id BEED5106566B
	for <freebsd-gnats-submit@FreeBSD.org>; Mon, 29 Aug 2011 07:11:21 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from red.freebsd.org (red.freebsd.org [IPv6:2001:4f8:fff6::22])
	by mx1.freebsd.org (Postfix) with ESMTP id AF2B38FC19
	for <freebsd-gnats-submit@FreeBSD.org>; Mon, 29 Aug 2011 07:11:21 +0000 (UTC)
Received: from red.freebsd.org (localhost [127.0.0.1])
	by red.freebsd.org (8.14.4/8.14.4) with ESMTP id p7T7BLuu007007
	for <freebsd-gnats-submit@FreeBSD.org>; Mon, 29 Aug 2011 07:11:21 GMT
	(envelope-from nobody@red.freebsd.org)
Received: (from nobody@localhost)
	by red.freebsd.org (8.14.4/8.14.4/Submit) id p7T7BLnM007006;
	Mon, 29 Aug 2011 07:11:21 GMT
	(envelope-from nobody)
Message-Id: <201108290711.p7T7BLnM007006@red.freebsd.org>
Date: Mon, 29 Aug 2011 07:11:21 GMT
From: Paul Ambrose <ambrosehua@gmail.com>
To: freebsd-gnats-submit@FreeBSD.org
Subject: dtrace -lv cause 
X-Send-Pr-Version: www-3.1
X-GNATS-Notify:

>Number:         160275
>Category:       bin
>Synopsis:       [patch] dtrace(1): dtrace -lv causes "unknown function" warnings
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    rstone
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Aug 29 07:20:10 UTC 2011
>Closed-Date:    
>Last-Modified:  Sun May 27 00:40:01 UTC 2012
>Originator:     Paul Ambrose
>Release:        9.0-beta2
>Organization:
>Environment:
[root@lateaxfreebsd ~]# uname -a
FreeBSD lateaxfreebsd 9.0-BETA2 FreeBSD 9.0-BETA2 #4 r+c45c70e: Mon Aug 29 14:34:54 CST 2011     root@lateaxfreebsd:/usr/obj/usr/src/sys/MYKERNEL  amd64
>Description:
dtrace -lv;
the output seems all right; but the dmesg has warnings like this:

fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
fbt_getargdesc(1302): Unknown function!
ctf_lookup_by_id(998): type 2363 exceeds max 2363
ctf_lookup_by_id(998): type 2363 exceeds max 2363

I notice the 'dtrace -l' output has something like this 
.......................
19324    syscall         freebsd32                              #518 entry
19325    syscall         freebsd32                              #518 return
19326    syscall         freebsd32                              #519 entry
19327    syscall         freebsd32                              #519 return
19328    syscall         freebsd32                              #520 entry
19329    syscall         freebsd32                              #520 return
19330    syscall         freebsd32                              #521 entry
19331    syscall         freebsd32                              #521 return
19332    syscall         freebsd32                 freebsd32_pselect entry
19333    syscall         freebsd32                 freebsd32_pselect return
19334    syscall         freebsd32                     getloginclass entry
19335    syscall         freebsd32                     getloginclass return
19336    syscall         freebsd32                     setloginclass entry
19337    syscall         freebsd32                     setloginclass return
19338    syscall         freebsd32                    rctl_get_racct entry
19339    syscall         freebsd32                    rctl_get_racct return
19340    syscall         freebsd32                    rctl_get_rules entry
19341    syscall         freebsd32                    rctl_get_rules return
19342    syscall         freebsd32                   rctl_get_limits entry
19343    syscall         freebsd32                   rctl_get_limits return
19344    syscall         freebsd32                     rctl_add_rule entry
19345    syscall         freebsd32                     rctl_add_rule return
19346    syscall         freebsd32                  rctl_remove_rule entry
19347    syscall         freebsd32                  rctl_remove_rule return
19348    syscall         freebsd32         freebsd32_posix_fallocate entry
19349    syscall         freebsd32         freebsd32_posix_fallocate return
19350    syscall         freebsd32                              #531 entry
19351    syscall         freebsd32                              #531 return

some of function column of syscall provider is #num, not the function
name, I checked the syscalls.c, It seems the warning come from 
unimplemented syscall (the num is the syscall number),  this syscall
exists in the syscall table, and dtrace produce relevant probe for it,
but these syscall has no implementation, so 'dtrace -lv' found no ctf
info 

plus, on 8.2-stable, the dtrace -lv cause page fault on fbt_getargdesc
in fbt.c
 
	/* Check if this module hasn't been initialised yet. */
	if (*lc.ctfoffp == NULL) {                                                   //it seems ctfoffp == NULL
		/*
		 * Initialise the CTF object and function symindx to
		 * byte offset array.
		 */
		if (fbt_ctfoff_init(ctl, &lc) != 0)
			return;

		/* Initialise the CTF type to byte offset array. */
		if (fbt_typoff_init(&lc) != 0)
			return;
	}



>How-To-Repeat:
dtrace -lv with dtrace enabled; 
>Fix:


>Release-Note:
>Audit-Trail:

From: Paul Ambrose <ambrosehua@gmail.com>
To: bug-followup@FreeBSD.org, ambrosehua@gmail.com
Cc:  
Subject: Re: bin/160275: dtrace(1): dtrace -lv causes &quot;unknown
 function&quot; warnings
Date: Thu, 6 Oct 2011 10:42:06 +0800

 --00151747948e33ca5f04ae98452d
 Content-Type: multipart/alternative; boundary=00151747948e33ca4704ae98452b
 
 --00151747948e33ca4704ae98452b
 Content-Type: text/plain; charset=ISO-8859-1
 
 I follow the dmesg, and found this PR was involved with at least 3 bugs
 
 No. 1:
 dtrace -lv on 8.2-stable with DTrace enabled caused page fault panic, see
 http://groups.google.com/group/mailing.freebsd.current/browse_thread/thread/1aebd0e4db0bb2fe
 ,
 
 No. 2:
 the /usr/obj/usr/src/sys/MYKERNEL/Makefile produced by config(8) DOES NOT
 add ctfconvert post-process to obj:
 
 if_ethersubr.o
 in_proto.o
 
 in /usr/obj/usr/src/sys/MYKERNEL/Makefile
 ......
 _proto.ln: $S/netinet/in_proto.c
     ${NORMAL_LINT}
 
 in_proto.o: $S/netinet/in_proto.c
     ${NORMAL_C} -I$S/contrib/pf
      //missing @${NORMAL_CTFCONVERT}
 ......
  if_debug.ln: $S/net/if_debug.c
     ${NORMAL_LINT}
 
 if_debug.o: $S/net/if_debug.c
      ${NORMAL_C}
      @${NORMAL_CTFCONVERT}
 
 if_ethersubr.ln: $S/net/if_ethersubr.c
     ${NORMAL_LINT}
 
 if_ethersubr.o: $S/net/if_ethersubr.c
     ${NORMAL_C} -I$S/contrib/pf
       //missing @${NORMAL_CTFCONVERT}
 .......
 
 No.3:
 some obj built by the clang compiler in 9-current, CAN NOT be processed by
 ctfmerge and ctfconvert, see attachment ctf.ERROR
 
 --00151747948e33ca4704ae98452b--
 --00151747948e33ca5f04ae98452d
 Content-Type: application/octet-stream; name="ctf.ERROR"
 Content-Disposition: attachment; filename="ctf.ERROR"
 Content-Transfer-Encoding: base64
 X-Attachment-Id: f_gtf53g0z0
 
 L3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogYndpbWFjLmM6IGRpZSA0MzczMTogZmFpbGVk
 IHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBi
 d2lwaHkuYzogZGllIDIyNzY0OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Iv
 c3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGJ3aXJmLmM6IGRpZSA1MTEzMDogZmFpbGVkIHRvIHJl
 dHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBjY191c2Vy
 LmM6IGRpZSAyNjYzNTogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9i
 dWlsZF9hbGwubG9nOkVSUk9SOiBjdGZtZXJnZTogTm8gY3RmIHNlY3Rpb25zIGZvdW5kIHRvIG1l
 cmdlCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGN0Zm1lcmdlOiBib290MDogQ291bGRu
 J3QgcmVhZCBlaGRyOiBJbnZhbGlkIGFyZ3VtZW50Ci91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJS
 T1I6IGN0Zm1lcmdlOiBidHg6IENvdWxkbid0IHJlYWQgZWhkcjogSW52YWxpZCBhcmd1bWVudAov
 dXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBjdGZtZXJnZTogYnR4bGRyOiBDb3VsZG4ndCBy
 ZWFkIGVoZHI6IEludmFsaWQgYXJndW1lbnQKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjog
 Y3RmbWVyZ2U6IGNkYm9vdDogQ291bGRuJ3QgcmVhZCBlaGRyOiBJbnZhbGlkIGFyZ3VtZW50Ci91
 c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGN0Zm1lcmdlOiBsZC1lbGYuc28uMTogQ2Fubm90
 IGdldCBzZWN0IC5nbnUudmVyc2lvbl9kIGRhdGE6IEludmFsaWQgc2VjdGlvbiBkZXNjcmlwdG9y
 Ci91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGN0Zm1lcmdlOiBsZC1lbGYzMi5zby4xOiBD
 YW5ub3QgZ2V0IHNlY3QgLmdudS52ZXJzaW9uX2QgZGF0YTogSW52YWxpZCBzZWN0aW9uIGRlc2Ny
 aXB0b3IKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogY3RmbWVyZ2U6IGxpYmMuc28uNzog
 Q2Fubm90IGdldCBzZWN0IC5nbnUudmVyc2lvbl9kIGRhdGE6IEludmFsaWQgc2VjdGlvbiBkZXNj
 cmlwdG9yCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGN0Zm1lcmdlOiBsaWJlbGYuc28u
 MTogQ2Fubm90IGdldCBzZWN0IC5nbnUudmVyc2lvbl9kIGRhdGE6IEludmFsaWQgc2VjdGlvbiBk
 ZXNjcmlwdG9yCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGN0Zm1lcmdlOiBsaWJnc3Nh
 cGkuc28uMTA6IENhbm5vdCBnZXQgc2VjdCAuZ251LnZlcnNpb25fZCBkYXRhOiBJbnZhbGlkIHNl
 Y3Rpb24gZGVzY3JpcHRvcgovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBjdGZtZXJnZTog
 bGliaGVpbW50bG0uc28uMTA6IENhbm5vdCBnZXQgc2VjdCAuZ251LnZlcnNpb25fZCBkYXRhOiBJ
 bnZhbGlkIHNlY3Rpb24gZGVzY3JpcHRvcgovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBj
 dGZtZXJnZTogbGliaHg1MDkuc28uMTA6IENhbm5vdCBnZXQgc2VjdCAuZ251LnZlcnNpb25fZCBk
 YXRhOiBJbnZhbGlkIHNlY3Rpb24gZGVzY3JpcHRvcgovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVS
 Uk9SOiBjdGZtZXJnZTogbGlia2FkbTVzcnYuc28uMTA6IENhbm5vdCBnZXQgc2VjdCAuZ251LnZl
 cnNpb25fZCBkYXRhOiBJbnZhbGlkIHNlY3Rpb24gZGVzY3JpcHRvcgovdXNyL3NyYy9idWlsZF9h
 bGwubG9nOkVSUk9SOiBjdGZtZXJnZTogbGlia3JiNS5zby4xMDogQ2Fubm90IGdldCBzZWN0IC5n
 bnUudmVyc2lvbl9kIGRhdGE6IEludmFsaWQgc2VjdGlvbiBkZXNjcmlwdG9yCi91c3Ivc3JjL2J1
 aWxkX2FsbC5sb2c6RVJST1I6IGN0Zm1lcmdlOiBsaWJsem1hLnNvLjU6IENhbm5vdCBnZXQgc2Vj
 dCAuZ251LnZlcnNpb25fZCBkYXRhOiBJbnZhbGlkIHNlY3Rpb24gZGVzY3JpcHRvcgovdXNyL3Ny
 Yy9idWlsZF9hbGwubG9nOkVSUk9SOiBjdGZtZXJnZTogbGlibS5zby41OiBDYW5ub3QgZ2V0IHNl
 Y3QgLmdudS52ZXJzaW9uX2QgZGF0YTogSW52YWxpZCBzZWN0aW9uIGRlc2NyaXB0b3IKL3Vzci9z
 cmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogY3RmbWVyZ2U6IGxpYm1wLnNvLjc6IENhbm5vdCBnZXQg
 c2VjdCAuZ251LnZlcnNpb25fZCBkYXRhOiBJbnZhbGlkIHNlY3Rpb24gZGVzY3JpcHRvcgovdXNy
 L3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBjdGZtZXJnZTogbGlicHJvY3N0YXQuc28uMTogQ2Fu
 bm90IGdldCBzZWN0IC5nbnUudmVyc2lvbl9kIGRhdGE6IEludmFsaWQgc2VjdGlvbiBkZXNjcmlw
 dG9yCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGN0Zm1lcmdlOiBsaWJycGNzZWNfZ3Nz
 LnNvLjE6IENhbm5vdCBnZXQgc2VjdCAuZ251LnZlcnNpb25fZCBkYXRhOiBJbnZhbGlkIHNlY3Rp
 b24gZGVzY3JpcHRvcgovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBjdGZtZXJnZTogbGli
 cnQuc28uMTogQ2Fubm90IGdldCBzZWN0IC5nbnUudmVyc2lvbl9kIGRhdGE6IEludmFsaWQgc2Vj
 dGlvbiBkZXNjcmlwdG9yCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGN0Zm1lcmdlOiBs
 aWJzYnVmLnNvLjY6IENhbm5vdCBnZXQgc2VjdCAuZ251LnZlcnNpb25fZCBkYXRhOiBJbnZhbGlk
 IHNlY3Rpb24gZGVzY3JpcHRvcgovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBjdGZtZXJn
 ZTogbGlic3NwLnNvLjA6IENhbm5vdCBnZXQgc2VjdCAuZ251LnZlcnNpb25fZCBkYXRhOiBJbnZh
 bGlkIHNlY3Rpb24gZGVzY3JpcHRvcgovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBjdGZt
 ZXJnZTogbGlic3RkYysrLnNvLjY6IENhbm5vdCBnZXQgc2VjdCAuZ251LnZlcnNpb25fZCBkYXRh
 OiBJbnZhbGlkIHNlY3Rpb24gZGVzY3JpcHRvcgovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9S
 OiBjdGZtZXJnZTogbGlidGhyLnNvLjM6IENhbm5vdCBnZXQgc2VjdCAuZ251LnZlcnNpb25fZCBk
 YXRhOiBJbnZhbGlkIHNlY3Rpb24gZGVzY3JpcHRvcgovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVS
 Uk9SOiBjdGZtZXJnZTogbGlidGhyZWFkX2RiLnNvLjM6IENhbm5vdCBnZXQgc2VjdCAuZ251LnZl
 cnNpb25fZCBkYXRhOiBJbnZhbGlkIHNlY3Rpb24gZGVzY3JpcHRvcgovdXNyL3NyYy9idWlsZF9h
 bGwubG9nOkVSUk9SOiBjdGZtZXJnZTogbGlidWxvZy5zby4wOiBDYW5ub3QgZ2V0IHNlY3QgLmdu
 dS52ZXJzaW9uX2QgZGF0YTogSW52YWxpZCBzZWN0aW9uIGRlc2NyaXB0b3IKL3Vzci9zcmMvYnVp
 bGRfYWxsLmxvZzpFUlJPUjogY3RmbWVyZ2U6IGxpYnouc28uNjogQ2Fubm90IGdldCBzZWN0IC5n
 bnUudmVyc2lvbl9kIGRhdGE6IEludmFsaWQgc2VjdGlvbiBkZXNjcmlwdG9yCi91c3Ivc3JjL2J1
 aWxkX2FsbC5sb2c6RVJST1I6IGN0Zm1lcmdlOiBtYnI6IENvdWxkbid0IHJlYWQgZWhkcjogSW52
 YWxpZCBhcmd1bWVudAovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBjdGZtZXJnZTogcG1i
 cjogQ291bGRuJ3QgcmVhZCBlaGRyOiBJbnZhbGlkIGFyZ3VtZW50Ci91c3Ivc3JjL2J1aWxkX2Fs
 bC5sb2c6RVJST1I6IGN0Zm1lcmdlOiBweGVsZHI6IENvdWxkbid0IHJlYWQgZWhkcjogSW52YWxp
 ZCBhcmd1bWVudAovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBkZWZsYXRlLmM6IGRpZSAx
 MTkyODogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwu
 bG9nOkVSUk9SOiBod3BtY19hbWQuYzogZGllIDUxNjU2OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJy
 YXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGh3cG1jX2FtZC5jOiBkaWUg
 NTE3MTA6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxs
 LmxvZzpFUlJPUjogaHdwbWNfY29yZS5jOiBkaWUgMTI5NjU6IGZhaWxlZCB0byByZXRyaWV2ZSBh
 cnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogaHdwbWNfY29yZS5jOiBk
 aWUgMTMwMTk6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRf
 YWxsLmxvZzpFUlJPUjogaHdwbWNfaW50ZWwuYzogZGllIDEyNzc2OiBmYWlsZWQgdG8gcmV0cmll
 dmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGh3cG1jX2ludGVs
 LmM6IGRpZSAxMjgzMDogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9i
 dWlsZF9hbGwubG9nOkVSUk9SOiBod3BtY19sb2dnaW5nLmM6IGRpZSA3Njg4MzogZmFpbGVkIHRv
 IHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBod3Bt
 Y19sb2dnaW5nLmM6IGRpZSA4MDAwMjogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwov
 dXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBod3BtY19tb2QuYzogZGllIDM4NDA5OiBmYWls
 ZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6
 IGh3cG1jX21vZC5jOiBkaWUgMzg0NjM6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMK
 L3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogaHdwbWNfcGl2LmM6IGRpZSAxMjkyOTogZmFp
 bGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9S
 OiBod3BtY19waXYuYzogZGllIDEyOTgzOiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRz
 Ci91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGh3cG1jX3RzYy5jOiBkaWUgMTI1MzQ6IGZh
 aWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJP
 UjogaHdwbWNfdHNjLmM6IGRpZSAxMjU4ODogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5k
 cwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBod3BtY191bmNvcmUuYzogZGllIDEyOTY5
 OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6
 RVJST1I6IGh3cG1jX3VuY29yZS5jOiBkaWUgMTMwMjM6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJh
 eSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogaHdwbWNfeDg2LmM6IGRpZSAx
 MzYzODogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwu
 bG9nOkVSUk9SOiBod3BtY194ODYuYzogZGllIDEzNjkyOiBmYWlsZWQgdG8gcmV0cmlldmUgYXJy
 YXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGlmX2F0aF9wY2kuYzogZGll
 IDI0MTA0OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2Fs
 bC5sb2c6RVJST1I6IGlmX2J3aS5jOiBkaWUgNTY0OTE6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJh
 eSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogaWZfYndpX3BjaS5jOiBkaWUg
 MjEwMzc6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxs
 LmxvZzpFUlJPUjogaWZfYnduLmM6IGRpZSA3MzMwODogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5
 IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBpZl9ncmUuYzogZGllIDMzNDUy
 OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6
 RVJST1I6IGlmX2lwdy5jOiBkaWUgMzA3NzE6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3Vu
 ZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogaWZfaXdpLmM6IGRpZSA0Njg0MjogZmFp
 bGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9S
 OiBpZl9pd24uYzogZGllIDU3Mjg2OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91
 c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGlmX2xtYy5jOiBkaWUgMTM2NzI6IGZhaWxlZCB0
 byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogaWZf
 bWFsby5jOiBkaWUgMjE5ODA6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9z
 cmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogaWZfbWFsb19wY2kuYzogZGllIDIxNjcxOiBmYWlsZWQg
 dG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGlm
 X213bC5jOiBkaWUgMzAyMzc6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9z
 cmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogaWZfbXdsX3BjaS5jOiBkaWUgMzA5Nzg6IGZhaWxlZCB0
 byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogaWZf
 bmRpcy5jOiBkaWUgMzY4NDQ6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9z
 cmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogaWZfbmRpc19wY2NhcmQuYzogZGllIDQzNjYzOiBmYWls
 ZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6
 IGlmX25kaXNfcGNpLmM6IGRpZSA0Mzk2NzogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5k
 cwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBpZl9uZGlzX3VzYi5jOiBkaWUgNDI2NTA6
 IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpF
 UlJPUjogaWZfcnVtLmM6IGRpZSAyMDE3MjogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5k
 cwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBpZl9ydW4uYzogZGllIDI4MDE1OiBmYWls
 ZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6
 IGlmX3VhdGguYzogZGllIDI5Mjg4OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91
 c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGlmX3VwZ3QuYzogZGllIDE5MTMxOiBmYWlsZWQg
 dG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGlm
 X3VyYWwuYzogZGllIDIwMTA1OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Iv
 c3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGlmX3VydHcuYzogZGllIDI1NDY4OiBmYWlsZWQgdG8g
 cmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IGlmX3dw
 aS5jOiBkaWUgMzc2NTQ6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMv
 YnVpbGRfYWxsLmxvZzpFUlJPUjogaWZfenlkLmM6IGRpZSAzMDQzMDogZmFpbGVkIHRvIHJldHJp
 ZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBrZXJuX21hbGxv
 Yy5jOiBkaWUgMTYxNTogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9i
 dWlsZF9hbGwubG9nOkVSUk9SOiBrZXJuX21idWYuYzogZGllIDE0Mjg6IGZhaWxlZCB0byByZXRy
 aWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjoga2Vybl9uZGlz
 LmM6IGRpZSA1ODg4MTogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9i
 dWlsZF9hbGwubG9nOkVSUk9SOiBuZXRmbG93LmM6IGRpZSAxNjUyMTogZmFpbGVkIHRvIHJldHJp
 ZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBuZXRmbG93X3Y5
 LmM6IGRpZSAxNDUyOTogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9i
 dWlsZF9hbGwubG9nOkVSUk9SOiBuZ19VSS5jOiBkaWUgMTgxNDogZmFpbGVkIHRvIHJldHJpZXZl
 IGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBuZ19hc3luYy5jOiBk
 aWUgMjEzOTogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9h
 bGwubG9nOkVSUk9SOiBuZ19hdG0uYzogZGllIDc2OTI6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJh
 eSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfYXRtbGxjLmM6IGRpZSA3
 NjEzOiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5s
 b2c6RVJST1I6IG5nX2Jhc2UuYzogZGllIDE5MTQ6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBi
 b3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfYnBmLmM6IGRpZSAyMTI3OiBm
 YWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJS
 T1I6IG5nX2JyaWRnZS5jOiBkaWUgNzkzMjogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5k
 cwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBuZ19idDNjX3BjY2FyZC5jOiBkaWUgNzc5
 ODogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9n
 OkVSUk9SOiBuZ19idHNvY2tldF9oY2lfcmF3LmM6IGRpZSAyMjI1OiBmYWlsZWQgdG8gcmV0cmll
 dmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IG5nX2J0c29ja2V0
 X2wyY2FwLmM6IGRpZSAyMjE3OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Iv
 c3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IG5nX2J0c29ja2V0X2wyY2FwX3Jhdy5jOiBkaWUgMjIz
 MzogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9n
 OkVSUk9SOiBuZ19idHNvY2tldF9yZmNvbW0uYzogZGllIDM3MjEyOiBmYWlsZWQgdG8gcmV0cmll
 dmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IG5nX2J0c29ja2V0
 X3Njby5jOiBkaWUgMjIwOTogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3Ny
 Yy9idWlsZF9hbGwubG9nOkVSUk9SOiBuZ19jYXIuYzogZGllIDE4MTc6IGZhaWxlZCB0byByZXRy
 aWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfY2NhdG0u
 YzogZGllIDIyMjQ6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVp
 bGRfYWxsLmxvZzpFUlJPUjogbmdfY2lzY28uYzogZGllIDc2MTA6IGZhaWxlZCB0byByZXRyaWV2
 ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfZGVmbGF0ZS5j
 OiBkaWUgMjE1MTogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWls
 ZF9hbGwubG9nOkVSUk9SOiBuZ19kZXZpY2UuYzogZGllIDc2MTM6IGZhaWxlZCB0byByZXRyaWV2
 ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfZWNoby5jOiBk
 aWUgMTgyMDogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9h
 bGwubG9nOkVSUk9SOiBuZ19laWZhY2UuYzogZGllIDg4NzU6IGZhaWxlZCB0byByZXRyaWV2ZSBh
 cnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfZXRmLmM6IGRpZSAx
 OTcxOiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5s
 b2c6RVJST1I6IG5nX2V0aGVyLmM6IGRpZSA3NjEwOiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkg
 Ym91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IG5nX2V0aGVyX2VjaG8uYzogZGll
 IDE4Mzg6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxs
 LmxvZzpFUlJPUjogbmdfZmVjLmM6IGRpZSA4ODY2OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkg
 Ym91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IG5nX2ZyYW1lX3JlbGF5LmM6IGRp
 ZSAxODQxOiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2Fs
 bC5sb2c6RVJST1I6IG5nX2dpZi5jOiBkaWUgODY0MDogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5
 IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBuZ19naWZfZGVtdXguYzogZGll
 IDIxNjM6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxs
 LmxvZzpFUlJPUjogbmdfaGNpX2NtZHMuYzogZGllIDUyNzA6IGZhaWxlZCB0byByZXRyaWV2ZSBh
 cnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfaGNpX2V2bnQuYzog
 ZGllIDYxMjc6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRf
 YWxsLmxvZzpFUlJPUjogbmdfaGNpX21haW4uYzogZGllIDIxNjk6IGZhaWxlZCB0byByZXRyaWV2
 ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfaGNpX21pc2Mu
 YzogZGllIDIzODQ6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVp
 bGRfYWxsLmxvZzpFUlJPUjogbmdfaGNpX3VscGkuYzogZGllIDU1NDU6IGZhaWxlZCB0byByZXRy
 aWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfaG9sZS5j
 OiBkaWUgMTgyMDogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWls
 ZF9hbGwubG9nOkVSUk9SOiBuZ19odWIuYzogZGllIDIxMjc6IGZhaWxlZCB0byByZXRyaWV2ZSBh
 cnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfaWZhY2UuYzogZGll
 IDkxODg6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxs
 LmxvZzpFUlJPUjogbmdfaXBfaW5wdXQuYzogZGllIDc2MTk6IGZhaWxlZCB0byByZXRyaWV2ZSBh
 cnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfaXBmdy5jOiBkaWUg
 NzYwNzogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwu
 bG9nOkVSUk9SOiBuZ19rc29ja2V0LmM6IGRpZSAyMTUxOiBmYWlsZWQgdG8gcmV0cmlldmUgYXJy
 YXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IG5nX2wyY2FwX2NtZHMuYzog
 ZGllIDI3NzI6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRf
 YWxsLmxvZzpFUlJPUjogbmdfbDJjYXBfZXZudC5jOiBkaWUgNjA5OTogZmFpbGVkIHRvIHJldHJp
 ZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBuZ19sMmNhcF9s
 bHBpLmM6IGRpZSA0NDI5OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3Jj
 L2J1aWxkX2FsbC5sb2c6RVJST1I6IG5nX2wyY2FwX21haW4uYzogZGllIDIxODM6IGZhaWxlZCB0
 byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdf
 bDJjYXBfbWlzYy5jOiBkaWUgMjM3NjogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwov
 dXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBuZ19sMmNhcF91bHBpLmM6IGRpZSA4MjM4OiBm
 YWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJS
 T1I6IG5nX2wydHAuYzogZGllIDIxMzM6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMK
 L3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfbG1pLmM6IGRpZSAxODE3OiBmYWlsZWQg
 dG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IG5n
 X21wcGMuYzogZGllIDIxMzM6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9z
 cmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfbmF0LmM6IGRpZSAxODE3OiBmYWlsZWQgdG8gcmV0
 cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IG5nX25ldGZs
 b3cuYzogZGllIDg4ODY6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMv
 YnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfb25lMm1hbnkuYzogZGllIDE4MzI6IGZhaWxlZCB0byBy
 ZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfcGFy
 c2UuYzogZGllIDIyNzgyOiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3Jj
 L2J1aWxkX2FsbC5sb2c6RVJST1I6IG5nX3BhdGNoLmM6IGRpZSAxODIzOiBmYWlsZWQgdG8gcmV0
 cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IG5nX3BpcGUu
 YzogZGllIDI1MzQ6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVp
 bGRfYWxsLmxvZzpFUlJPUjogbmdfcHBwLmM6IGRpZSAyMTI3OiBmYWlsZWQgdG8gcmV0cmlldmUg
 YXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IG5nX3BwcG9lLmM6IGRp
 ZSAyMTM5OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2Fs
 bC5sb2c6RVJST1I6IG5nX3BwdHBncmUuYzogZGllIDE4Mjk6IGZhaWxlZCB0byByZXRyaWV2ZSBh
 cnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfcHJlZDEuYzogZGll
 IDIxMzk6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxs
 LmxvZzpFUlJPUjogbmdfcmZjMTQ5MC5jOiBkaWUgNzYxNjogZmFpbGVkIHRvIHJldHJpZXZlIGFy
 cmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBuZ19zb2NrZXQuYzogZGll
 IDIzMTc6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxs
 LmxvZzpFUlJPUjogbmdfc291cmNlLmM6IGRpZSA4MDc5OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJy
 YXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IG5nX3NwbGl0LmM6IGRpZSAx
 ODIzOiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5s
 b2c6RVJST1I6IG5nX3NwcHAuYzogZGllIDgxNDY6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBi
 b3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfc3NjZnUuYzogZGllIDIyMjQ6
 IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpF
 UlJPUjogbmdfc3Njb3AuYzogZGllIDIyMjQ6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3Vu
 ZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfdGFnLmM6IGRpZSAyMTI3OiBmYWls
 ZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6
 IG5nX3RjcG1zcy5jOiBkaWUgMTgyNjogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwov
 dXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBuZ190ZWUuYzogZGllIDE4MTc6IGZhaWxlZCB0
 byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdf
 dHR5LmM6IGRpZSAyNDQzNTogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3Ny
 Yy9idWlsZF9hbGwubG9nOkVSUk9SOiBuZ191YnQuYzogZGllIDE4NjI6IGZhaWxlZCB0byByZXRy
 aWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogbmdfdW5pLmM6
 IGRpZSAyMzU2OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxk
 X2FsbC5sb2c6RVJST1I6IG5nX3ZqYy5jOiBkaWUgMTgxNzogZmFpbGVkIHRvIHJldHJpZXZlIGFy
 cmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBuZ192bGFuLmM6IGRpZSA3
 NjA3OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5s
 b2c6RVJST1I6IHNhYWxfc3Njb3AuYzogZGllIDUzNTI0OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJy
 YXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IHNjc2lfYWxsLmM6IGRpZSA0
 MzE5MjogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwu
 bG9nOkVSUk9SOiBzY3NpX2FsbC5jOiBkaWUgNDMyNDI6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJh
 eSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogc2N0cDZfdXNycmVxLmM6IGRp
 ZSA1NzgxOTogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9h
 bGwubG9nOkVSUk9SOiBzY3RwX2FzY29uZi5jOiBkaWUgNDA0NjU6IGZhaWxlZCB0byByZXRyaWV2
 ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogc2N0cF9hdXRoLmM6
 IGRpZSAyMTY2OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxk
 X2FsbC5sb2c6RVJST1I6IHNjdHBfYnNkX2FkZHIuYzogZGllIDMyOTE2OiBmYWlsZWQgdG8gcmV0
 cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IHNjdHBfY2Nf
 ZnVuY3Rpb25zLmM6IGRpZSAyNjQzMTogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwov
 dXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBzY3RwX2luZGF0YS5jOiBkaWUgMjYzNjM6IGZh
 aWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJP
 Ujogc2N0cF9pbnB1dC5jOiBkaWUgMTU1NDogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5k
 cwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBzY3RwX291dHB1dC5jOiBkaWUgODg5ODE6
 IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpF
 UlJPUjogc2N0cF9wY2IuYzogZGllIDUzNjExOiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91
 bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IHNjdHBfcGVlbG9mZi5jOiBkaWUgMzE0
 NDg6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxv
 ZzpFUlJPUjogc2N0cF9zc19mdW5jdGlvbnMuYzogZGllIDI2MjU4OiBmYWlsZWQgdG8gcmV0cmll
 dmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IHNjdHBfc3lzY3Rs
 LmM6IGRpZSA0MzM1NzogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9i
 dWlsZF9hbGwubG9nOkVSUk9SOiBzY3RwX3RpbWVyLmM6IGRpZSA0MTM4NjogZmFpbGVkIHRvIHJl
 dHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBzY3RwX3Vz
 cnJlcS5jOiBkaWUgMTY0OTQ0OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Iv
 c3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IHNjdHB1dGlsLmM6IGRpZSA1NTEzMDogZmFpbGVkIHRv
 IHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBzaWdf
 Y2FsbC5jOiBkaWUgNDc4OTg6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9z
 cmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogc2lnX2Nvb3JkLmM6IGRpZSAzNDg4MzogZmFpbGVkIHRv
 IHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBzaWdf
 cGFydHkuYzogZGllIDM3NDY3OiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Iv
 c3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IHNpZ19yZXNldC5jOiBkaWUgMzI2NTA6IGZhaWxlZCB0
 byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogc3Vi
 cl9tYnBvb2wuYzogZGllIDUxMjQ6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vz
 ci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogc3Vicl9uZGlzLmM6IGRpZSA5Mzc0MzogZmFpbGVk
 IHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiBz
 dWJyX3BlLmM6IGRpZSA4MzcyOiBmYWlsZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Iv
 c3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IHN1YnJfdXNiZC5jOiBkaWUgNDg5NDE6IGZhaWxlZCB0
 byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogdWRi
 cC5jOiBkaWUgMTk0NzogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3NyYy9i
 dWlsZF9hbGwubG9nOkVSUk9SOiB1bWFfY29yZS5jOiBkaWUgNjg0OiBmYWlsZWQgdG8gcmV0cmll
 dmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IHVtYV9kYmcuYzog
 ZGllIDI0MzE6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRf
 YWxsLmxvZzpFUlJPUjogdW1hX21hY2hkZXAuYzogZGllIDIwODk6IGZhaWxlZCB0byByZXRyaWV2
 ZSBhcnJheSBib3VuZHMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogdXNiX2NvbXBhdF9s
 aW51eC5jOiBkaWUgMjMzNTogZmFpbGVkIHRvIHJldHJpZXZlIGFycmF5IGJvdW5kcwovdXNyL3Ny
 Yy9idWlsZF9hbGwubG9nOkVSUk9SOiB1c2JfY29tcGF0X2xpbnV4LmM6IGRpZSAyMzk2OiBmYWls
 ZWQgdG8gcmV0cmlldmUgYXJyYXkgYm91bmRzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6
 IHZtX3BhZ2UuYzogZGllIDQ3ODk6IGZhaWxlZCB0byByZXRyaWV2ZSBhcnJheSBib3VuZHMKL3Vz
 ci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogdnhnZS1xdWV1ZS5jOiBzb3UgdnhnZV9oYWxfbXJw
 Y2ltX3JlZ190IGhhcyB0b28gbWFueSBtZW1iZXJzOiAxOTExID4gMTAyMwovdXNyL3NyYy9idWls
 ZF9hbGwubG9nOkVSUk9SOiB2eGdlLmM6IHNvdSB2eGdlX2hhbF9tcnBjaW1fcmVnX3QgaGFzIHRv
 byBtYW55IG1lbWJlcnM6IDE5MTEgPiAxMDIzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6
 IHZ4Z2VoYWwtYmxvY2twb29sLmM6IHNvdSB2eGdlX2hhbF9tcnBjaW1fcmVnX3QgaGFzIHRvbyBt
 YW55IG1lbWJlcnM6IDE5MTEgPiAxMDIzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IHZ4
 Z2VoYWwtY2hhbm5lbC5jOiBzb3UgdnhnZV9oYWxfbXJwY2ltX3JlZ190IGhhcyB0b28gbWFueSBt
 ZW1iZXJzOiAxOTExID4gMTAyMwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiB2eGdlaGFs
 LWNvbmZpZy5jOiBzb3UgdnhnZV9oYWxfbXJwY2ltX3JlZ190IGhhcyB0b28gbWFueSBtZW1iZXJz
 OiAxOTExID4gMTAyMwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiB2eGdlaGFsLWRldmlj
 ZS5jOiBzb3UgdnhnZV9oYWxfbXJwY2ltX3JlZ190IGhhcyB0b28gbWFueSBtZW1iZXJzOiAxOTEx
 ID4gMTAyMwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiB2eGdlaGFsLWRvb3JiZWxscy5j
 OiBzb3UgdnhnZV9oYWxfbXJwY2ltX3JlZ190IGhhcyB0b28gbWFueSBtZW1iZXJzOiAxOTExID4g
 MTAyMwovdXNyL3NyYy9idWlsZF9hbGwubG9nOkVSUk9SOiB2eGdlaGFsLWZpZm8uYzogc291IHZ4
 Z2VfaGFsX21ycGNpbV9yZWdfdCBoYXMgdG9vIG1hbnkgbWVtYmVyczogMTkxMSA+IDEwMjMKL3Vz
 ci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogdnhnZWhhbC1pZm1zZy5jOiBzb3UgdnhnZV9oYWxf
 bXJwY2ltX3JlZ190IGhhcyB0b28gbWFueSBtZW1iZXJzOiAxOTExID4gMTAyMwovdXNyL3NyYy9i
 dWlsZF9hbGwubG9nOkVSUk9SOiB2eGdlaGFsLW1nbXQuYzogc291IHZ4Z2VfaGFsX21ycGNpbV9y
 ZWdfdCBoYXMgdG9vIG1hbnkgbWVtYmVyczogMTkxMSA+IDEwMjMKL3Vzci9zcmMvYnVpbGRfYWxs
 LmxvZzpFUlJPUjogdnhnZWhhbC1tZ210YXV4LmM6IHNvdSB2eGdlX2hhbF9tcnBjaW1fcmVnX3Qg
 aGFzIHRvbyBtYW55IG1lbWJlcnM6IDE5MTEgPiAxMDIzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6
 RVJST1I6IHZ4Z2VoYWwtbW0uYzogc291IHZ4Z2VfaGFsX21ycGNpbV9yZWdfdCBoYXMgdG9vIG1h
 bnkgbWVtYmVyczogMTkxMSA+IDEwMjMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogdnhn
 ZWhhbC1tcnBjaW0uYzogc291IHZ4Z2VfaGFsX21ycGNpbV9yZWdfdCBoYXMgdG9vIG1hbnkgbWVt
 YmVyczogMTkxMSA+IDEwMjMKL3Vzci9zcmMvYnVpbGRfYWxsLmxvZzpFUlJPUjogdnhnZWhhbC1y
 aW5nLmM6IHNvdSB2eGdlX2hhbF9tcnBjaW1fcmVnX3QgaGFzIHRvbyBtYW55IG1lbWJlcnM6IDE5
 MTEgPiAxMDIzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IHZ4Z2VoYWwtc3JwY2ltLmM6
 IHNvdSB2eGdlX2hhbF9tcnBjaW1fcmVnX3QgaGFzIHRvbyBtYW55IG1lbWJlcnM6IDE5MTEgPiAx
 MDIzCi91c3Ivc3JjL2J1aWxkX2FsbC5sb2c6RVJST1I6IHZ4Z2VoYWwtdmlydHVhbHBhdGguYzog
 c291IHZ4Z2VfaGFsX21ycGNpbV9yZWdfdCBoYXMgdG9vIG1hbnkgbWVtYmVyczogMTkxMSA+IDEw
 MjMK
 --00151747948e33ca5f04ae98452d--

From: Paul Ambrose <ambrosehua@gmail.com>
To: bug-followup@FreeBSD.org, ambrosehua@gmail.com
Cc: delphij@FreeBSD.org
Subject: Re: bin/160275: dtrace(1): dtrace -lv causes &quot;unknown
 function&quot; warnings
Date: Tue, 11 Oct 2011 20:12:07 +0800

 Among the previous update,  some fbt probe function has NO  CTF info,
 and I found the config (8)
 
 can not generate right Makefile for "in_proto.c" and "if_ethersubr.c"
 in sys/conf/files[,.ARCH],
 
 /usr/obj/usr/src/MYKERNEL/Makefile
 ...
 in_proto.ln: $S/netinet/in_proto.c
     ${NORMAL_LINT}
 
 in_proto.o: $S/netinet/in_proto.c
     ${NORMAL_C} -I$S/contrib/pf
       //without @${NORMAL_CTFCONVERT}
 
 in_rmx.ln: $S/netinet/in_rmx.c
     ${NORMAL_LINT}
 
 in_rmx.o: $S/netinet/in_rmx.c
     ${NORMAL_C}
     @${NORMAL_CTFCONVERT}
 ...
 
 which has a "compile-with" command,  see here:
 ------------------------------------------------------------------
 src/usr.sbin/config/mkmakefile.c Line 746
 
       }
       compilewith = ftp->f_compilewith;
       if (compilewith == 0) {        // no compile-with
          const char *ftype = NULL;
 
          switch (ftp->f_type) {
          case NORMAL:
             ftype = "NORMAL";
             break;
          case PROFILING:
             if (!profiling)
                continue;
             ftype = "PROFILE";
             break;
          default:
             fprintf(stderr,
                 "config: don't know rules for %s\n", np);
             break;
          }
                        //no compile-with get here, with CTFCONVERT post-process
          snprintf(cmd, sizeof(cmd),
              "${%s_%c%s}\n\t@${NORMAL_CTFCONVERT}", ftype,
              toupper(och),
              ftp->f_flags & NOWERROR ? "_NOWERROR" : "");
          compilewith = cmd;
       }
       *cp = och;
       if (strlen(ftp->f_objprefix))
          fprintf(f, "\t%s $S/%s\n\n", compilewith, np);
       else
          fprintf(f, "\t%s\n\n", compilewith);
    }
 }
 ---------------------------------------------------
 here is a patch for  STABLE-8
 
 diff --git a/usr.sbin/config/mkmakefile.c b/usr.sbin/config/mkmakefile.c
 index 55367be..59914c4 100644
 --- a/usr.sbin/config/mkmakefile.c
 +++ b/usr.sbin/config/mkmakefile.c
 @@ -749,6 +749,14 @@ do_rules(FILE *f)
                             ftp->f_flags & NOWERROR ? "_NOWERROR" : "");
                         compilewith = cmd;
                 }
 +               else if (!strncmp(compilewith, "${NORMAL_C", 10)) {
 +                       if (ftp->f_type == NORMAL)
 +                                snprintf(cmd, sizeof(cmd),
 +                                       "%s\n.if defined(NORMAL_CTFCONVERT) && "
 +                                       "!empty(NORMAL_CTFCONVERT)\n"
 +
 "\t${NORMAL_CTFCONVERT}\n.endif", compilewith);
 +                                       compilewith = cmd;
 +               }
 +
                 *cp = och;
                 fprintf(f, "\t%s\n\n", compilewith);
         }
 and this is a patch for STABLE-9
 
 diff --git a/usr.sbin/config/mkmakefile.c b/usr.sbin/config/mkmakefile.c
 index 2372839..25a85de 100644
 --- a/usr.sbin/config/mkmakefile.c
 +++ b/usr.sbin/config/mkmakefile.c
 @@ -767,6 +767,14 @@ do_rules(FILE *f)
                             ftp->f_flags & NOWERROR ? "_NOWERROR" : "");
                         compilewith = cmd;
                 }
 +                       //handle CTF issule with NORMAL_C and NORMAL_C_NOERROR
 +               else if (!strncmp(compilewith, "${NORMAL_C", 10)) {
 +                       if (ftp->f_type == NORMAL)
 +                               snprintf(cmd, sizeof(cmd),
 +                                       "%s\n\t@${NORMAL_CTFCONVERT}",
 +                                       compilewith);
 +                       compilewith = cmd;
 +               }
                 *cp = och;
                 if (strlen(ftp->f_objprefix))
                         fprintf(f, "\t%s $S/%s\n\n", compilewith, np);

From: Paul Ambrose <ambrosehua@gmail.com>
To: bug-followup@FreeBSD.org, ambrosehua@gmail.com
Cc:  
Subject: Re: bin/160275: [patch] dtrace(1): dtrace -lv causes &quot;unknown
 function&quot; warnings
Date: Mon, 17 Oct 2011 22:03:55 +0800

 I think I get it.
 
 1. The page fault error is due to the santiy check error for ctf
 section of kernel module built without WITH_CTF=1,
 and it is fixed by r226082
 
 2 The first part of the "unknown function" warning came from the
 in_proto.c and if_ethersubr.c built without ctfconvert
 post-processing. When config(8) generates make rules  source files
 with compile-with command in
 src/sys/conf/files, it DOES NOT append ${NORMAL_CTFCONVERT} to the
 rules. Here is the fix
 
 
 diff --git a/usr.sbin/config/mkmakefile.c b/usr.sbin/config/mkmakefile.c
 index 2372839..25a85de 100644
 --- a/usr.sbin/config/mkmakefile.c
 +++ b/usr.sbin/config/mkmakefile.c
 @@ -767,6 +767,14 @@ do_rules(FILE *f)
                             ftp->f_flags & NOWERROR ? "_NOWERROR" : "");
                         compilewith = cmd;
                 }
 +                       //handle CTF issule with NORMAL_C and NORMAL_C_NOERROR
 +               else if (!strncmp(compilewith, "${NORMAL_C",
 sizeof("${NORMAL_C"))) {
 +                               snprintf(cmd, sizeof(cmd),
 +                                       "%s\n\t@${NORMAL_CTFCONVERT}",
 +                                       compilewith);
 +                               compilewith = cmd;
 +               }
 
 
 3 The second part of "unknown function" came from the clang compiler.
 When building kernel with  clang, some modules
 failed to be post-processed by ctfconvert and ctfmerge tools . If you
 build kernel with gcc, this warning is gone.
 
 
 4 The last part of warning came from the "x11/nvidia-driver".
 
 If you build it without WITH_CTF=1,  you would trigger the page fault
 error until r226082.
 
 If you build it with DEBUG_FLAGS="-g" and WITH_CTF=1, you may get less
 warning from nvidia.ko, the remaining warning
 came from the nv_freebsd.o object released by nvidia, I think this
 object is NOT built "-g", so even though you add
 WITH_CTF=1, you can not get correct ctf section.
 
 
 So, I think my work is done with this PR

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: bin/160275: commit references a PR
Date: Thu, 10 Nov 2011 21:07:28 +0000 (UTC)

 Author: rstone
 Date: Thu Nov 10 21:07:14 2011
 New Revision: 227429
 URL: http://svn.freebsd.org/changeset/base/227429
 
 Log:
   The generated Makefile for the kernel was not running ctfconvert on
   object files corresponding to source files that had the compile-with
   option set in conf/files.  This means that any fbt probes for functions
   in that object file would not have correct argument types.
   
   The fix is to run ctfconvert on any target file that does not have the
   no-obj option set in files.
   
   PR:		bin/160275
   Reported by:	Paul Ambrose (ambrosehua AT gmail DOT com)
   MFC after:	1 week
 
 Modified:
   head/usr.sbin/config/mkmakefile.c
 
 Modified: head/usr.sbin/config/mkmakefile.c
 ==============================================================================
 --- head/usr.sbin/config/mkmakefile.c	Thu Nov 10 20:28:30 2011	(r227428)
 +++ head/usr.sbin/config/mkmakefile.c	Thu Nov 10 21:07:14 2011	(r227429)
 @@ -762,16 +762,21 @@ do_rules(FILE *f)
  				break;
  			}
  			snprintf(cmd, sizeof(cmd),
 -			    "${%s_%c%s}\n\t@${NORMAL_CTFCONVERT}", ftype,
 +			    "${%s_%c%s}\n", ftype,
  			    toupper(och),
  			    ftp->f_flags & NOWERROR ? "_NOWERROR" : "");
  			compilewith = cmd;
  		}
  		*cp = och;
  		if (strlen(ftp->f_objprefix))
 -			fprintf(f, "\t%s $S/%s\n\n", compilewith, np);
 +			fprintf(f, "\t%s $S/%s\n", compilewith, np);
  		else
 -			fprintf(f, "\t%s\n\n", compilewith);
 +			fprintf(f, "\t%s\n", compilewith);
 +
 +		if (!(ftp->f_flags & NO_OBJ))
 +			fprintf(f, "\t@${NORMAL_CTFCONVERT}\n\n");
 +		else
 +			fprintf(f, "\n");
  	}
  }
  
 _______________________________________________
 svn-src-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/svn-src-all
 To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org"
 
Responsible-Changed-From-To: freebsd-bugs->rstone 
Responsible-Changed-By: gnn 
Responsible-Changed-When: Fri Apr 13 20:29:01 UTC 2012 
Responsible-Changed-Why:  
Ryan, if this is no longer a bug, and it seems that this is not an 
issue on HEAD, then please close this. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=160275 

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: bin/160275: commit references a PR
Date: Sun, 27 May 2012 00:35:17 +0000 (UTC)

 Author: rstone
 Date: Sun May 27 00:34:56 2012
 New Revision: 236132
 URL: http://svn.freebsd.org/changeset/base/236132
 
 Log:
   MFC 227429
   
    The generated Makefile for the kernel was not running ctfconvert on
    object files corresponding to source files that had the compile-with
    option set in conf/files.  This means that any fbt probes for functions
    in that object file would not have correct argument types.
   
    The fix is to run ctfconvert on any target file that does not have the
    no-obj option set in files.
   
   PR:           bin/160275
   Reported by:  Paul Ambrose (ambrosehua AT gmail DOT com)
 
 Modified:
   stable/8/usr.sbin/config/mkmakefile.c
 Directory Properties:
   stable/8/usr.sbin/config/   (props changed)
 
 Modified: stable/8/usr.sbin/config/mkmakefile.c
 ==============================================================================
 --- stable/8/usr.sbin/config/mkmakefile.c	Sun May 27 00:21:27 2012	(r236131)
 +++ stable/8/usr.sbin/config/mkmakefile.c	Sun May 27 00:34:56 2012	(r236132)
 @@ -742,15 +742,20 @@ do_rules(FILE *f)
  				break;
  			}
  			snprintf(cmd, sizeof(cmd),
 -			    "${%s_%c%s}\n.if defined(NORMAL_CTFCONVERT) && "
 -			    "!empty(NORMAL_CTFCONVERT)\n"
 -			    "\t${NORMAL_CTFCONVERT}\n.endif", ftype,
 +			    "${%s_%c%s}\n", ftype,
  			    toupper(och),
  			    ftp->f_flags & NOWERROR ? "_NOWERROR" : "");
  			compilewith = cmd;
  		}
  		*cp = och;
 -		fprintf(f, "\t%s\n\n", compilewith);
 +		fprintf(f, "\t%s\n", compilewith);
 +
 +		if (!(ftp->f_flags & NO_OBJ))
 +			fprintf(f, ".if defined(NORMAL_CTFCONVERT) && "
 +			    "!empty(NORMAL_CTFCONVERT)\n"
 +			    "\t${NORMAL_CTFCONVERT}\n.endif\n\n");
 +		else
 +			fprintf(f, "\n");
  	}
  }
  
 _______________________________________________
 svn-src-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/svn-src-all
 To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org"
 
>Unformatted:
