lists.linaro.org
Sign In
Sign Up
Sign In
Sign Up
Manage this list
×
Keyboard Shortcuts
Thread View
j
: Next unread message
k
: Previous unread message
j a
: Jump to all threads
j l
: Jump to MailingList overview
2025
March
February
January
2024
December
November
October
September
August
July
June
May
April
March
February
January
2023
December
November
October
September
August
July
June
May
April
March
February
January
2022
December
November
October
September
August
July
June
May
April
March
February
January
2021
December
November
October
September
August
July
June
May
April
March
February
January
2020
December
November
October
September
August
July
June
May
April
March
February
January
2019
December
November
October
September
August
July
June
May
April
March
February
January
2018
December
November
October
September
August
July
June
May
April
March
February
January
2017
December
November
List overview
Download
Lkft-triage
June 2020
----- 2025 -----
March 2025
February 2025
January 2025
----- 2024 -----
December 2024
November 2024
October 2024
September 2024
August 2024
July 2024
June 2024
May 2024
April 2024
March 2024
February 2024
January 2024
----- 2023 -----
December 2023
November 2023
October 2023
September 2023
August 2023
July 2023
June 2023
May 2023
April 2023
March 2023
February 2023
January 2023
----- 2022 -----
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
----- 2021 -----
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
----- 2020 -----
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
----- 2019 -----
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
----- 2018 -----
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
----- 2017 -----
December 2017
November 2017
lkft-triage@lists.linaro.org
40 participants
877 discussions
Start a n
N
ew thread
stable-rc 5.4.50-rc1/6f4ea549790a: no regressions found in project stable v5.4.y on OE - sanity
by Linaro QA
Summary ------------------------------------------------------------------------ kernel: 5.4.50-rc1 git repo:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git branch: linux-5.4.y git commit: 6f4ea549790aec4b1a0f190ceb32a2760706a384 git describe: v5.4.49-177-g6f4ea549790a Test details:
https://qa-reports.linaro.org/lkft/linux-stable-rc-5.4-oe-sanity/build/v5.4…
No regressions (compared to build v5.4.49) No fixes (compared to build v5.4.49) Boards, architectures and test suites: ------------------------------------- dragonboard-410c * build - pass: 1, * linux-log-parser - pass: 8, hi6220-hikey * build - pass: 1, * linux-log-parser - pass: 8, i386 * build - pass: 1, * linux-log-parser - pass: 16, * ltp-quickhit-tests - pass: 107, juno-r2 * build - pass: 1, * linux-log-parser - pass: 16, * ltp-quickhit-tests - pass: 106, skip: 1, x15 * build - pass: 1, * linux-log-parser - pass: 8, x86 * build - pass: 1, * linux-log-parser - pass: 16, * ltp-quickhit-tests - pass: 106, skip: 1, -- Linaro QA
https://qa-reports.linaro.org
4 years, 8 months
1
0
0
0
stable-rc 4.19.131-rc1/7b28eb6d5b98: no regressions found in project stable v4.19.y on OE - sanity
by Linaro QA
Summary ------------------------------------------------------------------------ kernel: 4.19.131-rc1 git repo:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git branch: linux-4.19.y git commit: 7b28eb6d5b985ca56cc1e44c0e12527a7f006bfa git describe: v4.19.130-130-g7b28eb6d5b98 Test details:
https://qa-reports.linaro.org/lkft/linux-stable-rc-4.19-oe-sanity/build/v4.…
No regressions (compared to build v4.19.130) No fixes (compared to build v4.19.130) Boards, architectures and test suites: ------------------------------------- dragonboard-410c * build - pass: 1, * linux-log-parser - pass: 8, hi6220-hikey * build - pass: 1, * linux-log-parser - pass: 8, i386 * build - pass: 1, * linux-log-parser - pass: 16, * ltp-quickhit-tests - pass: 107, juno-r2 - arm64 * build - pass: 1, * linux-log-parser - pass: 16, * ltp-quickhit-tests - pass: 106, skip: 1, x15 - arm * build - pass: 1, * install-android-platform-tools-r2800 - pass: 2, * linux-log-parser - pass: 16, * ltp-quickhit-tests - pass: 106, skip: 1, x86_64 * build - pass: 1, * linux-log-parser - pass: 16, -- Linaro QA
https://qa-reports.linaro.org
4 years, 8 months
1
0
0
0
stable-rc 5.7.7-rc1/df461b7c58da: no regressions found in project stable v5.7.y on OE - sanity
by Linaro QA
Summary ------------------------------------------------------------------------ kernel: 5.7.7-rc1 git repo:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git branch: linux-5.7.y git commit: df461b7c58da3dec8a6892b30357dab2d3554926 git describe: v5.7.6-265-gdf461b7c58da Test details:
https://qa-reports.linaro.org/lkft/linux-stable-rc-5.7-oe-sanity/build/v5.7…
No regressions (compared to build v5.7.6) No fixes (compared to build v5.7.6) Boards, architectures and test suites: ------------------------------------- hi6220-hikey * build - pass: 1, * linux-log-parser - pass: 8, i386 * linux-log-parser - pass: 8, * ltp-quickhit-tests - pass: 107, juno-r2 * linux-log-parser - pass: 8, * ltp-quickhit-tests - pass: 106, skip: 1, x15 * linux-log-parser - pass: 8, x86 * build - pass: 1, * linux-log-parser - pass: 16, * ltp-quickhit-tests - pass: 106, skip: 1, -- Linaro QA
https://qa-reports.linaro.org
4 years, 8 months
1
0
0
0
stable-rc 4.14.187-rc1/332dde51480f: no regressions found in project stable v4.14.y on OE - sanity
by Linaro QA
Summary ------------------------------------------------------------------------ kernel: 4.14.187-rc1 git repo:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git branch: linux-4.14.y git commit: 332dde51480f772588d72dddeaa821587464a758 git describe: v4.14.186-76-g332dde51480f Test details:
https://qa-reports.linaro.org/lkft/linux-stable-rc-4.14-oe-sanity/build/v4.…
No regressions (compared to build v4.14.186) No fixes (compared to build v4.14.186) Boards, architectures and test suites: ------------------------------------- dragonboard-410c * build - pass: 1, * linux-log-parser - pass: 8, hi6220-hikey * build - pass: 1, * linux-log-parser - pass: 8, i386 * build - pass: 1, * linux-log-parser - pass: 16, * ltp-quickhit-tests - pass: 106, juno-r2 - arm64 * build - pass: 1, * linux-log-parser - pass: 16, * ltp-quickhit-tests - pass: 106, skip: 1, x15 - arm * install-android-platform-tools-r2800 - pass: 2, * linux-log-parser - pass: 8, * ltp-quickhit-tests - pass: 106, skip: 1, x86_64 * build - pass: 1, * linux-log-parser - pass: 16, * ltp-quickhit-tests - pass: 106, skip: 1, -- Linaro QA
https://qa-reports.linaro.org
4 years, 8 months
1
0
0
0
stable-rc 4.9.229-rc1/0de5456d1a51: no regressions found in project stable v4.9.y on OE - sanity
by Linaro QA
Summary ------------------------------------------------------------------------ kernel: 4.9.229-rc1 git repo:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git branch: linux-4.9.y git commit: 0de5456d1a516179d6ffb3873c89f32667a94693 git describe: v4.9.228-189-g0de5456d1a51 Test details:
https://qa-reports.linaro.org/lkft/linux-stable-rc-4.9-oe-sanity/build/v4.9…
No regressions (compared to build v4.9.228) No fixes (compared to build v4.9.228) Boards, architectures and test suites: ------------------------------------- i386 * linux-log-parser - pass: 8, * ltp-quickhit-tests - pass: 106, juno-r2 - arm64 * linux-log-parser - pass: 8, * ltp-quickhit-tests - pass: 106, skip: 1, x15 - arm * install-android-platform-tools-r2800 - pass: 2, * linux-log-parser - pass: 8, * ltp-quickhit-tests - pass: 106, skip: 1, x86_64 * linux-log-parser - pass: 8, * ltp-quickhit-tests - pass: 106, skip: 1, -- Linaro QA
https://qa-reports.linaro.org
4 years, 8 months
1
0
0
0
stable-rc 4.4.229-rc1/cd92dec91c4b: no regressions found in project stable v4.4.y on OE - sanity
by Linaro QA
Summary ------------------------------------------------------------------------ kernel: 4.4.229-rc1 git repo:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git branch: linux-4.4.y git commit: cd92dec91c4b3d445e91ba3ef7142d1f3fb5b089 git describe: v4.4.228-133-gcd92dec91c4b Test details:
https://qa-reports.linaro.org/lkft/linux-stable-rc-4.4-oe-sanity/build/v4.4…
No regressions (compared to build v4.4.228) No fixes (compared to build v4.4.228) Boards, architectures and test suites: ------------------------------------- i386 * linux-log-parser - pass: 8, * ltp-quickhit-tests - pass: 107, juno-r2 - arm64 * linux-log-parser - pass: 8, * ltp-quickhit-tests - pass: 106, skip: 1, x15 - arm * install-android-platform-tools-r2800 - pass: 2, * linux-log-parser - pass: 8, x86_64 * build - pass: 1, * linux-log-parser - pass: 16, * ltp-quickhit-tests - pass: 106, skip: 1, -- Linaro QA
https://qa-reports.linaro.org
4 years, 8 months
1
0
0
0
i386: fanotify01.c:115: BROK: fanotify_mark () failed: EFAULT (14)
by Naresh Kamboju
We have recently enabled CONFIG_FANOTIFY=y in our testing builds and i386 kernel running on x86_64 machine testing LTP 20200515 test runs reported fanotify{01,02,04..15} failures on linux mainline 5.7.0-rc6 Where as these tests pass on x86_64, arm and arm64. Is this a known issue on i386 ? As you know, these tests cases were skipped before enabling CONFIG_FANOTIFY. The file system mounted on NFS and the LTP tests using a external mounted SSD drive. LTP tests running as Steps to reproduce: ------------------- ./runltp -d /scratch -f syscalls and easily reproducible on qemu_i386 also which is mounting local rootfs.img configs: ----------- CONFIG_FANOTIFY=y # CONFIG_FANOTIFY_ACCESS_PERMISSIONS is not set --> not set of x86_64 and i386. Test output log: ----------------- tst_device.c:262: INFO: Using test device LTP_DEV='/dev/loop0' tst_mkfs.c:90: INFO: Formatting /dev/loop0 with ext2 opts='' extra opts='' mke2fs 1.43.8 (1-Jan-2018) [ 391.914376] EXT4-fs (loop0): mounting ext2 file system using the ext4 subsystem [ 391.962316] EXT4-fs (loop0): mounted filesystem without journal. Opts: (null) [ 391.969684] ext2 filesystem being mounted at /scratch/ltp-86JZJboUf9/Sl4t1D/fs_mnt supports timestamps until 2038 (0x7fffffff) tst_test.c:1246: INFO: Timeout per run is 0h 15m 00s fanotify01.c:89: INFO: Test #0: inode mark events fanotify01.c:115: BROK: fanotify_mark (6, FAN_MARK_ADD, FAN_ACCESS | FAN_MARK_INODE | FAN_MODIFY | FAN_CLOSE | FAN_OPEN, AT_FDCWD, fs_mnt/tfile_19115) failed: EFAULT (14) fanotify02.c:57: BROK: fanotify_mark (6, FAN_MARK_ADD, FAN_ACCESS | FAN_MODIFY | FAN_CLOSE | FAN_OPEN | FAN_EVENT_ON_CHILD | FAN_ONDIR, AT_FDCWD, '.') failed: EFAULT (14) fanotify03.c:236: CONF: CONFIG_FANOTIFY_ACCESS_PERMISSIONS not configured in kernel?: EINVAL (22) fanotify04.c:66: FAIL: fanotify_mark (6, FAN_MARK_ADD | FAN_MARK_ONLYDIR, FAN_OPEN, AT_FDCWD, '.') failed fanotify04.c:71: PASS: fanotify_mark (6, FAN_MARK_ADD | FAN_MARK_ONLYDIR, FAN_OPEN, AT_FDCWD, 'fname_19127') failed fanotify04.c:66: FAIL: fanotify_mark (6, FAN_MARK_ADD | FAN_MARK_DONT_FOLLOW, FAN_OPEN, AT_FDCWD, 'symlink_19127') failed fanotify04.c:66: FAIL: fanotify_mark (6, FAN_MARK_ADD | 0, FAN_OPEN, AT_FDCWD, 'symlink_19127') failed fanotify04.c:198: BROK: fanotify_mark (6, FAN_MARK_ADD, FAN_OPEN, AT_FDCWD, 'fname_19127') failed: EFAULT (14) fanotify05.c:115: BROK: fanotify_mark (6, FAN_MARK_MOUNT | FAN_MARK_ADD, FAN_OPEN, AT_FDCWD, \".\") failed: EFAULT (14) fanotify06.c:98: BROK: fanotify_mark(6, FAN_MARK_ADD | FAN_MARK_MOUNT, FAN_MODIFY, AT_FDCWD, mntpoint/tfile_19139) failed: EFAULT (14) fanotify07.c:112: CONF: CONFIG_FANOTIFY_ACCESS_PERMISSIONS not configured in kernel?: EINVAL (22) fanotify09.c:108: BROK: fanotify_mark(6, FAN_MARK_ADD | FAN_MARK_MOUNT, FAN_MODIFY, AT_FDCWD, '.') failed: EFAULT (14) fanotify10.c:239: BROK: fanotify_mark(6, FAN_MARK_ADD | FAN_MARK_MOUNT,FAN_OPEN, AT_FDCWD, fs_mnt) failed: EFAULT (14) fanotify11.c:82: BROK: fanotify_mark FAN_MARK_ADD fail ret=-1 fanotify12.c:160: BROK: fanotify_mark(6, FAN_MARK_ADD | FAN_MARK_INODE, 20, AT_FDCWD, fname_19160) failed: EFAULT (14) fanotify13.c:300: BROK: fanotify_mark(6, FAN_MARK_ADD, FAN_CLOSE_WRITE, AT_FDCWD, mntpoint/file_one) failed: EFAULT (14) fanotify15.c:101: BROK: fanotify_mark(6, FAN_MARK_ADD | FAN_MARK_FILESYSTEM, FAN_CREATE | FAN_DELETE | FAN_MOVE | FAN_MODIFY | FAN_ONDIR | 0x400, AT_FDCWD, mntpoint/test_dir) failed: EFAULT (14) full test log link, i386 kernel running on x86_64 machine
https://lkft.validation.linaro.org/scheduler/job/1446082#L8947
https://lkft.validation.linaro.org/scheduler/job/1457258#L8946
qemu_i386 test log link,
https://lkft.validation.linaro.org/scheduler/job/1446103
https://qa-reports.linaro.org/lkft/linux-mainline-oe/build/v5.7-rc6-100-g44…
Test results comparison:
https://qa-reports.linaro.org/lkft/linux-mainline-oe/tests/ltp-syscalls-tes…
https://qa-reports.linaro.org/lkft/linux-mainline-oe/tests/ltp-syscalls-tes…
-- Linaro LKFT
https://lkft.linaro.org
4 years, 8 months
2
2
0
0
next 5.8.0-rc3/c28e58ee9dad: no regressions found in project next on OE - sanity
by Linaro QA
Summary ------------------------------------------------------------------------ kernel: 5.8.0-rc3 git repo:
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
git branch: master git commit: c28e58ee9dadc99f79cf16ca805221feddd432ad git describe: next-20200629 Test details:
https://qa-reports.linaro.org/lkft/linux-next-oe-sanity/build/next-20200629
No regressions (compared to build next-20200626) Fixes (compared to build next-20200626) ------------------------------------------------------------------------ dragonboard-410c: build: * build_process Boards, architectures and test suites: ------------------------------------- dragonboard-410c * build - pass: 1, * linux-log-parser - pass: 8, i386 * build - pass: 1, * linux-log-parser - pass: 16, * ltp-quickhit-tests - pass: 107, juno-r2 - arm64 * linux-log-parser - pass: 8, * ltp-quickhit-tests - pass: 106, skip: 1, x15 - arm * install-android-platform-tools-r2800 - pass: 2, * linux-log-parser - pass: 8, * ltp-quickhit-tests - pass: 106, skip: 1, x86_64 * build - pass: 1, * linux-log-parser - pass: 16, * ltp-quickhit-tests - pass: 106, skip: 1, -- Linaro QA
https://qa-reports.linaro.org
4 years, 8 months
1
0
0
0
Re: [LKP] Re: [PATCH] crypto: af_alg - Fix regression on empty requests
by Naresh Kamboju
On Sat, 27 Jun 2020 at 14:02, Herbert Xu <herbert(a)gondor.apana.org.au> wrote: > > On Fri, Jun 26, 2020 at 04:29:48PM +1000, Herbert Xu wrote: > > > > Reported-by: Sachin Sant <sachinp(a)linux.vnet.ibm.com> > > Reported-by: Naresh Kamboju <naresh.kamboju(a)linaro.org> > > Fixes: f3c802a1f300 ("crypto: algif_aead - Only wake up when...") > > Signed-off-by: Herbert Xu <herbert(a)gondor.apana.org.au> > > Reported-by: kernel test robot <rong.a.chen(a)intel.com> Tested-by: Naresh Kamboju <naresh.kamboju(a)linaro.org> I have applied your patch and tested on Linux-next on arm, x86_64 and i386. All LTP crypto tests got passed. --- patch -p1 < crypto-af_alg---Fix-regression-on-empty-requests.diff patching file crypto/af_alg.c patching file crypto/algif_aead.c patching file crypto/algif_skcipher.c patching file include/crypto/if_alg.h Test output: af_alg02.c:33: PASS: Successfully \"encrypted\" an empty message af_alg05.c:40: PASS: read() expectedly failed with EINVAL Test results summary: af_alg01: pass af_alg02: pass af_alg03: pass af_alg04: pass af_alg05: pass af_alg06: pass ref:
https://lkft.validation.linaro.org/scheduler/job/1532020#L1413
https://lkft.validation.linaro.org/scheduler/job/1532019#L1516
https://lkft.validation.linaro.org/scheduler/job/1532026#L935
-- Linaro LKFT
https://lkft.linaro.org
4 years, 8 months
1
0
0
0
Re: [PATCH v3 13/15] mm, hwpoison: Refactor soft_offline_huge_page and __soft_offline_page
by Naresh Kamboju
On Wed, 24 Jun 2020 at 20:32, <nao.horiguchi(a)gmail.com> wrote: > > From: Oscar Salvador <osalvador(a)suse.de> > > Merging soft_offline_huge_page and __soft_offline_page let us get rid of > quite some duplicated code, and makes the code much easier to follow. > > Now, __soft_offline_page will handle both normal and hugetlb pages. > > Note that move put_page() block to the beginning of page_handle_poison() > with drain_all_pages() in order to make sure that the target page is > freed and sent into free list to make take_page_off_buddy() work properly. > > Signed-off-by: Oscar Salvador <osalvador(a)suse.de> > Signed-off-by: Naoya Horiguchi <naoya.horiguchi(a)nec.com> > --- > ChangeLog v2 -> v3: > - use page_is_file_lru() instead of page_is_file_cache(), > - add description about put_page() and drain_all_pages(). > - fix coding style warnings by checkpatch.pl > --- > mm/memory-failure.c | 185 ++++++++++++++++++++------------------------ > 1 file changed, 86 insertions(+), 99 deletions(-) > > diff --git v5.8-rc1-mmots-2020-06-20-21-44/mm/memory-failure.c v5.8-rc1-mmots-2020-06-20-21-44_patched/mm/memory-failure.c > index f744eb90c15c..22c904f6d17a 100644 > --- v5.8-rc1-mmots-2020-06-20-21-44/mm/memory-failure.c > +++ v5.8-rc1-mmots-2020-06-20-21-44_patched/mm/memory-failure.c > @@ -78,14 +78,36 @@ EXPORT_SYMBOL_GPL(hwpoison_filter_dev_minor); > EXPORT_SYMBOL_GPL(hwpoison_filter_flags_mask); > EXPORT_SYMBOL_GPL(hwpoison_filter_flags_value); > > -static void page_handle_poison(struct page *page, bool release) > +static bool page_handle_poison(struct page *page, bool hugepage_or_freepage, bool release) > { > + if (release) { > + put_page(page); > + drain_all_pages(page_zone(page)); > + } > + > + if (hugepage_or_freepage) { > + /* > + * Doing this check for free pages is also fine since dissolve_free_huge_page > + * returns 0 for non-hugetlb pages as well. > + */ > + if (dissolve_free_huge_page(page) || !take_page_off_buddy(page)) > + /* > + * The hugetlb page can end up being enqueued back into > + * the freelists by means of: > + * unmap_and_move_huge_page > + * putback_active_hugepage > + * put_page->free_huge_page > + * enqueue_huge_page > + * If this happens, we might lose the race against an allocation. > + */ > + return false; > + } > > SetPageHWPoison(page); > - if (release) > - put_page(page); > page_ref_inc(page); > num_poisoned_pages_inc(); > + > + return true; > } > > static int hwpoison_filter_dev(struct page *p) > @@ -1718,63 +1740,52 @@ static int get_any_page(struct page *page, unsigned long pfn) > return ret; > } > > -static int soft_offline_huge_page(struct page *page) > +static bool isolate_page(struct page *page, struct list_head *pagelist) > { > - int ret; > - unsigned long pfn = page_to_pfn(page); > - struct page *hpage = compound_head(page); > - LIST_HEAD(pagelist); > + bool isolated = false; > + bool lru = PageLRU(page); > + > + if (PageHuge(page)) { > + isolated = isolate_huge_page(page, pagelist); > + } else { > + if (lru) > + isolated = !isolate_lru_page(page); > + else > + isolated = !isolate_movable_page(page, ISOLATE_UNEVICTABLE); > + > + if (isolated) > + list_add(&page->lru, pagelist); > > - /* > - * This double-check of PageHWPoison is to avoid the race with > - * memory_failure(). See also comment in __soft_offline_page(). > - */ > - lock_page(hpage); > - if (PageHWPoison(hpage)) { > - unlock_page(hpage); > - put_page(hpage); > - pr_info("soft offline: %#lx hugepage already poisoned\n", pfn); > - return -EBUSY; > } > - unlock_page(hpage); > > - ret = isolate_huge_page(hpage, &pagelist); > + if (isolated && lru) > + inc_node_page_state(page, NR_ISOLATED_ANON + > + page_is_file_lru(page)); > + > /* > - * get_any_page() and isolate_huge_page() takes a refcount each, > - * so need to drop one here. > + * If we succeed to isolate the page, we grabbed another refcount on > + * the page, so we can safely drop the one we got from get_any_pages(). > + * If we failed to isolate the page, it means that we cannot go further > + * and we will return an error, so drop the reference we got from > + * get_any_pages() as well. > */ > - put_page(hpage); > - if (!ret) { > - pr_info("soft offline: %#lx hugepage failed to isolate\n", pfn); > - return -EBUSY; > - } > - > - ret = migrate_pages(&pagelist, new_page, NULL, MPOL_MF_MOVE_ALL, > - MIGRATE_SYNC, MR_MEMORY_FAILURE); > - if (ret) { > - pr_info("soft offline: %#lx: hugepage migration failed %d, type %lx (%pGp)\n", > - pfn, ret, page->flags, &page->flags); > - if (!list_empty(&pagelist)) > - putback_movable_pages(&pagelist); > - if (ret > 0) > - ret = -EIO; > - } else { > - /* > - * We set PG_hwpoison only when we were able to take the page > - * off the buddy. > - */ > - if (!dissolve_free_huge_page(page) && take_page_off_buddy(page)) > - page_handle_poison(page, false); > - else > - ret = -EBUSY; > - } > - return ret; > + put_page(page); > + return isolated; > } > > +/* > + * __soft_offline_page handles hugetlb-pages and non-hugetlb pages. > + * If the page is a non-dirty unmapped page-cache page, it simply invalidates. > + * If the page is mapped, it migrates the contents over. > + */ > static int __soft_offline_page(struct page *page) > { > - int ret; > + int ret = 0; > unsigned long pfn = page_to_pfn(page); > + struct page *hpage = compound_head(page); > + const char *msg_page[] = {"page", "hugepage"}; > + bool huge = PageHuge(page); > + LIST_HEAD(pagelist); > > /* > * Check PageHWPoison again inside page lock because PageHWPoison > @@ -1783,98 +1794,74 @@ static int __soft_offline_page(struct page *page) > * so there's no race between soft_offline_page() and memory_failure(). > */ > lock_page(page); > - wait_on_page_writeback(page); > + if (!PageHuge(page)) > + wait_on_page_writeback(page); > if (PageHWPoison(page)) { > unlock_page(page); > put_page(page); > pr_info("soft offline: %#lx page already poisoned\n", pfn); > return -EBUSY; > } > - /* > - * Try to invalidate first. This should work for > - * non dirty unmapped page cache pages. > - */ > - ret = invalidate_inode_page(page); > + > + if (!PageHuge(page)) > + /* > + * Try to invalidate first. This should work for > + * non dirty unmapped page cache pages. > + */ > + ret = invalidate_inode_page(page); > unlock_page(page); > + > /* > * RED-PEN would be better to keep it isolated here, but we > * would need to fix isolation locking first. > */ > - if (ret == 1) { > + if (ret) { > pr_info("soft_offline: %#lx: invalidated\n", pfn); > - page_handle_poison(page, true); > + page_handle_poison(page, false, true); arm64 build failed on linux-next 20200626 tag make -sk KBUILD_BUILD_USER=TuxBuild -C/linux -j16 ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- HOSTCC=gcc CC="sccache aarch64-linux-gnu-gcc" O=build Image 79 # 80 ../mm/memory-failure.c: In function ‘__soft_offline_page’: 81 ../mm/memory-failure.c:1827:3: error: implicit declaration of function ‘page_handle_poison’; did you mean ‘page_init_poison’? [-Werror=implicit-function-declaration] 82 1827 | page_handle_poison(page, false, true); 83 | ^~~~~~~~~~~~~~~~~~ 84 | page_init_poison -- Linaro LKFT
https://lkft.linaro.org
4 years, 8 months
4
3
0
0
← Newer
1
2
3
4
5
6
7
8
...
88
Older →
Jump to page:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
Results per page:
10
25
50
100
200