diff --git a/drivers/bluetooth/hci/h4.c b/drivers/bluetooth/hci/h4.c index d3c2ea3511ca5..89454622cc0f0 100644 --- a/drivers/bluetooth/hci/h4.c +++ b/drivers/bluetooth/hci/h4.c @@ -333,7 +333,7 @@ static inline void read_payload(const struct device *dev) LOG_DBG("Allocated rx.buf %p", h4->rx.buf); buf_tailroom = net_buf_tailroom(h4->rx.buf); - if (buf_tailroom < h4->rx.remaining) { + if (buf_tailroom < (h4->rx.remaining + h4->rx.hdr_len)) { LOG_ERR("Not enough space in buffer %u/%zu", h4->rx.remaining, buf_tailroom); h4->rx.discard = h4->rx.remaining;