* [akpm-mm:mm-unstable 170/172] fs/aio.c:478:27: error: 'noop_dirty_folio' undeclared here (not in a function)
@ 2024-12-09 4:19 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2024-12-09 4:19 UTC (permalink / raw)
To: Junjie Fu; +Cc: oe-kbuild-all, Andrew Morton, Linux Memory Management List
tree: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-unstable
head: 6e165f54437931f329d09dca6c19d99af08a36e1
commit: 98a9217fdcb8c8a64670a57180fdfc2f468e4ff0 [170/172] mempolicy.h: remove unnecessary header file inclusions
config: arm-randconfig-002-20241207 (https://download.01.org/0day-ci/archive/20241207/202412072000.csqsrSsg-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241207/202412072000.csqsrSsg-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202412072000.csqsrSsg-lkp@intel.com/
All errors (new ones prefixed by >>):
>> fs/aio.c:478:27: error: 'noop_dirty_folio' undeclared here (not in a function)
478 | .dirty_folio = noop_dirty_folio,
| ^~~~~~~~~~~~~~~~
fs/aio.c: In function 'aio_setup_ring':
>> fs/aio.c:524:25: error: implicit declaration of function '__filemap_get_folio'; did you mean 'filemap_dirty_folio'? [-Wimplicit-function-declaration]
524 | folio = __filemap_get_folio(file->f_mapping, i,
| ^~~~~~~~~~~~~~~~~~~
| filemap_dirty_folio
>> fs/aio.c:525:45: error: 'FGP_LOCK' undeclared (first use in this function); did you mean 'BPF_F_LOCK'?
525 | FGP_LOCK | FGP_ACCESSED | FGP_CREAT,
| ^~~~~~~~
| BPF_F_LOCK
fs/aio.c:525:45: note: each undeclared identifier is reported only once for each function it appears in
>> fs/aio.c:525:56: error: 'FGP_ACCESSED' undeclared (first use in this function)
525 | FGP_LOCK | FGP_ACCESSED | FGP_CREAT,
| ^~~~~~~~~~~~
>> fs/aio.c:525:71: error: 'FGP_CREAT' undeclared (first use in this function); did you mean 'IPC_CREAT'?
525 | FGP_LOCK | FGP_ACCESSED | FGP_CREAT,
| ^~~~~~~~~
| IPC_CREAT
>> fs/aio.c:532:17: error: implicit declaration of function 'folio_end_read'; did you mean 'folio_test_head'? [-Wimplicit-function-declaration]
532 | folio_end_read(folio, true);
| ^~~~~~~~~~~~~~
| folio_test_head
vim +/noop_dirty_folio +478 fs/aio.c
^1da177e4c3f41 Linus Torvalds 2005-04-16 476
36bc08cc01709b Gu Zheng 2013-07-16 477 static const struct address_space_operations aio_ctx_aops = {
46de8b979492e1 Matthew Wilcox (Oracle 2022-02-09 @478) .dirty_folio = noop_dirty_folio,
3648951ceb0ad2 Matthew Wilcox (Oracle 2022-06-06 479) .migrate_folio = aio_migrate_folio,
36bc08cc01709b Gu Zheng 2013-07-16 480 };
36bc08cc01709b Gu Zheng 2013-07-16 481
2a8a98673c13cb Mauricio Faria de Oliveira 2017-07-05 482 static int aio_setup_ring(struct kioctx *ctx, unsigned int nr_events)
^1da177e4c3f41 Linus Torvalds 2005-04-16 483 {
^1da177e4c3f41 Linus Torvalds 2005-04-16 484 struct aio_ring *ring;
41003a7bcfed12 Zach Brown 2013-05-07 485 struct mm_struct *mm = current->mm;
3dc9acb6760039 Linus Torvalds 2013-12-20 486 unsigned long size, unused;
^1da177e4c3f41 Linus Torvalds 2005-04-16 487 int nr_pages;
36bc08cc01709b Gu Zheng 2013-07-16 488 int i;
36bc08cc01709b Gu Zheng 2013-07-16 489 struct file *file;
^1da177e4c3f41 Linus Torvalds 2005-04-16 490
^1da177e4c3f41 Linus Torvalds 2005-04-16 491 /* Compensate for the ring buffer's head/tail overlap entry */
^1da177e4c3f41 Linus Torvalds 2005-04-16 492 nr_events += 2; /* 1 is required, 2 for good luck */
^1da177e4c3f41 Linus Torvalds 2005-04-16 493
^1da177e4c3f41 Linus Torvalds 2005-04-16 494 size = sizeof(struct aio_ring);
^1da177e4c3f41 Linus Torvalds 2005-04-16 495 size += sizeof(struct io_event) * nr_events;
^1da177e4c3f41 Linus Torvalds 2005-04-16 496
36bc08cc01709b Gu Zheng 2013-07-16 497 nr_pages = PFN_UP(size);
^1da177e4c3f41 Linus Torvalds 2005-04-16 498 if (nr_pages < 0)
^1da177e4c3f41 Linus Torvalds 2005-04-16 499 return -EINVAL;
^1da177e4c3f41 Linus Torvalds 2005-04-16 500
71ad7490c1f32b Benjamin LaHaise 2013-09-17 501 file = aio_private_file(ctx, nr_pages);
36bc08cc01709b Gu Zheng 2013-07-16 502 if (IS_ERR(file)) {
36bc08cc01709b Gu Zheng 2013-07-16 503 ctx->aio_ring_file = NULL;
fa8a53c39f3fdd Benjamin LaHaise 2014-03-28 504 return -ENOMEM;
36bc08cc01709b Gu Zheng 2013-07-16 505 }
36bc08cc01709b Gu Zheng 2013-07-16 506
3dc9acb6760039 Linus Torvalds 2013-12-20 507 ctx->aio_ring_file = file;
3dc9acb6760039 Linus Torvalds 2013-12-20 508 nr_events = (PAGE_SIZE * nr_pages - sizeof(struct aio_ring))
3dc9acb6760039 Linus Torvalds 2013-12-20 509 / sizeof(struct io_event);
3dc9acb6760039 Linus Torvalds 2013-12-20 510
16594e60cd8e6d Kefeng Wang 2024-03-21 511 ctx->ring_folios = ctx->internal_folios;
3dc9acb6760039 Linus Torvalds 2013-12-20 512 if (nr_pages > AIO_RING_PAGES) {
16594e60cd8e6d Kefeng Wang 2024-03-21 513 ctx->ring_folios = kcalloc(nr_pages, sizeof(struct folio *),
3dc9acb6760039 Linus Torvalds 2013-12-20 514 GFP_KERNEL);
16594e60cd8e6d Kefeng Wang 2024-03-21 515 if (!ctx->ring_folios) {
3dc9acb6760039 Linus Torvalds 2013-12-20 516 put_aio_ring_file(ctx);
3dc9acb6760039 Linus Torvalds 2013-12-20 517 return -ENOMEM;
3dc9acb6760039 Linus Torvalds 2013-12-20 518 }
3dc9acb6760039 Linus Torvalds 2013-12-20 519 }
3dc9acb6760039 Linus Torvalds 2013-12-20 520
36bc08cc01709b Gu Zheng 2013-07-16 521 for (i = 0; i < nr_pages; i++) {
75a07b557a11a7 Kefeng Wang 2024-03-21 522 struct folio *folio;
75a07b557a11a7 Kefeng Wang 2024-03-21 523
75a07b557a11a7 Kefeng Wang 2024-03-21 @524 folio = __filemap_get_folio(file->f_mapping, i,
75a07b557a11a7 Kefeng Wang 2024-03-21 @525 FGP_LOCK | FGP_ACCESSED | FGP_CREAT,
75a07b557a11a7 Kefeng Wang 2024-03-21 526 GFP_USER | __GFP_ZERO);
75a07b557a11a7 Kefeng Wang 2024-03-21 527 if (IS_ERR(folio))
36bc08cc01709b Gu Zheng 2013-07-16 528 break;
^1da177e4c3f41 Linus Torvalds 2005-04-16 529
75a07b557a11a7 Kefeng Wang 2024-03-21 530 pr_debug("pid(%d) [%d] folio->count=%d\n", current->pid, i,
75a07b557a11a7 Kefeng Wang 2024-03-21 531 folio_ref_count(folio));
75a07b557a11a7 Kefeng Wang 2024-03-21 @532 folio_end_read(folio, true);
75a07b557a11a7 Kefeng Wang 2024-03-21 533
16594e60cd8e6d Kefeng Wang 2024-03-21 534 ctx->ring_folios[i] = folio;
^1da177e4c3f41 Linus Torvalds 2005-04-16 535 }
3dc9acb6760039 Linus Torvalds 2013-12-20 536 ctx->nr_pages = i;
3dc9acb6760039 Linus Torvalds 2013-12-20 537
3dc9acb6760039 Linus Torvalds 2013-12-20 538 if (unlikely(i != nr_pages)) {
3dc9acb6760039 Linus Torvalds 2013-12-20 539 aio_free_ring(ctx);
fa8a53c39f3fdd Benjamin LaHaise 2014-03-28 540 return -ENOMEM;
d1b9432712a25e Gu Zheng 2013-12-04 541 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 542
58c85dc20a2c5b Kent Overstreet 2013-05-07 543 ctx->mmap_size = nr_pages * PAGE_SIZE;
58c85dc20a2c5b Kent Overstreet 2013-05-07 544 pr_debug("attempting mmap of %lu bytes\n", ctx->mmap_size);
36bc08cc01709b Gu Zheng 2013-07-16 545
d8ed45c5dcd455 Michel Lespinasse 2020-06-08 546 if (mmap_write_lock_killable(mm)) {
013373e8b86735 Michal Hocko 2016-05-23 547 ctx->mmap_size = 0;
013373e8b86735 Michal Hocko 2016-05-23 548 aio_free_ring(ctx);
013373e8b86735 Michal Hocko 2016-05-23 549 return -EINTR;
013373e8b86735 Michal Hocko 2016-05-23 550 }
013373e8b86735 Michal Hocko 2016-05-23 551
45e55300f11495 Peter Collingbourne 2020-08-06 552 ctx->mmap_base = do_mmap(ctx->aio_ring_file, 0, ctx->mmap_size,
e3fc629d7bb708 Al Viro 2012-05-30 553 PROT_READ | PROT_WRITE,
592b5fad1677aa Yu-cheng Yu 2023-06-12 554 MAP_SHARED, 0, 0, &unused, NULL);
d8ed45c5dcd455 Michel Lespinasse 2020-06-08 555 mmap_write_unlock(mm);
3dc9acb6760039 Linus Torvalds 2013-12-20 556 if (IS_ERR((void *)ctx->mmap_base)) {
58c85dc20a2c5b Kent Overstreet 2013-05-07 557 ctx->mmap_size = 0;
^1da177e4c3f41 Linus Torvalds 2005-04-16 558 aio_free_ring(ctx);
fa8a53c39f3fdd Benjamin LaHaise 2014-03-28 559 return -ENOMEM;
^1da177e4c3f41 Linus Torvalds 2005-04-16 560 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 561
58c85dc20a2c5b Kent Overstreet 2013-05-07 562 pr_debug("mmap address: 0x%08lx\n", ctx->mmap_base);
d6c355c7dabcd7 Benjamin LaHaise 2013-09-09 563
58c85dc20a2c5b Kent Overstreet 2013-05-07 564 ctx->user_id = ctx->mmap_base;
58c85dc20a2c5b Kent Overstreet 2013-05-07 565 ctx->nr_events = nr_events; /* trusted copy */
^1da177e4c3f41 Linus Torvalds 2005-04-16 566
16594e60cd8e6d Kefeng Wang 2024-03-21 567 ring = folio_address(ctx->ring_folios[0]);
^1da177e4c3f41 Linus Torvalds 2005-04-16 568 ring->nr = nr_events; /* user copy */
db446a08c23d54 Benjamin LaHaise 2013-07-30 569 ring->id = ~0U;
^1da177e4c3f41 Linus Torvalds 2005-04-16 570 ring->head = ring->tail = 0;
^1da177e4c3f41 Linus Torvalds 2005-04-16 571 ring->magic = AIO_RING_MAGIC;
^1da177e4c3f41 Linus Torvalds 2005-04-16 572 ring->compat_features = AIO_RING_COMPAT_FEATURES;
^1da177e4c3f41 Linus Torvalds 2005-04-16 573 ring->incompat_features = AIO_RING_INCOMPAT_FEATURES;
^1da177e4c3f41 Linus Torvalds 2005-04-16 574 ring->header_length = sizeof(struct aio_ring);
16594e60cd8e6d Kefeng Wang 2024-03-21 575 flush_dcache_folio(ctx->ring_folios[0]);
^1da177e4c3f41 Linus Torvalds 2005-04-16 576
^1da177e4c3f41 Linus Torvalds 2005-04-16 577 return 0;
^1da177e4c3f41 Linus Torvalds 2005-04-16 578 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 579
:::::: The code at line 478 was first introduced by commit
:::::: 46de8b979492e1377947700ecb1e3169088668b2 fs: Convert __set_page_dirty_no_writeback to noop_dirty_folio
:::::: TO: Matthew Wilcox (Oracle) <willy@infradead.org>
:::::: CC: Matthew Wilcox (Oracle) <willy@infradead.org>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2024-12-09 4:20 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-12-09 4:19 [akpm-mm:mm-unstable 170/172] fs/aio.c:478:27: error: 'noop_dirty_folio' undeclared here (not in a function) kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox