desc += rs_pretty_print_rate(buff + desc, bufsz - desc,
                                     lq_sta->last_rate_n_flags);
+       if (desc < bufsz - 1)
+               buff[desc++] = '\n';
        mutex_unlock(&mvm->mutex);
 
        ret = simple_read_from_buffer(user_buf, count, ppos, buff, desc);
                                 (int)(ARRAY_SIZE(stats->last_rates) - i));
                pos += rs_pretty_print_rate(pos, endpos - pos,
                                            stats->last_rates[idx]);
+               if (pos < endpos - 1)
+                       *pos++ = '\n';
        }
        spin_unlock_bh(&mvm->drv_stats_lock);
 
 
            !(rate & RATE_MCS_HE_MSK)) {
                int index = iwl_hwrate_to_plcp_idx(rate);
 
-               return scnprintf(buf, bufsz, "Legacy | ANT: %s Rate: %s Mbps\n",
+               return scnprintf(buf, bufsz, "Legacy | ANT: %s Rate: %s Mbps",
                                 rs_pretty_ant(ant),
                                 index == IWL_RATE_INVALID ? "BAD" :
                                 iwl_rate_mcs[index].mbps);
        }
 
        return scnprintf(buf, bufsz,
-                        "0x%x: %s | ANT: %s BW: %s MCS: %d NSS: %d %s%s%s%s\n",
+                        "0x%x: %s | ANT: %s BW: %s MCS: %d NSS: %d %s%s%s%s",
                         rate, type, rs_pretty_ant(ant), bw, mcs, nss,
                         (rate & RATE_MCS_SGI_MSK) ? "SGI " : "NGI ",
                         (rate & RATE_MCS_STBC_MSK) ? "STBC " : "",
                desc += scnprintf(buff + desc, bufsz - desc,
                                  " rate[%d] 0x%X ", i, r);
                desc += rs_pretty_print_rate(buff + desc, bufsz - desc, r);
+               if (desc < bufsz - 1)
+                       buff[desc++] = '\n';
        }
 
        ret = simple_read_from_buffer(user_buf, count, ppos, buff, desc);