lkml.org 
[lkml]   [2020]   [May]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 3/3] mm/swapfile.c: count won't be bigger than SWAP_MAP_MAX
    On Sat, May 02, 2020 at 01:29:11PM +0000, Wei Yang wrote:
    >On Fri, May 01, 2020 at 03:48:53PM -0700, Andrew Morton wrote:
    >>On Fri, 1 May 2020 01:52:59 +0000 Wei Yang <richard.weiyang@gmail.com> wrote:
    >>
    >>> When the condition is true, there are two possibilities:
    >>
    >>I'm struggling with this one.
    >>
    >>> 1. count == SWAP_MAP_BAD
    >>> 2. count == (SWAP_MAP_MAX & COUNT_CONTINUED) == SWAP_MAP_SHMEM
    >>
    >>I'm not sure what 2. is trying to say. For a start, (SWAP_MAP_MAX &
    >>COUNT_CONTINUED) is zero. I guess it meant "|"?
    >
    >Oops, you are right. It should be (SWAP_MAP_MAX | COUNT_CONTINUED).
    >
    >Sorry for the confusion.
    >

    Hmm... I made a mistake again, the two cases should be

    * SWAP_MAP_BAD
    * (SWAP_MAP_BAD | COUNT_CONTINUED) == SWAP_MAP_SHMEM

    What a shame.

    >>
    >>Also, the return value documentation says we return EINVAL for migration
    >>entries. Where's that happening, or is the comment out of date?
    >>
    >
    >Not paid attention to this.
    >
    >Take look into the code, I don't find a relationship between the swap count
    >and migration. Seems we just make a migration entry but not duplicate it.
    >If my understanding is correct.
    >
    >>> The first case would be filtered by the first if in __swap_duplicate().
    >>>
    >>> And the second case means this swap entry is for shmem. Since we never
    >>> do another duplication for shmem swap entry. This won't happen neither.
    >>
    >
    >--
    >Wei Yang
    >Help you, Help me

    --
    Wei Yang
    Help you, Help me

    \
     
     \ /
      Last update: 2020-05-02 15:42    [W:7.320 / U:1.112 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site