Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: rump i386 cross compile trouble



On 09/03/15 13:03, Patrick Welche wrote:
On Mon, Mar 09, 2015 at 12:20:58PM +0000, Justin Cormack wrote:
On Mar 9, 2015 11:27 AM, "Patrick Welche" <prlw1%cam.ac.uk@localhost> wrote:

On Sat, Mar 07, 2015 at 09:55:08PM +0100, J. Hannken-Illjes wrote:
On 07 Mar 2015, at 18:03, Patrick Welche <prlw1%cam.ac.uk@localhost> wrote:

-               if (modclass != MODULE_CLASS_EXEC || error != ENOENT)
+               if ((modclass != MODULE_CLASS_EXEC || error !=
ENOENT) &&
+                   root_device != NULL)

but why? Compiler bug (gcc)?

Given this fragment is "#ifdef DEBUG" it looks like rump_server has to
be linked with librumpvfs in the DEBUG case?

Indeed! The attached seems to fix the build - comments?


-lrumpvfs needs to be inside the whole-archive linker flags.

Worse than that: the additional reference to root_device appeared in
kern_module.c. That source file is used by librump. Does librump really
want to depend on librumpvfs if DEBUG? (probably not)

You're right, it shouldn't.

Rump kernels with DEBUG should be fixed now.  Thanks for the report.

Notably, we do run the buildrump.sh tests against a "known good" NetBSD source vintage with -DDEBUG too, but not the builds against HEAD [1]. Since the "known good" sources timestamp isn't updated extremely frequently, we hadn't caught this yet. Justin: maybe worth adding HEAD+DEBUG to buildbot?

  - antti

[1] http://builds.rumpkernel.org/


Home | Main Index | Thread Index | Old Index