Loading .gitignore +1 −1 Original line number Diff line number Diff line Loading @@ -74,7 +74,7 @@ modules.order # # RPM spec file (make rpm-pkg) # /*.spec /kernel.spec /rpmbuild/ # Loading .mailmap +1 −0 Original line number Diff line number Diff line Loading @@ -377,6 +377,7 @@ Matthew Wilcox <willy@infradead.org> <willy@debian.org> Matthew Wilcox <willy@infradead.org> <willy@linux.intel.com> Matthew Wilcox <willy@infradead.org> <willy@parisc-linux.org> Matthias Fuchs <socketcan@esd.eu> <matthias.fuchs@esd.eu> Matthieu Baerts <matttbe@kernel.org> <matthieu.baerts@tessares.net> Matthieu CASTET <castet.matthieu@free.fr> Matti Vaittinen <mazziesaccount@gmail.com> <matti.vaittinen@fi.rohmeurope.com> Matt Ranostay <matt.ranostay@konsulko.com> <matt@ranostay.consulting> Loading Documentation/ABI/stable/sysfs-driver-dma-idxd +1 −1 Original line number Diff line number Diff line Loading @@ -84,7 +84,7 @@ What: /sys/bus/dsa/devices/dsa<m>/pasid_enabled Date: Oct 27, 2020 KernelVersion: 5.11.0 Contact: dmaengine@vger.kernel.org Description: To indicate if PASID (process address space identifier) is Description: To indicate if user PASID (process address space identifier) is enabled or not for this device. What: /sys/bus/dsa/devices/dsa<m>/state Loading Documentation/ABI/testing/sysfs-class-led +9 −0 Original line number Diff line number Diff line Loading @@ -59,6 +59,15 @@ Description: brightness. Reading this file when no hw brightness change event has happened will return an ENODATA error. What: /sys/class/leds/<led>/color Date: June 2023 KernelVersion: 6.5 Description: Color of the LED. This is a read-only file. Reading this file returns the color of the LED as a string (e.g: "red", "green", "multicolor"). What: /sys/class/leds/<led>/trigger Date: March 2006 KernelVersion: 2.6.17 Loading Documentation/ABI/testing/sysfs-driver-ufs +0 −247 Original line number Diff line number Diff line Loading @@ -1437,180 +1437,6 @@ Description: If avail_wb_buff < wb_flush_threshold, it indicates that WriteBooster buffer needs to be flushed, otherwise it is not necessary. What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/hpb_version What: /sys/bus/platform/devices/*.ufs/device_descriptor/hpb_version Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the HPB specification version. The full information about the descriptor can be found in the UFS HPB (Host Performance Booster) Extension specifications. Example: version 1.2.3 = 0123h The file is read only. What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/hpb_control What: /sys/bus/platform/devices/*.ufs/device_descriptor/hpb_control Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows an indication of the HPB control mode. 00h: Host control mode 01h: Device control mode The file is read only. What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_region_size What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_region_size Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the bHPBRegionSize which can be calculated as in the following (in bytes): HPB Region size = 512B * 2^bHPBRegionSize The file is read only. What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_number_lu What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_number_lu Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the maximum number of HPB LU supported by the device. 00h: HPB is not supported by the device. 01h ~ 20h: Maximum number of HPB LU supported by the device The file is read only. What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_subregion_size What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_subregion_size Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the bHPBSubRegionSize, which can be calculated as in the following (in bytes) and shall be a multiple of logical block size: HPB Sub-Region size = 512B x 2^bHPBSubRegionSize bHPBSubRegionSize shall not exceed bHPBRegionSize. The file is read only. What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_max_active_regions What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_max_active_regions Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the maximum number of active HPB regions that is supported by the device. The file is read only. What: /sys/class/scsi_device/*/device/unit_descriptor/hpb_lu_max_active_regions Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the maximum number of HPB regions assigned to the HPB logical unit. The file is read only. What: /sys/class/scsi_device/*/device/unit_descriptor/hpb_pinned_region_start_offset Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the start offset of HPB pinned region. The file is read only. What: /sys/class/scsi_device/*/device/unit_descriptor/hpb_number_pinned_regions Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the number of HPB pinned regions assigned to the HPB logical unit. The file is read only. What: /sys/class/scsi_device/*/device/hpb_stats/hit_cnt Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the number of reads that changed to HPB read. The file is read only. What: /sys/class/scsi_device/*/device/hpb_stats/miss_cnt Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the number of reads that cannot be changed to HPB read. The file is read only. What: /sys/class/scsi_device/*/device/hpb_stats/rcmd_noti_cnt Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the number of response UPIUs that has recommendations for activating sub-regions and/or inactivating region. The file is read only. What: /sys/class/scsi_device/*/device/hpb_stats/rcmd_active_cnt Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: For the HPB device control mode, this entry shows the number of active sub-regions recommended by response UPIUs. For the HPB host control mode, this entry shows the number of active sub-regions recommended by the HPB host control mode heuristic algorithm. The file is read only. What: /sys/class/scsi_device/*/device/hpb_stats/rcmd_inactive_cnt Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: For the HPB device control mode, this entry shows the number of inactive regions recommended by response UPIUs. For the HPB host control mode, this entry shows the number of inactive regions recommended by the HPB host control mode heuristic algorithm. The file is read only. What: /sys/class/scsi_device/*/device/hpb_stats/map_req_cnt Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the number of read buffer commands for activating sub-regions recommended by response UPIUs. The file is read only. What: /sys/class/scsi_device/*/device/hpb_params/requeue_timeout_ms Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the requeue timeout threshold for write buffer command in ms. The value can be changed by writing an integer to this entry. What: /sys/bus/platform/drivers/ufshcd/*/attributes/max_data_size_hpb_single_cmd What: /sys/bus/platform/devices/*.ufs/attributes/max_data_size_hpb_single_cmd Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the maximum HPB data size for using a single HPB command. === ======== 00h 4KB 01h 8KB 02h 12KB ... FFh 1024KB === ======== The file is read only. What: /sys/bus/platform/drivers/ufshcd/*/flags/hpb_enable What: /sys/bus/platform/devices/*.ufs/flags/hpb_enable Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the status of HPB. == ============================ 0 HPB is not enabled. 1 HPB is enabled == ============================ The file is read only. Contact: Daniil Lunev <dlunev@chromium.org> What: /sys/bus/platform/drivers/ufshcd/*/capabilities/ What: /sys/bus/platform/devices/*.ufs/capabilities/ Loading Loading @@ -1648,76 +1474,3 @@ Description: Indicates status of Write Booster. The file is read only. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/activation_thld Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: In host control mode, reads are the major source of activation trials. Once this threshold hs met, the region is added to the "to-be-activated" list. Since we reset the read counter upon write, this include sending a rb command updating the region ppn as well. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/normalization_factor Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: In host control mode, we think of the regions as "buckets". Those buckets are being filled with reads, and emptied on write. We use entries_per_srgn - the amount of blocks in a subregion as our bucket size. This applies because HPB1.0 only handles single-block reads. Once the bucket size is crossed, we trigger a normalization work - not only to avoid overflow, but mainly because we want to keep those counters normalized, as we are using those reads as a comparative score, to make various decisions. The normalization is dividing (shift right) the read counter by the normalization_factor. If during consecutive normalizations an active region has exhausted its reads - inactivate it. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/eviction_thld_enter Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: Region deactivation is often due to the fact that eviction took place: A region becomes active at the expense of another. This is happening when the max-active-regions limit has been crossed. In host mode, eviction is considered an extreme measure. We want to verify that the entering region has enough reads, and the exiting region has much fewer reads. eviction_thld_enter is the min reads that a region must have in order to be considered a candidate for evicting another region. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/eviction_thld_exit Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: Same as above for the exiting region. A region is considered to be a candidate for eviction only if it has fewer reads than eviction_thld_exit. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/read_timeout_ms Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: In order not to hang on to "cold" regions, we inactivate a region that has no READ access for a predefined amount of time - read_timeout_ms. If read_timeout_ms has expired, and the region is dirty, it is less likely that we can make any use of HPB reading it so we inactivate it. Still, deactivation has its overhead, and we may still benefit from HPB reading this region if it is clean - see read_timeout_expiries. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/read_timeout_expiries Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: If the region read timeout has expired, but the region is clean, just re-wind its timer for another spin. Do that as long as it is clean and did not exhaust its read_timeout_expiries threshold. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/timeout_polling_interval_ms Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: The frequency with which the delayed worker that checks the read_timeouts is awakened. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/inflight_map_req Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: In host control mode the host is the originator of map requests. To avoid flooding the device with map requests, use a simple throttling mechanism that limits the number of inflight map requests. Loading
.gitignore +1 −1 Original line number Diff line number Diff line Loading @@ -74,7 +74,7 @@ modules.order # # RPM spec file (make rpm-pkg) # /*.spec /kernel.spec /rpmbuild/ # Loading
.mailmap +1 −0 Original line number Diff line number Diff line Loading @@ -377,6 +377,7 @@ Matthew Wilcox <willy@infradead.org> <willy@debian.org> Matthew Wilcox <willy@infradead.org> <willy@linux.intel.com> Matthew Wilcox <willy@infradead.org> <willy@parisc-linux.org> Matthias Fuchs <socketcan@esd.eu> <matthias.fuchs@esd.eu> Matthieu Baerts <matttbe@kernel.org> <matthieu.baerts@tessares.net> Matthieu CASTET <castet.matthieu@free.fr> Matti Vaittinen <mazziesaccount@gmail.com> <matti.vaittinen@fi.rohmeurope.com> Matt Ranostay <matt.ranostay@konsulko.com> <matt@ranostay.consulting> Loading
Documentation/ABI/stable/sysfs-driver-dma-idxd +1 −1 Original line number Diff line number Diff line Loading @@ -84,7 +84,7 @@ What: /sys/bus/dsa/devices/dsa<m>/pasid_enabled Date: Oct 27, 2020 KernelVersion: 5.11.0 Contact: dmaengine@vger.kernel.org Description: To indicate if PASID (process address space identifier) is Description: To indicate if user PASID (process address space identifier) is enabled or not for this device. What: /sys/bus/dsa/devices/dsa<m>/state Loading
Documentation/ABI/testing/sysfs-class-led +9 −0 Original line number Diff line number Diff line Loading @@ -59,6 +59,15 @@ Description: brightness. Reading this file when no hw brightness change event has happened will return an ENODATA error. What: /sys/class/leds/<led>/color Date: June 2023 KernelVersion: 6.5 Description: Color of the LED. This is a read-only file. Reading this file returns the color of the LED as a string (e.g: "red", "green", "multicolor"). What: /sys/class/leds/<led>/trigger Date: March 2006 KernelVersion: 2.6.17 Loading
Documentation/ABI/testing/sysfs-driver-ufs +0 −247 Original line number Diff line number Diff line Loading @@ -1437,180 +1437,6 @@ Description: If avail_wb_buff < wb_flush_threshold, it indicates that WriteBooster buffer needs to be flushed, otherwise it is not necessary. What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/hpb_version What: /sys/bus/platform/devices/*.ufs/device_descriptor/hpb_version Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the HPB specification version. The full information about the descriptor can be found in the UFS HPB (Host Performance Booster) Extension specifications. Example: version 1.2.3 = 0123h The file is read only. What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/hpb_control What: /sys/bus/platform/devices/*.ufs/device_descriptor/hpb_control Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows an indication of the HPB control mode. 00h: Host control mode 01h: Device control mode The file is read only. What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_region_size What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_region_size Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the bHPBRegionSize which can be calculated as in the following (in bytes): HPB Region size = 512B * 2^bHPBRegionSize The file is read only. What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_number_lu What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_number_lu Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the maximum number of HPB LU supported by the device. 00h: HPB is not supported by the device. 01h ~ 20h: Maximum number of HPB LU supported by the device The file is read only. What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_subregion_size What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_subregion_size Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the bHPBSubRegionSize, which can be calculated as in the following (in bytes) and shall be a multiple of logical block size: HPB Sub-Region size = 512B x 2^bHPBSubRegionSize bHPBSubRegionSize shall not exceed bHPBRegionSize. The file is read only. What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_max_active_regions What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_max_active_regions Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the maximum number of active HPB regions that is supported by the device. The file is read only. What: /sys/class/scsi_device/*/device/unit_descriptor/hpb_lu_max_active_regions Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the maximum number of HPB regions assigned to the HPB logical unit. The file is read only. What: /sys/class/scsi_device/*/device/unit_descriptor/hpb_pinned_region_start_offset Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the start offset of HPB pinned region. The file is read only. What: /sys/class/scsi_device/*/device/unit_descriptor/hpb_number_pinned_regions Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the number of HPB pinned regions assigned to the HPB logical unit. The file is read only. What: /sys/class/scsi_device/*/device/hpb_stats/hit_cnt Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the number of reads that changed to HPB read. The file is read only. What: /sys/class/scsi_device/*/device/hpb_stats/miss_cnt Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the number of reads that cannot be changed to HPB read. The file is read only. What: /sys/class/scsi_device/*/device/hpb_stats/rcmd_noti_cnt Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the number of response UPIUs that has recommendations for activating sub-regions and/or inactivating region. The file is read only. What: /sys/class/scsi_device/*/device/hpb_stats/rcmd_active_cnt Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: For the HPB device control mode, this entry shows the number of active sub-regions recommended by response UPIUs. For the HPB host control mode, this entry shows the number of active sub-regions recommended by the HPB host control mode heuristic algorithm. The file is read only. What: /sys/class/scsi_device/*/device/hpb_stats/rcmd_inactive_cnt Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: For the HPB device control mode, this entry shows the number of inactive regions recommended by response UPIUs. For the HPB host control mode, this entry shows the number of inactive regions recommended by the HPB host control mode heuristic algorithm. The file is read only. What: /sys/class/scsi_device/*/device/hpb_stats/map_req_cnt Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the number of read buffer commands for activating sub-regions recommended by response UPIUs. The file is read only. What: /sys/class/scsi_device/*/device/hpb_params/requeue_timeout_ms Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the requeue timeout threshold for write buffer command in ms. The value can be changed by writing an integer to this entry. What: /sys/bus/platform/drivers/ufshcd/*/attributes/max_data_size_hpb_single_cmd What: /sys/bus/platform/devices/*.ufs/attributes/max_data_size_hpb_single_cmd Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the maximum HPB data size for using a single HPB command. === ======== 00h 4KB 01h 8KB 02h 12KB ... FFh 1024KB === ======== The file is read only. What: /sys/bus/platform/drivers/ufshcd/*/flags/hpb_enable What: /sys/bus/platform/devices/*.ufs/flags/hpb_enable Date: June 2021 Contact: Daejun Park <daejun7.park@samsung.com> Description: This entry shows the status of HPB. == ============================ 0 HPB is not enabled. 1 HPB is enabled == ============================ The file is read only. Contact: Daniil Lunev <dlunev@chromium.org> What: /sys/bus/platform/drivers/ufshcd/*/capabilities/ What: /sys/bus/platform/devices/*.ufs/capabilities/ Loading Loading @@ -1648,76 +1474,3 @@ Description: Indicates status of Write Booster. The file is read only. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/activation_thld Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: In host control mode, reads are the major source of activation trials. Once this threshold hs met, the region is added to the "to-be-activated" list. Since we reset the read counter upon write, this include sending a rb command updating the region ppn as well. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/normalization_factor Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: In host control mode, we think of the regions as "buckets". Those buckets are being filled with reads, and emptied on write. We use entries_per_srgn - the amount of blocks in a subregion as our bucket size. This applies because HPB1.0 only handles single-block reads. Once the bucket size is crossed, we trigger a normalization work - not only to avoid overflow, but mainly because we want to keep those counters normalized, as we are using those reads as a comparative score, to make various decisions. The normalization is dividing (shift right) the read counter by the normalization_factor. If during consecutive normalizations an active region has exhausted its reads - inactivate it. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/eviction_thld_enter Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: Region deactivation is often due to the fact that eviction took place: A region becomes active at the expense of another. This is happening when the max-active-regions limit has been crossed. In host mode, eviction is considered an extreme measure. We want to verify that the entering region has enough reads, and the exiting region has much fewer reads. eviction_thld_enter is the min reads that a region must have in order to be considered a candidate for evicting another region. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/eviction_thld_exit Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: Same as above for the exiting region. A region is considered to be a candidate for eviction only if it has fewer reads than eviction_thld_exit. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/read_timeout_ms Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: In order not to hang on to "cold" regions, we inactivate a region that has no READ access for a predefined amount of time - read_timeout_ms. If read_timeout_ms has expired, and the region is dirty, it is less likely that we can make any use of HPB reading it so we inactivate it. Still, deactivation has its overhead, and we may still benefit from HPB reading this region if it is clean - see read_timeout_expiries. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/read_timeout_expiries Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: If the region read timeout has expired, but the region is clean, just re-wind its timer for another spin. Do that as long as it is clean and did not exhaust its read_timeout_expiries threshold. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/timeout_polling_interval_ms Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: The frequency with which the delayed worker that checks the read_timeouts is awakened. What: /sys/class/scsi_device/*/device/hpb_param_sysfs/inflight_map_req Date: February 2021 Contact: Avri Altman <avri.altman@wdc.com> Description: In host control mode the host is the originator of map requests. To avoid flooding the device with map requests, use a simple throttling mechanism that limits the number of inflight map requests.