ufshci: initialize desc_size for non-descriptor query requests

The flag and attribute query builders left param.desc_size
uninitialized, so stack garbage was sent as the query UPIU length
field. Devices generally ignore the length for these opcodes, which
hid the bug. Zero it explicitly.

Sponsored by:           Samsung Electronics
Reviewed by:		imp (mentor)
Differential Revision:	https://reviews.freebsd.org/D58665
This commit is contained in:
Jaeyoon Choi committed 2026-08-10 02:28:52 +00:00
1 parent 50a00f10d8
commit af00e00f23
1 file changed
+5
+5
View File
@@ -86,6 +86,7 @@ ufshci_dev_read_flag(struct ufshci_controller *ctrlr,
param.index = 0;
param.selector = 0;
param.value = 0;
param.desc_size = 0;
status.done = 0;
error = ufshci_ctrlr_cmd_send_query_request(ctrlr,
@@ -118,6 +119,7 @@ ufshci_dev_set_flag(struct ufshci_controller *ctrlr,
param.index = 0;
param.selector = 0;
param.value = 0;
param.desc_size = 0;
status.done = 0;
error = ufshci_ctrlr_cmd_send_query_request(ctrlr,
@@ -148,6 +150,7 @@ ufshci_dev_clear_flag(struct ufshci_controller *ctrlr,
param.index = 0;
param.selector = 0;
param.value = 0;
param.desc_size = 0;
status.done = 0;
error = ufshci_ctrlr_cmd_send_query_request(ctrlr,
@@ -179,6 +182,7 @@ ufshci_dev_read_attribute(struct ufshci_controller *ctrlr,
param.index = index;
param.selector = selector;
param.value = 0;
param.desc_size = 0;
status.done = 0;
error = ufshci_ctrlr_cmd_send_query_request(ctrlr,
@@ -212,6 +216,7 @@ ufshci_dev_write_attribute(struct ufshci_controller *ctrlr,
param.index = index;
param.selector = selector;
param.value = value;
param.desc_size = 0;
status.done = 0;
error = ufshci_ctrlr_cmd_send_query_request(ctrlr,