diff options
Diffstat (limited to 'drivers/soc/qcom/qmi_interface.c')
-rw-r--r-- | drivers/soc/qcom/qmi_interface.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/soc/qcom/qmi_interface.c b/drivers/soc/qcom/qmi_interface.c index 321982277697..938ca41c56cd 100644 --- a/drivers/soc/qcom/qmi_interface.c +++ b/drivers/soc/qcom/qmi_interface.c | |||
@@ -639,10 +639,11 @@ int qmi_handle_init(struct qmi_handle *qmi, size_t recv_buf_size, | |||
639 | if (ops) | 639 | if (ops) |
640 | qmi->ops = *ops; | 640 | qmi->ops = *ops; |
641 | 641 | ||
642 | /* Make room for the header */ | ||
643 | recv_buf_size += sizeof(struct qmi_header); | ||
644 | /* Must also be sufficient to hold a control packet */ | ||
642 | if (recv_buf_size < sizeof(struct qrtr_ctrl_pkt)) | 645 | if (recv_buf_size < sizeof(struct qrtr_ctrl_pkt)) |
643 | recv_buf_size = sizeof(struct qrtr_ctrl_pkt); | 646 | recv_buf_size = sizeof(struct qrtr_ctrl_pkt); |
644 | else | ||
645 | recv_buf_size += sizeof(struct qmi_header); | ||
646 | 647 | ||
647 | qmi->recv_buf_size = recv_buf_size; | 648 | qmi->recv_buf_size = recv_buf_size; |
648 | qmi->recv_buf = kzalloc(recv_buf_size, GFP_KERNEL); | 649 | qmi->recv_buf = kzalloc(recv_buf_size, GFP_KERNEL); |