I disagree again with the disk analogy here: why you were able to list some comparable issues with disks, the issues with graphics APIs are of a far greater magnitude.
Disk drivers don't typically cause your applications to crash. Disk driver bugs may have been problematic in the past but today, either due to being fixed or due to work-arounds, they're not an issue anymore for the user. Graphics driver bugs are a major user-visible issue everyday. We have detailed crash statistics for Firefox and driver issues are a significant cause of crashes. We had to add blacklists for graphics driver to bring crashiness down to acceptable levels. I don't think that any application has disk driver blacklists.
The correct disk analogy would be if a disk could only be used via the stdio and POSIX file API --- fopen, fwrite, fclose, chmod, unlink, etc. You wouldn't be able to access the disk as a block device at all, you couldn't even know or change what filesystem it's formatted as, and for reformatting/partitioning you could only use an opaque vendor-provided tool.
Posted Oct 26, 2012 15:28 UTC (Fri) by renox (subscriber, #23785)
[Link]
> I disagree again with the disk analogy here: why you were able to list some comparable issues with disks, the issues with graphics APIs are of a far greater magnitude.
Very funny, quite a few disk firmware lie(lied?) about the state of the data causing data loss in case of a crash because the firmware said that the data was on the disk even though it wasn't.
So closed source disk firmware is a very big issue, but at least you can try to select providers with good firmware..
Airlie: raspberry pi drivers are NOT useful
Posted Oct 26, 2012 17:00 UTC (Fri) by magila (subscriber, #49627)
[Link]
Speaking of lies...
Disks only "lie" about write data having been written if they are configured with write cache enabled. In this case they aren't lying at all, they are doing exactly what they were told to do. Turning off write caching will ensure no write completes without having been written to non-volatile storage. There may be isolated incidents where there are legitimate bugs in this functionality, but the overwhelming majority of drives have no issues here.
Airlie: raspberry pi drivers are NOT useful
Posted Oct 27, 2012 7:48 UTC (Sat) by farnz (guest, #17727)
[Link]
The historical problem to which people are referring is drives lying. There is a command in the ATA specification, FLUSH CACHE, documented as not completing until all data stored in drive caches is written to the disk. Back before ATX power supplies, many desktop drives completed the FLUSH CACHE command as soon as it came in, and then wrote the data from the cache to the platters as if no FLUSH CACHE command had been received, to improve benchmark results; it was sufficiently common a problem that Microsoft issued a hotfix for Windows 98SE and Windows ME that simply put in a two second delay before powering off the computer.
Airlie: raspberry pi drivers are NOT useful
Posted Oct 26, 2012 17:05 UTC (Fri) by khim (subscriber, #9252)
[Link]
Disk driver bugs may have been problematic in the past but today, either due to being fixed or due to work-arounds, they're not an issue anymore for the user.
It's quite an argument: because disks have good firmware in 2012 it's Ok to include CD Linux drivers in 1993. So you are saying that GPU firmware is still problematic in 2031 and thats the problem with Broadcom's driver? I wish to have such a precise crystal ball.
We had to add blacklists for graphics driver to bring crashiness down to acceptable levels. I don't think that any application has disk driver blacklists.
I was talking about CD drivers, not about HDD drivers. CD burning software usually has extensive list of workarounds for different devices.
The correct disk analogy would be if a disk could only be used via the stdio and POSIX file API --- fopen, fwrite, fclose, chmod, unlink, etc. You wouldn't be able to access the disk as a block device at all, you couldn't even know or change what filesystem it's formatted as, and for reformatting/partitioning you could only use an opaque vendor-provided tool.
Ah, you mean MTP? Yeah, it's supported by Linux, too. Both as host and as target.