Messages in this thread | | | From | Denis Vlasenko <> | Subject | Re: 2.6.18-mm1 -- ieee80211: Info elem: parse failed: info_element->len + 2 > left : info_element->len+2=28 left=9, id=221. | Date | Thu, 28 Sep 2006 02:15:18 +0200 |
| |
On Thursday 28 September 2006 00:58, James Ketrenos wrote: > Andrew Morton wrote: > > On Wed, 27 Sep 2006 13:47:18 -0700 > > James Ketrenos <jketreno@linux.intel.com> wrote: > > > >> +static int snprint_line(char *buf, size_t count, > >> + const u8 * data, u32 len, u32 ofs) > >> +{ > >> + int out, i, j, l; > >> + char c; > >> + > >> + out = snprintf(buf, count, "%08X", ofs); > >> + > >> + for (l = 0, i = 0; i < 2; i++) { > >> + out += snprintf(buf + out, count - out, " "); > >> + for (j = 0; j < 8 && l < len; j++, l++) > >> + out += snprintf(buf + out, count - out, "%02X ", > >> + data[(i * 8 + j)]); > >> + for (; j < 8; j++) > >> + out += snprintf(buf + out, count - out, " "); > >> + }
Dumping this will slow things down, there will be a lot of calls to snprinf. Consider making it a bit less slow by handling full 16-byte lines a bit faster, like:
if (len >= 16) { printk( "%02X %02X %02X %02X %02X %02X %02X %02X " "%02X %02X %02X %02X %02X %02X %02X %02X ", ptr[0], ptr[1], ptr[2], ptr[3], ptr[4], ptr[5], ptr[6], ptr[7], ptr[8], ptr[9], ptr[10], ptr[11], ptr[12], ptr[13], ptr[14], ptr[15]); num -= 16; ptr += 16; }
Just my 0.02 euros -- vda - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |