ath6kl: add padding to firmware log records

firmware debug utility expects firmware log record size
to be 1500 bytes. This patch ensures that the
firmware record will be exactly 1500 bytes.

kvalo: remove trailing space

Signed-off-by: Etay Luz <eluz@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
This commit is contained in:
Etay Luz 2012-02-28 17:17:15 -08:00 коммит произвёл Kalle Valo
Родитель 67cd22e48d
Коммит 7504a3e1f5
1 изменённых файлов: 4 добавлений и 1 удалений

5
drivers/net/wireless/ath/ath6kl/debug.c Normal file → Executable file
Просмотреть файл

@ -277,7 +277,7 @@ void ath6kl_debug_fwlog_event(struct ath6kl *ar, const void *buf, size_t len)
if (WARN_ON(len > ATH6KL_FWLOG_PAYLOAD_SIZE)) if (WARN_ON(len > ATH6KL_FWLOG_PAYLOAD_SIZE))
return; return;
slot_len = sizeof(*slot) + len; slot_len = sizeof(*slot) + ATH6KL_FWLOG_PAYLOAD_SIZE;
skb = alloc_skb(slot_len, GFP_KERNEL); skb = alloc_skb(slot_len, GFP_KERNEL);
if (!skb) if (!skb)
@ -288,6 +288,9 @@ void ath6kl_debug_fwlog_event(struct ath6kl *ar, const void *buf, size_t len)
slot->length = cpu_to_le32(len); slot->length = cpu_to_le32(len);
memcpy(slot->payload, buf, len); memcpy(slot->payload, buf, len);
/* Need to pad each record to fixed length ATH6KL_FWLOG_PAYLOAD_SIZE */
memset(slot->payload + len, 0, ATH6KL_FWLOG_PAYLOAD_SIZE - len);
spin_lock(&ar->debug.fwlog_queue.lock); spin_lock(&ar->debug.fwlog_queue.lock);
__skb_queue_tail(&ar->debug.fwlog_queue, skb); __skb_queue_tail(&ar->debug.fwlog_queue, skb);