summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorDavid Woodhouse <dwmw2@infradead.org>2009-04-09 22:04:07 -0700
committerDavid Woodhouse <David.Woodhouse@intel.com>2009-05-15 12:51:29 +0100
commit6e03a201bbe8137487f340d26aa662110e324b20 (patch)
tree5a2c61945ea2fad720e7a18b061dd31303a28523 /kernel
parent091bf7624d1c90cec9e578a18529f615213ff847 (diff)
firmware: speed up request_firmware(), v3
Rather than calling vmalloc() repeatedly to grow the firmware image as we receive data from userspace, just allocate and fill individual pages. Then vmap() the whole lot in one go when we're done. A quick test with a 337KiB iwlagn firmware shows the time taken for request_firmware() going from ~32ms to ~5ms after I apply this patch. [v2: define PAGE_KERNEL_RO as PAGE_KERNEL where necessary, use min_t()] [v3: kunmap() takes the struct page *, not the virtual address] Signed-off-by: David Woodhouse <David.Woodhouse@intel.com> Tested-by: Sachin Sant <sachinp@in.ibm.com>
Diffstat (limited to 'kernel')
0 files changed, 0 insertions, 0 deletions