I took my HD from a Lenovo T430s (Intel) and switched
to a AMD desktop:
hw.model: AMD FX(tm)-8350 Eight-Core Processor
Now with vbox svn source r57571, appended patch
and gcc 4.8.5 I can compile and run vbox in Freebsd 10.2.
I can run Windows-10 now. Before the CD install
was hanging in the early boot stage, with AMD it
is working smoothly. What can be the problem?
Is there special  Bios requirements T430s? I enabled
Intel Vt-x there...
// Greetings Konrad

2015-09-03 22:15 GMT+02:00 Konrad Eisele <eisel...@gmail.com>:

> Hello, I tried to install Windows-10 in Virtualbox 4.3.30 on Freebsd 10.2.
> It starts up and shows the blue 4 tile logo, but then it doesnt continue.
> Normally it should show the circle with the dots spinning round, however
> Virtualbox loops at 100%.
> I then compiled Virtualbox 5.0 on FreeBsd (with some patching) and
> got Virtualbox-5.0 to start, however the behaviour is almost the same
> only that it loops at ~50% now. (I guess that Windows 8.1 will be the
> same).
> Windows-7 starts up ok.
> I'm not so familiar with Virtualization and wonder weather someone
> knows what is missing in the FreeBsd driver so that Windows 10 cannot
> start up. Does anyone know what magic Windows does in the beginning?
> It does something that is emulated in Linux or OSX. Here Windows 10
> boots.
> On FreeBsd, when loading a Windows-10 VBox image created in Linux it starts
> and hangs like when installing from CD, however when restarting the
> machine,
> next time it writes "trying automatic recovery", so it has recorded that
> it has started once. Then it hangs again.
> I know  Bootloader stuff is lowlevel and esoteric and I guess I cannot
> fix this myself, but maybe someone can give me a hint where to look
> maybe point to the patch that did the trick in the linux driver :-)
> // Greetings Konrad
>
>
>
>
Index: Config.kmk
===================================================================
--- Config.kmk  (revision 57571)
+++ Config.kmk  (working copy)
@@ -3831,7 +3831,7 @@
        -mno-3dnow -msoft-float -fno-asynchronous-unwind-tables -Wundef
 TEMPLATE_VBOXR0DRV_CXXFLAGS            = -fno-exceptions -fno-rtti \
        $(VBOX_GCC_WARN) -Wpointer-arith -Winline \
-       -O2 -fno-strict-aliasing -fno-common -finline-limit=8000 \
+       -O2 -fno-strict-aliasing -fno-common  \
        $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \
        -nostdinc
 TEMPLATE_VBOXR0DRV_CXXFLAGS.x86        = $(TEMPLATE_VBOXR0DRV_CFLAGS.x86)
Index: configure
===================================================================
--- configure   (revision 57571)
+++ configure   (working copy)
@@ -660,6 +660,10 @@
       else
         FLGXML2=`pkg-config libxml-2.0 --cflags`
         INCXML2=`strip_I "$FLGXML2"`
+
+       echo "------------------------"
+       echo $INCXML2;
+       
         LIBXML2=`pkg-config libxml-2.0 --libs`
         cat > $ODIR.tmp_src.cc << EOF
 #include <cstdio>
Index: src/VBox/ExtPacks/VBoxDTrace/include/VBoxDTraceTypes.h
===================================================================
--- src/VBox/ExtPacks/VBoxDTrace/include/VBoxDTraceTypes.h      (revision 57571)
+++ src/VBox/ExtPacks/VBoxDTrace/include/VBoxDTraceTypes.h      (working copy)
@@ -52,7 +52,13 @@
 typedef int64_t                     longlong_t;
 typedef uint64_t                    u_longlong_t;
 typedef uint64_t                    hrtime_t;
+
+#ifndef _ID_T_DECLARED
 typedef uint32_t                    id_t;
+#define _ID_T_DECLARED
+#endif
+
+
 typedef uint32_t                    zoneid_t;
 #endif
 #if !defined(NGREG) || !defined(RT_OS_LINUX)
@@ -462,4 +468,3 @@
 
 RT_C_DECLS_END
 #endif
-
Index: src/VBox/ExtPacks/VBoxDTrace/onnv/lib/libdtrace/common/dt_cc.c
===================================================================
--- src/VBox/ExtPacks/VBoxDTrace/onnv/lib/libdtrace/common/dt_cc.c      
(revision 57571)
+++ src/VBox/ExtPacks/VBoxDTrace/onnv/lib/libdtrace/common/dt_cc.c      
(working copy)
@@ -103,7 +103,7 @@
 # else
 #  include <unistd.h>
 # endif
-# if defined(RT_OS_WINDOWS) || defined(RT_OS_DARWIN)
+# if defined(RT_OS_WINDOWS) || defined(RT_OS_DARWIN) || defined(RT_OS_FREEBSD)
 #  ifdef _MSC_VER
 #   define ftruncate64  _chsize
 #  else
Index: src/VBox/ExtPacks/VBoxDTrace/onnv/lib/libdtrace/common/dt_options.c
===================================================================
--- src/VBox/ExtPacks/VBoxDTrace/onnv/lib/libdtrace/common/dt_options.c 
(revision 57571)
+++ src/VBox/ExtPacks/VBoxDTrace/onnv/lib/libdtrace/common/dt_options.c 
(working copy)
@@ -45,7 +45,7 @@
 #  include <sys/resource.h>
 #  include <unistd.h>
 #  include <signal.h>
-#  if defined(RT_OS_DARWIN)
+#  if defined(RT_OS_DARWIN) || defined(RT_OS_FREEBSD)
 #   define open64 open
 #  endif
 # else
Index: src/VBox/HostDrivers/Support/Makefile.kmk
===================================================================
--- src/VBox/HostDrivers/Support/Makefile.kmk   (revision 57571)
+++ src/VBox/HostDrivers/Support/Makefile.kmk   (working copy)
@@ -603,6 +603,8 @@
  VBoxDrv_LDFLAGS.win.x86  = -Entry:DriverEntry@8
  VBoxDrv_LDFLAGS.win.amd64= -Entry:DriverEntry
 
+ VBoxDrv_SOURCES.freebsd   = \
+       freebsd/SUPDrv-freebsd.c
  VBoxDrv_SOURCES.darwin   = \
        darwin/SUPDrv-darwin.cpp
  VBoxDrv_SOURCES.linux    = \
@@ -746,4 +748,3 @@
 
 endif # !VBOX_ONLY_DOCS && !VBOX_ONLY_EXTPACKS && !VBOX_ONLY_VALIDATIONKIT
 include $(FILE_KBUILD_SUB_FOOTER)
-
Index: src/VBox/Runtime/r3/posix/utf8-posix.cpp
===================================================================
--- src/VBox/Runtime/r3/posix/utf8-posix.cpp    (revision 57571)
+++ src/VBox/Runtime/r3/posix/utf8-posix.cpp    (working copy)
@@ -197,7 +197,7 @@
 #if defined(RT_OS_LINUX) || defined(RT_OS_HAIKU) || defined(RT_OS_SOLARIS) || 
(defined(RT_OS_DARWIN) && defined(_DARWIN_FEATURE_UNIX_CONFORMANCE)) /* there 
are different opinions about the constness of the input buffer. */
             cchNonRev = iconv(hIconv, (char **)&pvInputLeft, &cbInLeft, (char 
**)&pvOutputLeft, &cbOutLeft);
 #else
-            cchNonRev = iconv(hIconv, (const char **)&pvInputLeft, &cbInLeft, 
(char **)&pvOutputLeft, &cbOutLeft);
+            cchNonRev = iconv(hIconv, (char **)&pvInputLeft, &cbInLeft, (char 
**)&pvOutputLeft, &cbOutLeft);
 #endif
             if (cchNonRev != (size_t)-1)
             {
@@ -327,7 +327,7 @@
 #if defined(RT_OS_LINUX) || defined(RT_OS_HAIKU) || defined(RT_OS_SOLARIS) || 
(defined(RT_OS_DARWIN) && defined(_DARWIN_FEATURE_UNIX_CONFORMANCE)) /* there 
are different opinions about the constness of the input buffer. */
             cchNonRev = iconv(icHandle, (char **)&pvInputLeft, &cbInLeft, 
(char **)&pvOutputLeft, &cbOutLeft);
 #else
-            cchNonRev = iconv(icHandle, (const char **)&pvInputLeft, 
&cbInLeft, (char **)&pvOutputLeft, &cbOutLeft);
+            cchNonRev = iconv(icHandle, (char **)&pvInputLeft, &cbInLeft, 
(char **)&pvOutputLeft, &cbOutLeft);
 #endif
             if (cchNonRev != (size_t)-1)
             {
@@ -494,4 +494,3 @@
     }
     return rtStrConvertWrapper(pszString, cch, "", ppszString, 0, "UTF-8", 2, 
RTSTRICONV_LOCALE_TO_UTF8);
 }
-
Index: src/VBox/Storage/testcase/Makefile.kmk
===================================================================
--- src/VBox/Storage/testcase/Makefile.kmk      (revision 57571)
+++ src/VBox/Storage/testcase/Makefile.kmk      (working copy)
@@ -149,6 +149,11 @@
   endif
  else if1of ($(KBUILD_TARGET),darwin freebsd)
   vbox-img_LIBS += iconv
+  if1of ($(KBUILD_TARGET),freebsd)
+   ifdef SDK_VBOX_LIBXML2_LIBS
+    vbox-img_LIBS += xml2 lzma
+   endif
+  endif
  else ifeq ($(KBUILD_TARGET),win)
   vbox-img_SDKS.win = VBOX_NTDLL
  else ifeq ($(KBUILD_TARGET),solaris)
_______________________________________________
freebsd-virtualization@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-virtualization
To unsubscribe, send any mail to 
"freebsd-virtualization-unsubscr...@freebsd.org"

Reply via email to