Pricao o fail testiranju od strane Canoicala ce drzati vodu tek kad laptop bude testiran od strane samog proizvodjaca u mjeri u kolikoj je i Windows testiran, ovakve stvari se izbjegavaju na takav i SAMO takav nacin. Za Windows je hardware testiran prije "0day"-a dok za Linux postoji, ajmo reci "latencija" od izlaska hardwarea na trziste do kupovine, buganja kod nekoga tko je dovoljno pametan da skonta u cemu je problem i kome da prijavi do samog fix-a. To su dvije velike razlike i ne uzimati ih u obzir kod usporedbe je cista propaganda.
Inace kako je to Canoical mogao iztestirati taj laptop i svaki moguci hardware koji izadje i koji bi trebao raditi na Linuxu?
Sto se tice ovog buga izgleda da nije Linux specific
Code:
http://mjg59.dreamwidth.org/22855.html
Ovaj kod na Windowsu navodno uzrokuje isti bug:
Code:
#include "stdafx.h"
#include <Windows.h>
#include <WinBase.h>
int _tmain(int argc, _TCHAR* argv[])
{
char testdata[1024];
char name[] = "TestVarXX";
BOOL result;
HANDLE handle = NULL;
TOKEN_PRIVILEGES tp;
ZeroMemory(&tp, sizeof(tp));
if (!OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY | TOKEN_ADJUST_PRIVILEGES, &handle))
printf("Failed to open process\n");
if (!LookupPrivilegeValue(NULL, SE_SYSTEM_ENVIRONMENT_NAME, &tp.Privileges[0].Luid))
printf("Failed to locate privilege");
tp.PrivilegeCount = 1;
tp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
if (!AdjustTokenPrivileges(handle, FALSE, &tp, 0, NULL, 0))
printf("Failed to adjust privileges\n");
for (int i=0; i<48; i++) {
for (int j=0; j<sizeof(testdata); j++)
testdata[j] = (char)rand();
sprintf_s(name, sizeof(name), "TestVar%d", i);
result = SetFirmwareEnvironmentVariableExA(name, "{12345678-1234-1234-1234-1234567890ab}", testdata, sizeof(testdata), 0x07);
if (!result) {
printf("Received error code %ld\n", GetLastError());
break;
}
}
if (result)
printf("Success");
return 0;
}
Naisao sam i na price o brickovanim Samsugovim laptopovima kada se upgrejdalo s Windows 8 consumer preview na Windows 8 RTM, moguce je da je isti ovaj bug, medjutim malo je stvari napisano na netu da bi mogao tocno reci, vjerovatno iz razloga sto se Windows ne lincuje ovako kao Linux, neradi se slona od mrava pa se negleda svaki bit pod povecalom da se analizira tko je kriv.