From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7299AC433F5 for ; Wed, 4 May 2022 21:47:21 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0935F6B0071; Wed, 4 May 2022 17:47:21 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 01AD76B0074; Wed, 4 May 2022 17:47:20 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DAF6A6B0075; Wed, 4 May 2022 17:47:20 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id C59A06B0071 for ; Wed, 4 May 2022 17:47:20 -0400 (EDT) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay13.hostedemail.com (Postfix) with ESMTP id A66C860229 for ; Wed, 4 May 2022 21:47:20 +0000 (UTC) X-FDA: 79429397040.19.D300D6D Received: from mail-lj1-f180.google.com (mail-lj1-f180.google.com [209.85.208.180]) by imf12.hostedemail.com (Postfix) with ESMTP id 0F59C4007F for ; Wed, 4 May 2022 21:47:03 +0000 (UTC) Received: by mail-lj1-f180.google.com with SMTP id m23so3341661ljb.8 for ; Wed, 04 May 2022 14:47:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=JKVtqb3idxV0MFCntjnRcrvGXkta1j74VgEFUKmbJLM=; b=V9NyllOnzZ81jKCOqp3lk8SWrXip/qCxXulz4ko6KO+SwIAl6KNgiHu7mi4iTkI6RC kWb5wvPZ7yqaKSMkp+rK1uzuZNdg60isH/lejdnwswtU6h63Vm4IznQ2LOBqRTupKQ30 ATGrqf0T0pFSV+iw0ZyecGMzgrDInrwtSL54qz7F/gM98oIyjYeQJm7JhYRNaDQ3e9oT DzhbkusiEZ7ultpStJQg9mCdOTvh4pqPP1lcSajczNBYHPTXqu9D7vq2LRzwpCXbsGkh zzMNtPnyc3TU6e0W1MRefJCdsx/+lQes56guH7Ql8wxlDgTIojZzC68K6MBK3wKIcjth ZZVw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=JKVtqb3idxV0MFCntjnRcrvGXkta1j74VgEFUKmbJLM=; b=SUrenmEgOJ5FStTqrjLQHtbD06lSf/nZeH4qU8Z58cVFTDT+NNdzfUgy96zIJ4Q3+m 2Q2YlWBZgFudsCycIFCp5AeQkoovOL1sl8XFyPdOXTHyfuVxKgDha9eBT9BrurMI6u5S AmFNNR/ejtmcsuCHn73LovyuVXkVHyYP4WNDbNLZNdY/IP3pZU1KNbBHOinpn5isKkyw Z/hyanRgK8W4+fDqWy26Loc+9eXlhE6rGNFA8rkPD2M8BudHlFIjcTmc+rNiFSWILhXf Qmp3VLb+fZZsKCo6v6Fh5ghImv/vmCixpnFvkcPkle2Q6+h2pen47ENqu9lD6sIphu7F LI8A== X-Gm-Message-State: AOAM533B9EXqtiknLRIbTZbY6PF02FuqVmoRv2krqU2WlhiUKxzQWgWl /MJc4DVbl88PLEpnQP7nYoXRie0q+LJkMmULgRMfpQ== X-Google-Smtp-Source: ABdhPJw/slvizdLoXcaKXvjtwt46WXwD2W8A/HsnsT6MToET0d4XHzko6PDn4BdWfQylWN6B8Mo+XAkrj8T654mHF5M= X-Received: by 2002:a05:651c:1502:b0:250:2328:d127 with SMTP id e2-20020a05651c150200b002502328d127mr9743926ljf.183.1651700838720; Wed, 04 May 2022 14:47:18 -0700 (PDT) MIME-Version: 1.0 References: <20220502181714.3483177-9-zokeefe@google.com> <202205031501.6qBJrsPn-lkp@intel.com> In-Reply-To: <202205031501.6qBJrsPn-lkp@intel.com> From: "Zach O'Keefe" Date: Wed, 4 May 2022 14:46:42 -0700 Message-ID: Subject: Re: [PATCH v4 08/13] mm/madvise: introduce MADV_COLLAPSE sync hugepage collapse To: kernel test robot Cc: Alex Shi , David Hildenbrand , David Rientjes , Matthew Wilcox , Michal Hocko , Pasha Tatashin , Peter Xu , SeongJae Park , Song Liu , Vlastimil Babka , Yang Shi , Zi Yan , linux-mm@kvack.org, llvm@lists.linux.dev, kbuild-all@lists.01.org, Andrea Arcangeli , Andrew Morton , Arnd Bergmann , Axel Rasmussen , Chris Kennelly , Chris Zankel , Helge Deller , Hugh Dickins , Ivan Kokshaysky , "James E.J. Bottomley" , Jens Axboe , "Kirill A. Shutemov" , Matt Turner , Max Filippov , Miaohe Lin , Minchan Kim Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 0F59C4007F X-Stat-Signature: 7sk3ar8895uorhxkrnjjdwp5tikpxy6p X-Rspam-User: Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=V9NyllOn; spf=pass (imf12.hostedemail.com: domain of zokeefe@google.com designates 209.85.208.180 as permitted sender) smtp.mailfrom=zokeefe@google.com; dmarc=pass (policy=reject) header.from=google.com X-Rspamd-Server: rspam09 X-HE-Tag: 1651700823-221996 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: Sorry again - fixed in v5 On Tue, May 3, 2022 at 12:22 AM kernel test robot wrote: > > Hi Zach, > > Thank you for the patch! Perhaps something to improve: > > [auto build test WARNING on next-20220502] > [cannot apply to hnaz-mm/master rostedt-trace/for-next deller-parisc/for-next arnd-asm-generic/master linus/master v5.18-rc5 v5.18-rc4 v5.18-rc3 v5.18-rc5] > [If your patch is applied to the wrong git tree, kindly drop us a note. > And when submitting patch, we suggest to use '--base' as documented in > https://git-scm.com/docs/git-format-patch] > > url: https://github.com/intel-lab-lkp/linux/commits/Zach-O-Keefe/mm-khugepaged-record-SCAN_PMD_MAPPED-when-scan_pmd-finds-THP/20220503-031727 > base: 9f9b9a2972eb8dcaad09d826c5c6d7488eaca3e6 > config: x86_64-randconfig-a011-20220502 (https://download.01.org/0day-ci/archive/20220503/202205031501.6qBJrsPn-lkp@intel.com/config) > compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 09325d36061e42b495d1f4c7e933e260eac260ed) > reproduce (this is a W=1 build): > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > chmod +x ~/bin/make.cross > # https://github.com/intel-lab-lkp/linux/commit/9f69946c58d8d53c271a4d75ac477b4a5164a511 > git remote add linux-review https://github.com/intel-lab-lkp/linux > git fetch --no-tags linux-review Zach-O-Keefe/mm-khugepaged-record-SCAN_PMD_MAPPED-when-scan_pmd-finds-THP/20220503-031727 > git checkout 9f69946c58d8d53c271a4d75ac477b4a5164a511 > # save the config file > mkdir build_dir && cp config build_dir/.config > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash > > If you fix the issue, kindly add following tag as appropriate > Reported-by: kernel test robot > > All warnings (new ones prefixed by >>): > > mm/khugepaged.c:1105:29: warning: incompatible integer to pointer conversion passing 'gfp_t' (aka 'unsigned int') to parameter of type 'struct page **' [-Wint-conversion] > if (!khugepaged_alloc_page(gfp, node, cc)) > ^~~ > mm/khugepaged.c:963:49: note: passing argument to parameter 'hpage' here > static bool khugepaged_alloc_page(struct page **hpage, gfp_t gfp, int node) > ^ > mm/khugepaged.c:1105:40: warning: incompatible pointer to integer conversion passing 'struct collapse_control *' to parameter of type 'int' [-Wint-conversion] > if (!khugepaged_alloc_page(gfp, node, cc)) > ^~ > mm/khugepaged.c:963:71: note: passing argument to parameter 'node' here > static bool khugepaged_alloc_page(struct page **hpage, gfp_t gfp, int node) > ^ > >> mm/khugepaged.c:2565:3: warning: unannotated fall-through between switch labels [-Wimplicit-fallthrough] > case SCAN_PMD_NULL: > ^ > mm/khugepaged.c:2565:3: note: insert 'break;' to avoid fall-through > case SCAN_PMD_NULL: > ^ > break; > 3 warnings generated. > > > vim +2565 mm/khugepaged.c > > 2511 > 2512 int madvise_collapse(struct vm_area_struct *vma, struct vm_area_struct **prev, > 2513 unsigned long start, unsigned long end) > 2514 { > 2515 struct collapse_control cc = { > 2516 .enforce_pte_scan_limits = false, > 2517 .enforce_young = false, > 2518 .last_target_node = NUMA_NO_NODE, > 2519 .hpage = NULL, > 2520 .alloc_charge_hpage = &madvise_alloc_charge_hpage, > 2521 }; > 2522 struct mm_struct *mm = vma->vm_mm; > 2523 unsigned long hstart, hend, addr; > 2524 int thps = 0, nr_hpages = 0, result = SCAN_FAIL; > 2525 bool mmap_locked = true; > 2526 > 2527 BUG_ON(vma->vm_start > start); > 2528 BUG_ON(vma->vm_end < end); > 2529 > 2530 *prev = vma; > 2531 > 2532 if (IS_ENABLED(CONFIG_SHMEM) && vma->vm_file) > 2533 return -EINVAL; > 2534 > 2535 hstart = (start + ~HPAGE_PMD_MASK) & HPAGE_PMD_MASK; > 2536 hend = end & HPAGE_PMD_MASK; > 2537 nr_hpages = (hend - hstart) >> HPAGE_PMD_SHIFT; > 2538 > 2539 if (hstart >= hend || !transparent_hugepage_active(vma)) > 2540 return -EINVAL; > 2541 > 2542 mmgrab(mm); > 2543 lru_add_drain(); > 2544 > 2545 for (addr = hstart; ; ) { > 2546 mmap_assert_locked(mm); > 2547 cond_resched(); > 2548 result = SCAN_FAIL; > 2549 > 2550 if (unlikely(khugepaged_test_exit(mm))) { > 2551 result = SCAN_ANY_PROCESS; > 2552 break; > 2553 } > 2554 > 2555 memset(cc.node_load, 0, sizeof(cc.node_load)); > 2556 result = khugepaged_scan_pmd(mm, vma, addr, &mmap_locked, &cc); > 2557 if (!mmap_locked) > 2558 *prev = NULL; /* tell madvise we dropped mmap_lock */ > 2559 > 2560 switch (result) { > 2561 /* Whitelisted set of results where continuing OK */ > 2562 case SCAN_SUCCEED: > 2563 case SCAN_PMD_MAPPED: > 2564 ++thps; > > 2565 case SCAN_PMD_NULL: > > -- > 0-DAY CI Kernel Test Service > https://01.org/lkp