invalid UEFI volume when capturing AMI BIOS /ACPI 2.0 - backup

I want to backup BIOS. I use Universal BIOS Backup ToolKit V2.0.
Reading and backup are done without any error. When I want to open the captured BIOS .rom using UEFITool.exe the error occurs:
and the message is displayed:
parseBios: one of volumes inside overlaps the end of data
CPU-Z info:
I think that BIOS I capture is somehow corrupted. How should I capture it properly?
EDIT:
The backup file produced by Universal BIOS Backup ToolKit.

That Apollo Lake BIOS uses IFWI 2.0 layout for BIOS region (parsing of which is only supported by the very latest UEFITool NE).
Most IFWI 2.0 images have a well-known bug, that prevents UEFITool 0.2x from parsing them correctly. This bug is very popular, so UEFITool NE will get a workaround for it (IFWI 2.0 support issue).

Related

Vulkan SDK setup: vkEnumerateInstanceExtensionProperties failed to find the VK_KHR_surface extension

I tried to run the Vulkan cube example after downloading the Vulkan SDK but get the following
vkEnumerateInstanceExtensionProperties failed to find the VK_KHR_surface extension.
Do you have a compatible Vulkan installable client driver (ICD) installed?
I have a Nvidia GK107M [Geforce GT 755M] graphics card.
Regarding the graphics driver, the output of
lshw -c video | grep 'configuration' is
configuration: driver=nvidia latency=0
configuration: driver=i915 latency=0
And when I see through the driver manager it shows Nvidia-352 graphics driver. Earlier I was using Nouveau display driver which I disabled thinking that it might not support Vulkan and the Nvidia driver would. But still the same thing persists.
On running .\vulkaninfo I got a message saying that vulkan instance creation failed with VK_ERROR_INCOMPATIBLE_DRIVER.
P.S: I am using the latest Vulkan SDK releases today only. I am going to try the older SDK versions. Maybe they would work.
P.P.S: I have run into a black /blank screen issue after updating Nvidia driver to 370 and rebooting.
Optimus. Well, there you have it. To quote directly from the driver package documents:
Some designs incorporating supported GPUs may not be compatible with the NVIDIA Linux driver: in particular, notebook and all-in-one desktop designs with switchable (hybrid) or Optimus graphics will not work if means to disable the integrated graphics in hardware are not available. Hardware designs will vary from manufacturer to manufacturer, so please consult with a system's manufacturer to determine whether that particular system is compatible.
So, you need to disable it (in BIOS) if possible (as it says above).
Or get updated driver from the notebook manufacturer (Well, as much chance as seeing Android update on chinatablet. If they even bother with linux support.).
Or expect exactly the kind of problems and hackery with no guaranteed success you face.
The v352 driver you have wouldn't support Vulkan. It is older than Vulkan.
Nouveau to my knowledge doesn't support Vulkan (yet) either.
There's 3 places that the Vulkan loader looks to find a Linux driver's JSON definition file:
/etc/vulkan/icd.d
/usr/share/vulkan/icd.d
And wherever you define "VK_DRIVERS_PATH" to.
If you don't have a JSON in one of those locations for your Nvidia driver that would be a problem.
Secondly, if you do have the JSON file, but it's "library_path" entry doesn't point to a valid driver, that would also not work.
Try looking for those files.

Vulkan Building error

I want to build a sample included in Vulkan SDK.
I downloaded the SDK from http://vulkan.lunarg.com and install it.
Then I opened the Visual Studio (I have a 2013 version), I open the solution from this path: (C:\VulkanSDK\1.0.13.0\Demos). I choose DEMOS.sln file. Then when I click on LocalWindowsDebugger this message pops up:
vkCreateInstance Failure:
vkEnumerateInstanceExtensionProperties failed to find the VK_KHR_surface extention.
Do you have a compatible Vulkan installable client driver (ICD) insatalled? Please look at the Getting Started guide for additional information.
I have never worked with vulkan, but as it named "Demo", I think that everything inside of it should be set in order to work.
I searched the web, but as it is new, there are few resources talked about it.
What is ICD? and how to install it? (is it different from installer of VulkanSDK?) OR this error is about completely different property? like setting properties of VisualStudio?
ICD is basically your GPU driver...
Both the SDK and driver install vulkaninfo app. Use it to determine what extensions you have and whatnot.
BTW Some time ago AMD drivers forgot to export the extensions like VK_KHR_surface. Make sure you are using the latest driver (16.5.2.1 on AMD and 365.19 on NVIDIA as of time of writing).
Also you need supported GPU. Consult:
NVIDIA supported GPUs
AMD supported GPUs
Khronos maintained list
BTW: All the demos work for me.
Do you have a compatible Vulkan installable client driver (ICD) installed?
This message tells you that Vulkan's loader wasn't able to find a Vulkan driver on your device. ICD is the installable client driver that comes with the driver of your graphics card.
What GPU are you using and do you have a driver installed that actually supports Vulkan? Note that while your card may support OpenGL it may not support Vulkan.
Check NVIDIA(performance mode) is selected at "Nvidia X Server Settings" application if you are using ubuntu.

Automatic packing of server-side product as Docker and OVA image

We develop a server-side solution and to ease its deployment we would like to provide our cutomers with two options:
1. Docker image
2. VM image in OVA format
The images should be automatically created by our build machine.
As of today, we use packer for this purpose. First we create docker image and then update that image in preconfigured virtual machine image (using 'virtualbox-ovf' builder). This works pretty well, but there are some problems with this solution.
First, our vm includes docker framework and two OSes (host's and docker's), so our VM image is ~twice bigger than docker. Second, to base our solution on another linux distro, we should manually configure new VM machine.
We are looking for 'Dockerfile'-style solution to create and configure VM automatically and then export it in OVA format. 'virtualbox-iso' builder is the obvious way to do this, but the building process will be much longer.
If you are willing to use Debian as your base OS then you could look at TurnKey Linux's TKLDev. It's probably a bit of a learning curve initially but it's a pretty cool thing IMO (although I'm very biased - see below disclaimer). TKLDev will build you a TurnKey (Debian based) ISO with your software installed on top. Then using Buildtasks you can convert the ISO to OVA, VMDK, LXC, Docker, OpenStack, etc...
Unfortunately Buildtasks is not very well documented but significant chunks of it are in bash so if you are handy with a Linux commandline you could work it out. Otherwise ask on the TurnKey forums.
The initial development (from Packer to TKLDev) may take a little while, but once the heavy lifting is done the creation of an ISO (in a guest VM on a moderm multicore CPU PC) takes about 10-15 mins and the OVA probably another ~5; Docker another ~5.
If you wanted to make it build automatically then you could use a hook to trigger a fresh TKLDev build (including the buildtasks image creation) everytime a commit was made to a repo. I know that git supports this but I assume that other version control systems allow something similar.
Also if the appliance that you are making is open source then perhaps it could be added to the TurnKey Linux library?
Disclaimer: I work with TurnKey Linux. :)
FWIW this is essentially the process we use to create our library of appliances in most virtualisation formats known to human kind!

OpenCl: Minimal configuration to work with AMD GPU

Suppose we have AMD GPU (for example Radeon HD 7970) and minimal linux system without X and etc.
What should be installed and what should be launched and how it should be launched to have proper OpenCL environment? In best case it should be headless environment.
Requirements to environment:
GPU visible by OpenCL programs (clinfo for example)
It is possible to monitor temperature and set fan speed (for example using aticonfig).
P.S. Simple install Xserver, catalyst and run X :0 won't work properly. See X server with fglrx driver won't responce after exactly 49 accesses to X server
UPD When you use AMD GPU on linux, OpenCL applications don't see AMD GPU if Xserver isn't launched.
I had similar problem, asked a question and had succeed solving it by myself.
For R9 290 cards and newer i assume you have:
Built kernel 4.14 or later, with amdgpu driver support. There is option in linux kernel config under Graphics Support.
All nesesary firmware .bin blobs are incorporated. To do so easily you may edit buildroot/package/linux-firmware/* contents for buildroot, and manually add BR2_PACKAGE_LINUX_FIRMWARE_AMDGPU option by yourself, along with BR2_PACKAGE_LINUX_FIRMWARE_RADEON (use it as a template). Actually we should post that update to their git.
When booting you should see appropriate dmesg messages about amdgpu initializing, per each adapter. And screen mode should be switched. If you still see large console text and no videomode switch occured during init then you have problem in kernel/firmware, you should fix that out first.
To answer second question, controlling fan speeds/temperatures is achieved via powerplay filesystem, eg /sys/class/drm/.. like this:
cd sys/class/drm/card0/device/hwmon/hwmon0
echo 1 > pwm1_enable
cat pwm1_max > pwm1
You may dig a bit deeper and find powertune parameters nearby, in device folder.
But instead of using /sys/class/drm/card0/device/pp_dpm_sclk i highly recommend flashing that values directly in cards' bios. Set with required frequencies/voltages, as it is more reliable, stable and api independent - you either init it, or not :)
PS. Also put away 7970, buy something a bit newer. I dont know if it is still supported in the latest drivers, we havent such an old card by hands right now. I tested 290, 390, 480, 580 cards series. (for R9 270, miner fails to build cl code). For older cards better to use some older software <=16.40 and maybe a bit older kernel <=4.13

Simple-OpenNI for Processing fatal errors with the Kinect

I have been using SimpleOpenNI, a wrapper for Processing, all summer now. I use it for the Kinect to make games and demos. Last week, I have been getting a fatal error in my processing window and none of the SimpleOpenNI projects will work. Here is the error:
SimpleOpenNI Version 0.20
A fatal error has been detected by the Java Runtime Environment:
EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x72e8f955, pid=4596, tid=4624
JRE version: 6.0_24-b07
Java VM: Java HotSpot(TM) Client VM (19.1-b02 mixed mode windows-x86 )
Problematic frame:
C [OpenNI.dll+0xf955]
An error report file with more information is saved as:
C:\Users\mss042\Desktop\processing-1.5.1\hs_err_pid4596.log
If you would like to submit a bug report, please visit:
http://java.sun.com/webapps/bugreport/crash.jsp
The crash happened outside the Java Virtual Machine in native code.
See problematic frame for where to report the bug.
It appears as if the new OpenNI/NITE/SensorKinect drivers do not work with the SimpleOpenNI wrapper. I have tried it with people using the old drivers and everything still works. Problem is, you cannot download the old drivers off of the websites so I cannot test if it's that or not. You can see everything I've downloaded from the simpleopenni site: http://code.google.com/p/simple-openni/
Any help with this error would be appreciated. Thanks.
Mike
It looks like there's a problem with OpenNI.dll. Make sure that:
You have the dll (It should be in Program Files where you've installed OpenNI)
Make sure you've got the Environment Variables for the Open NI paths and that the paths are correct, otherwise, you might have the .dll file, but the .jnilib wouldn't know where it is.
Had a Kinect Workshop in Uni, and my colleagues using Windows all had issues with the drivers,
so I'm just passing on what they did:
Even though they had 64-bit versions of Windows they used the 32-bit version, and used Brekel OpenNI Kinect Auto Installer - Developer Edition v1.3.2.3.exe(direct link via developkinect.com) after reading this message:
Comment 4 by tijmenva...#gmail.com, Oct 21, 2011 Hey all I have Solved
the unsatisfied link dll error on windows 7 64 bits by installing java
runtime (jre-7u1-windows-i586.exe)and (Brekel OpenNI Kinect Auto
Installer - Developer Edition v1.3.2.3.exe) I uninstalled everything
and than it worked :)
hope this helpes
in Issue#17 on the SimpleOpenNI project issues page.
Another colleague used Synapse and OSC in Processing instead of SimpleOpenNI, but she had loads of errors with the drivers (basically spent a few good hours uninstalling/installing different versions). In her case, uninstalling any previous partial or complete drivers from the machine and deleting any registry entries related to PrimeSense(Sensor, Nite) and OpenNI, then using the installers from the links on the Synapse page, worked for her.
HTH
This is a long shot, but that exact error is also given if the Kinect USB and/or power supply simply becomes unplugged. Thought it was worth mentioning as it is not obvious from the error message itself and it may help someone out if they kicked their power supply and started searching for the above exception :)