haiku/headers/private
David Sebek 8b1d35bdbb Improve SCSI and SATA trim support
Fixes:
* scsi: Fix a bug that caused the device capacity to be set
  to an undefined value for some large SCSI devices when
  READ CAPACITY (16) was used
* ahci: Fix VPD page reporting so that it does not return
  undefined values
* ahci: Set the write bit to true when sending a DATA SET
  MANAGEMENT (trim) command to a device. The command would
  otherwise fail and time out on some devices.

Improvements:
* scsi: Extend the READ CAPACITY (16) support to also
  include logical block provisioning information
* scsi: Prefer READ CAPACITY (16) over READ CAPACITY (10)
  on devices that are expected to support this command
* scsi, ahci: Enable trim on SCSI and SATA devices that
  are expected to support trim and which correctly report
  trim support
* ahci: Redo the implementation of the SCSI UNMAP command
* scsi: Redo UNMAP-related code
* scsi: Add support for UNMAP via WRITE SAME (10) and
  WRITE SAME (16) commands
* When copying trim ranges between different data types,
  make sure that the values don't change (detect overflows)
* Report the number of trimmed blocks even if the trim
  operation fails

Change-Id: Ie5fc993bbbc19546b4308138ba10184bf7b9986a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4157
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2021-07-16 18:35:57 +00:00
..
app BCursor: add a constructor with bitmap and point 2020-10-08 08:23:31 +00:00
audio audio: Move hmulti_audio driver API to private audio headers 2018-10-23 16:33:19 +02:00
binary_compatibility BControl: Add icon support 2013-12-22 02:48:25 +01:00
bluetooth Bluetooth Pref: Inactiveate button and things that don't do anything. 2021-04-10 20:28:43 +00:00
debug Move comment to correct function. 2013-05-01 19:52:00 -04:00
debugger Add (void*) casts to memcpy/memset invocations to appease GCC 8. 2019-05-24 14:21:37 -04:00
device acpi_battery: support for _BIX method. 2020-03-10 13:14:09 +00:00
drivers Improve SCSI and SATA trim support 2021-07-16 18:35:57 +00:00
file_systems fs_shell: Prevent inclusion of BSD headers; fix DeviceOpener. 2020-05-10 12:44:46 -04:00
firewire Minor tweaks to fix the build after the last commit. 2019-03-26 20:06:09 -04:00
fs_shell libroot: remove delete_driver_settings 2021-05-31 06:51:45 +00:00
graphics intel_extreme: gen4 displayport now sets modes, dualhead clone works. 2021-07-02 14:19:58 +00:00
i2c i2c: add acquire_bus/release_bus hooks 2020-04-12 16:55:52 +00:00
index_server Add a CLucene full-text add-on. 2010-10-28 15:22:52 +00:00
input usb_hid: Enable digitizers to produce button events from tip and barrel switches 2021-01-26 18:56:32 +00:00
interface Decorator: Introduce Scroll bar size call 2021-05-03 16:42:32 +00:00
kernel Fix trim-related issues 2021-07-16 18:35:34 +00:00
libroot Implement stack protection support 2021-05-03 17:52:31 +00:00
locale locale kit: allow creating a catalog without entry_ref 2020-09-01 18:14:57 +00:00
mail build: Cleanup of libgnuregex usage. 2018-03-07 18:04:31 -05:00
media media_kit: Dynamic allocation of ChunkCache based on media 2021-01-03 20:51:37 +00:00
midi Midi: Remove some duplicated code 2015-08-27 11:51:57 +02:00
mount * Removed now obsolete notification (this was not even used in Tracker 2009-10-07 19:31:57 +00:00
net libnetapi.so: make headers of deprecated classes private 2021-01-27 19:53:11 +00:00
netservices Remove unneeded iostream includes 2021-05-25 11:50:45 +00:00
notification Notification_Server: Added ability to choose position of notifications 2017-12-24 12:02:38 +01:00
package Package Kit: Proper Installation for First Boot Packages 2021-03-14 09:10:18 +00:00
preferences Fix glitch in Screen prefs when changing background color. 2017-04-30 10:29:39 +02:00
print PictureIterator.h: fix header guard spelling 2016-07-10 17:11:20 +02:00
runtime_loader runtime_loader: dlopen() should respect RPATH of the loading module 2021-03-18 08:19:55 +00:00
screen_saver ScreenSaver: Rename BuildScreenSaverDefaultSettingsView 2016-04-13 15:50:30 -07:00
shared Make Bluetooth Pref use BMessage to save data. 2021-06-02 13:44:13 +00:00
storage Speed up BResource loading 2020-06-01 14:09:54 +00:00
support Add ZstdCompressionAlgorithm. 2017-11-24 21:35:49 +01:00
syslog_daemon syslog_daemon: Converted to BServer. 2015-07-22 20:40:47 +02:00
system POSIX: introduce ppoll 2021-06-19 18:09:25 +00:00
textencoding missing comment tokens 2007-06-20 21:20:11 +00:00
tracker Tracker FindPanel: Make a copy of fDeviceIcon 2016-07-31 19:42:39 -07:00
usb_vision some copyright headers clean up 2010-04-12 21:02:09 +00:00
userlandfs Relicense all of Ingo's BSD/MIT+advertising clause'd code as plain MIT. 2019-08-30 18:27:35 -04:00
virtio virtio: add interrupt declarations 2021-06-06 19:03:30 +00:00
vmdk Moved vmdkimage.h to a shareable place, cleaned it up a bit, and renamed it to 2009-10-01 03:08:46 +00:00
wmi wmi: add ACPI WMI implementation 2020-04-20 14:56:59 +00:00