String sharedPath = "";
boolean isHwVirtual = false;
String hwVirtualCompare = "";
-
+ String haxError = "hax_error=";
+ boolean isHaxError = false;
+
if ( SkinUtil.isLinuxPlatform() ) {
hwVirtualCompare = "-enable-kvm";
} else if ( SkinUtil.isWindowsPlatform() ) {
} else if ( hwVirtualCompare.equals( arg ) ) {
isHwVirtual = true;
+ } else if ( arg.startsWith( haxError ) ) {
+ String[] sp = arg.split( "=" );
+ if( 1 < sp.length ) {
+ isHaxError = Boolean.parseBoolean( sp[1] );
+ }
}
}
}
if( isHwVirtual ) {
- result.put( "HW Virtualization", "Supported" );
+ if( isHaxError ) {
+ result.put( "HW Virtualization State", "Disable(insufficient memory for driver)" );
+ }else {
+ result.put( "HW Virtualization State", "Enable" );
+ }
}else {
- result.put( "HW Virtualization", "Not Supported" );
+ result.put( "HW Virtualization State", "Disable" );
}
if ( StringUtil.isEmpty( imagePath ) ) {
#include "qemu-common.h"
#include "sysemu.h"
+#ifdef _WIN32
+#include "target-i386/hax-i386.h"
+#endif
+
MULTI_DEBUG_CHANNEL(qemu, skin_operation);
total_len += delimiter_len;
}
+#ifdef _WIN32
+ const int HAX_LEN = 32;
+ char hax_error[HAX_LEN];
+ memset( hax_error, 0, HAX_LEN );
+
+ int hax_err_len = sprintf( hax_error + hax_err_len, "%s", "hax_error=" );
+
+ int error = 0;
+ if ( !ret_hax_init ) {
+ if ( -ENOSPC == ret_hax_init ) {
+ error = 1;
+ }
+ }
+ hax_err_len += sprintf( hax_error + hax_err_len, "%s", error ? "true" : "false" );
+ total_len += hax_err_len;
+#endif
+
char* info_data = g_malloc0( total_len );
if ( !info_data ) {
g_free( detail_info );
}
+#ifdef _WIN32
+ sprintf( info_data + total_len, "%s", hax_error );
+ total_len += hax_err_len;
+#endif
+
+ INFO( "################## detail info data ####################\n" );
+ INFO( "%s\n", info_data );
+
detail_info->data = info_data;
detail_info->data_length = total_len;
#ifndef MARUSKIN_OPERATION_H_
#define MARUSKIN_OPERATION_H_
+extern int ret_hax_init;
+
struct QemuSurfaceInfo {
unsigned char* pixel_data;
int pixel_data_length;
int skin_disabled = 0;
#endif
+int ret_hax_init = 0;
+
static const char *data_dir;
const char *bios_name = NULL;
enum vga_retrace_method vga_retrace_method = VGA_RETRACE_DUMB;
if (!hax_disabled)
{
ret = hax_init();
+ ret_hax_init = ret;
if (ret && (ret != -ENOSPC))
dprint("No accelerator found.\n");
else {