lkml.org 
[lkml]   [2017]   [Nov]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] zswap: Same-filled pages handling
From
Date

On Wed, Oct 19, 2017 at 6:38 AM, Matthew Wilcox wrote:
> On Thu, Oct 19, 2017 at 12:31:18AM +0300, Timofey Titovets wrote:
>> > +static void zswap_fill_page(void *ptr, unsigned long value)
>> > +{
>> > + unsigned int pos;
>> > + unsigned long *page;
>> > +
>> > + page = (unsigned long *)ptr;
>> > + if (value == 0)
>> > + memset(page, 0, PAGE_SIZE);
>> > + else {
>> > + for (pos = 0; pos < PAGE_SIZE / sizeof(*page); pos++)
>> > + page[pos] = value;
>> > + }
>> > +}
>>
>> Same here, but with memcpy().
>
>No. Use memset_l which is optimised for this specific job.

I have tested this patch using memset_l() function in zswap_fill_page() on
x86 64-bit system with 2GB RAM. The performance remains same.
But, memset_l() funcion might be optimised in future.
@Seth Jennings/Dan Streetman: Should I use memset_l() function in this patch.

\
 
 \ /
  Last update: 2017-11-02 16:08    [W:0.189 / U:7.512 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site