Messages in this thread | | | Subject | Re: replace "memset(...,0,PAGE_SIZE)" calls with "clear_page()"? | From | Arjan van de Ven <> | Date | Sun, 31 Dec 2006 14:45:34 +0100 |
| |
On Sun, 2006-12-31 at 14:39 +0100, Folkert van Heusden wrote: > > > i don't see how that can be true, given that most of the definitions > > > of the clear_page() macro are simply invocations of memset(). see for > > > yourself: > > *MOST*. Not all. > > For example an SSE version will at least assume 16 byte alignment, etc > > etc. > > What about an if (adress & 15) { memset } else { sse stuff } > or is that too obvious? :-)
it's only one example. clear_page() working only on a full page is a nice restriction that allows the implementation to be optimized (again the x86 hardware that had a hardware page zeroer comes to mind, the hw is only 4 years old or so... and future hw may have it again)
clear_page() is more restricted than memset(). And that's good, it allows for a more focused implementation. Otherwise there'd be no reason to HAVE a clear_page(), if it just was a memset wrapper entirely.
-- if you want to mail me at work (you don't), use arjan (at) linux.intel.com Test the interaction between Linux and your BIOS via http://www.linuxfirmwarekit.org
- 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/
| |