Comments (8)
Thanks for the report. Unfortunately I don't have an iMac to test with, and that [25] Incompatible Version
message when starting the driver is not something I've ever saw before.
The best guess I have is that somehow the latest NTFS driver is calling on a more modern version of UEFI services that the custom Mac EFI firmware cannot provide.
According to the UEFI specs, EFI_INCOMPATIBLE_VERSION
(code 25) technically means that:
The function encountered an internal version that was incompatible with a version requested by the caller.
In layman's term it means that, just as with Operating Systems, different incompatible versions of the same library may exist (when, for instance, a newer version of the library adds a feature that wasn't available with the oldf one), and, depending on the features your application wants to use, it may not be able to make do with the older version of the library, if that's all the EFI firmware provides.
Now, considering that we seem to be seeing a somewhat related problem in pbatard/rufus#1213 that appears to have something to do with switching the compiler from Clang to EDK2 (N.B. I am simplifying a bit here) with the latest versions of UEFI:NTFS, I am starting to suspect that maybe the EDK2 has some defaults that assume that the EFI firmware you use is relatively up to date, and will request some of the newest UEFI features, which older firmwares such as the one from Apple may not be able to provide, hence the error (since Apple does its own thing, and tends to disregard EDK2 compatibility).
As such, one test I would really like you to conduct would be to try replacing your EFI\Rufus\ntfs_x64.efi
driver from the UEFI:NTFS partition with one of the ntfs_x64_gcc.efi
or ntfs_x64_msvc.efi
from https://rufus.akeo.ie/testing/ (preferably the _msvc
one. Of course, you should remove the extra _####
part so that the name is ntfs_x64.efi
) to see how it goes. Both these drivers are compiled from the latest EfiFs source (our source for the NTFS driver), but use gnu-efi rather than EDK2 to interface with the lower UEFI layers, and I believe gnu-efi may offer greater compatibility with the Mac EFI firmware.
If you confirm this, then I suppose that I'll use gnu-efi based drivers in the next version of UEFI:NTFS, since it seems to solve both issues, if I can't manage to identify what, in the EDK2, appears to create these incompatibilities with "older" firmwares.
from uefi-ntfs.
@ggrellqd, any chance you can run the test I highlighted above?
Without your help, it is next to impossible to troubleshoot this issue, or validate that a potential workaround is suitable, and I will have no choice but to close it. I hope you can appreciate that Rufus is really a one man operation with limited resources so, unlike what you may expect from a Microsoft, IBM, Intel or Google, even if you point to a specific combination of hardware that you know doesn't work, you shouldn't assert that we have means to get our hands on it...
As such, it is crucial that you remain involved in the troubleshooting process, and perform the tests requested (which we'll do our best to guide you through and make as light as possible), as we don't really have any other means to progress on this issue if you don't.
from uefi-ntfs.
@pbatard , thank you for the comments,
I just had no time to respond yet, but I will conduct the tests that your requested here:
As such, one test I would really like you to conduct would be to try replacing your EFI\Rufus\ntfs_x64.efi driver from the UEFI:NTFS partition with one of the ntfs_x64_gcc.efi or ntfs_x64_msvc.efi from https://rufus.akeo.ie/testing/ (preferably the _msvc one. Of course, you should remove the extra _#### part so that the name is ntfs_x64.efi) to see how it goes. Both these drivers are compiled from the latest EfiFs source (our source for the NTFS driver), but use gnu-efi rather than EDK2 to interface with the lower UEFI layers, and I believe gnu-efi may offer greater compatibility with the Mac EFI firmware.
I am aware that this is a one man show and I am very well familiar with the consequences of that. I appreciate your work and do not intend to put pressure on you.
Have a nice day!
Gilbert Grell
from uefi-ntfs.
Still waiting for that test. Unless you can provide an update in the next few days, I will have no choice but to close this issue.
from uefi-ntfs.
No test → Closing.
from uefi-ntfs.
Hey, I'd test that.
I have an iMac9.1 here and when I run UEFI:NTFS I get the same error as mentioned above.
The link https://rufus.akeo.ie/testing/ is dead.
btw. I think Macs (especially the old) have a 1.1 UEFI.
Kind regards,
Sporesirius
from uefi-ntfs.
Hey, I'd test that.
This is no longer needed, as the latest UEFI:NTFS embedded in Rufus uses the gnu-efi MSVC version, which is the one that was up for testing. Obviously, if I put some files up for testing, and they don't get tested, I will remove them after a few months.
btw. I think Macs (especially the old) have a 1.1 UEFI.
I don't think it's the UEFI version (I believe I tested on PCs with old UEFI firmwares too), but it's most likely a case of Apple deciding to do their own thing and removing elements that would ensure wider UEFI compatibility.
If I ever have gain access to a Mac and have time to spare (both of these hypotheses being very unlikely in the short to medium term), I may take a look and see what the story is. But otherwise, I'm afraid I have no plan to look into this further.
Still, I'll take a patch, if another developer, with time on their hand and access to an 'older' Mac wants to take the time to investigate and send a fix.
from uefi-ntfs.
Hey, I'd test that.
This is no longer needed, as the latest UEFI:NTFS embedded in Rufus uses the gnu-efi MSVC version, which is the one that was up for testing. Obviously, if I put some files up for testing, and they don't get tested, I will remove them after a few months.
btw. I think Macs (especially the old) have a 1.1 UEFI.
I don't think it's the UEFI version (I believe I tested on PCs with old UEFI firmwares too), but it's most likely a case of Apple deciding to do their own thing and removing elements that would ensure wider UEFI compatibility.
If I ever have gain access to a Mac and have time to spare (both of these hypotheses being very unlikely in the short to medium term), I may take a look and see what the story is. But otherwise, I'm afraid I have no plan to look into this further.
Still, I'll take a patch, if another developer, with time on their hand and access to an 'older' Mac wants to take the time to investigate and send a fix.
so basicly i am stuck with linux now or there is fix out ?
from uefi-ntfs.
Related Issues (20)
- Don't allow Windows to assign a drive letter to the UEFI_NTFS (FAT) partition HOT 2
- Legacy boot seems to be non-functional after using this HOT 7
- Repair uefi-ntfs partition HOT 1
- UEFI:NTFS or shim? HOT 2
- arm64 support HOT 1
- Not able to use this pendrive anywhere HOT 1
- Makes the pendrive write-protected HOT 5
- Load failure [3] unsupported HOT 18
- Cannot boot to syslinux.efi HOT 3
- Booting Windows To Go from a usb with uefi-ntfs HOT 2
- Consider documenting behavior on a local (SSD) disk HOT 2
- . HOT 1
- UEFI:NTFS hard crash on Windows Developer Kit 2023 HOT 9
- Trojan ? HOT 1
- Stuck @ This Screen (Rufus v3.22) (UEFI + GPT + NTFS) HOT 1
- Dual Boot on Windows to GO HOT 6
- Request to allow UEFI:NTFS to browse and chainload /xxx/EFI/boot/bootx64.efi in case /EFI/boot/bootx64.efi not found in NTFS PTN1 of USB Drive. HOT 2
- What will be use case of R/W NTFS Driver over Read-only NTFS Driver ? HOT 1
- Doesn't work on newer computers. HOT 1
- help HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from uefi-ntfs.