[lldb-dev] LLDB/NetBSD May

Kamil Rytarowski via lldb-dev lldb-dev at lists.llvm.org
Tue May 2 13:04:05 PDT 2017

On 02.05.2017 21:48, Christos Zoulas wrote:
> On May 2,  9:06pm, n54 at gmx.com (Kamil Rytarowski) wrote:
> -- Subject: LLDB/NetBSD May
> | I put a summary of April achievements here:
> | 
> | http://blog.netbsd.org/tnf/entry/lldb_netbsd_process_plugin_enhancements
> Thanks, that looks great.
> | The plan for the next milestone is continuing development of threads in
> | the NetBSD Process Plugin. I will need to work more on correctness of
> | ptrace(2) calls as new issues were detected in setups with threads that
> | resulted in crashes.
> Makes sense. I will try to help.

I built the kernel with all debug options and diagnostics.. and the
crashes disappeared.

On the other hand with these options enabled "resume1" started to fail,
a test from our ATF regression unit tests in t_ptrace_wait*.

There are two bugs:
 1. kernel crashes with threads in the local copy of Process Plugin.
 2. PT_SUSPEND, PT_RESUME unreliable http://gnats.netbsd.org/51995

I'm working on (1.) now.

If possible please help with (2.) as there are ATF tests ready and no
need to setup LLVM+Clang+LLDB.

RCS file: /cvsroot/src/sys/arch/amd64/conf/GENERIC,v
retrieving revision 1.457
diff -u -r1.457 GENERIC
--- GENERIC	18 Apr 2017 19:09:12 -0000	1.457
+++ GENERIC	2 May 2017 19:57:36 -0000
@@ -91,14 +91,14 @@
 # Diagnostic/debugging support options
 options 	DIAGNOSTIC	# inexpensive kernel consistency checks
 				# XXX to be commented out on release branch
-#options 	DEBUG		# expensive debugging checks/support
-#options 	LOCKDEBUG	# expensive locking checks/support
+options 	DEBUG		# expensive debugging checks/support
+options 	LOCKDEBUG	# expensive locking checks/support

 # Because gcc omits the frame pointer for any -O level, the line below
 # is needed to make backtraces in DDB work.
-makeoptions	COPTS="-O2 -fno-omit-frame-pointer"
+makeoptions	COPTS="-O0 -g -fno-inline -fno-omit-frame-pointer"
 options 	DDB		# in-kernel debugger
 #options 	DDB_COMMANDONENTER="bt"	# execute command when ddb is entered
 #options 	DDB_ONPANIC=1	# see also sysctl(7): `ddb.onpanic'

> | There is also ongoing work on a new build node running NetBSD-current
> | (prerelease of 8) and building LLVM+Clang+LLDB. I'm working on enabling
> | unit tests to catch functional regressions quickly. The original LLDB
> | node cluster was privately funded by myself in the last two years and
> | has been switched to a machine hosted by The NetBSD Foundation.
> | 
> | To keep this machine up and running (8 CPU, 24 GB RAM) community support
> | through donations is required. This is crucial to actively maintain the
> | LLVM toolchain (Clang, LLDB and others) on NetBSD.
> Why don't we run this in one of our machines?

It's already there! (talia.netbsd.org)

For details there is need to talk our admins.

> christos

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20170502/e78803db/attachment.sig>

More information about the lldb-dev mailing list