* [kbuild] [ebiggers:wip-test-dummy-encryption 3/4] fs/f2fs/super.c:822:4: error: 'ret' undeclared; did you mean 'net'?
@ 2020-05-12 12:37 kbuild test robot
0 siblings, 0 replies; only message in thread
From: kbuild test robot @ 2020-05-12 12:37 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 42360 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux.git wip-test-dummy-encryption
head: 3401801b9e29c95126ac1b3fb324d25f540048a8
commit: 0f065e5bfd243dfbc49e296285a07153e30c997d [3/4] fscrypt: support test_dummy_encryption=v2
config: h8300-randconfig-r024-20200512 (attached as .config)
compiler: h8300-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 0f065e5bfd243dfbc49e296285a07153e30c997d
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day GCC_VERSION=9.3.0 make.cross ARCH=h8300
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
fs/f2fs/super.c: In function 'parse_options':
>> fs/f2fs/super.c:822:4: error: 'ret' undeclared (first use in this function); did you mean 'net'?
822 | ret = f2fs_set_test_dummy_encryption(sb, p, &args[0],
| ^~~
| net
fs/f2fs/super.c:822:4: note: each undeclared identifier is reported only once for each function it appears in
# https://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux.git/commit/?id=0f065e5bfd243dfbc49e296285a07153e30c997d
git remote add ebiggers https://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux.git
git remote update ebiggers
git checkout 0f065e5bfd243dfbc49e296285a07153e30c997d
vim +822 fs/f2fs/super.c
696c018c7718f5 Namjae Jeon 2013-06-16 450
696c018c7718f5 Namjae Jeon 2013-06-16 451 if (!options)
696c018c7718f5 Namjae Jeon 2013-06-16 452 return 0;
696c018c7718f5 Namjae Jeon 2013-06-16 453
696c018c7718f5 Namjae Jeon 2013-06-16 454 while ((p = strsep(&options, ",")) != NULL) {
696c018c7718f5 Namjae Jeon 2013-06-16 455 int token;
696c018c7718f5 Namjae Jeon 2013-06-16 456 if (!*p)
696c018c7718f5 Namjae Jeon 2013-06-16 457 continue;
696c018c7718f5 Namjae Jeon 2013-06-16 458 /*
696c018c7718f5 Namjae Jeon 2013-06-16 459 * Initialize args struct so we know whether arg was
696c018c7718f5 Namjae Jeon 2013-06-16 460 * found; some options take optional arguments.
696c018c7718f5 Namjae Jeon 2013-06-16 461 */
696c018c7718f5 Namjae Jeon 2013-06-16 462 args[0].to = args[0].from = NULL;
696c018c7718f5 Namjae Jeon 2013-06-16 463 token = match_token(p, f2fs_tokens, args);
696c018c7718f5 Namjae Jeon 2013-06-16 464
696c018c7718f5 Namjae Jeon 2013-06-16 465 switch (token) {
696c018c7718f5 Namjae Jeon 2013-06-16 466 case Opt_gc_background:
696c018c7718f5 Namjae Jeon 2013-06-16 467 name = match_strdup(&args[0]);
696c018c7718f5 Namjae Jeon 2013-06-16 468
696c018c7718f5 Namjae Jeon 2013-06-16 469 if (!name)
696c018c7718f5 Namjae Jeon 2013-06-16 470 return -ENOMEM;
6aefd93b01379b Jaegeuk Kim 2015-10-05 471 if (strlen(name) == 2 && !strncmp(name, "on", 2)) {
bbbc34fd666254 Chao Yu 2020-02-14 472 F2FS_OPTION(sbi).bggc_mode = BGGC_MODE_ON;
6aefd93b01379b Jaegeuk Kim 2015-10-05 473 } else if (strlen(name) == 3 && !strncmp(name, "off", 3)) {
bbbc34fd666254 Chao Yu 2020-02-14 474 F2FS_OPTION(sbi).bggc_mode = BGGC_MODE_OFF;
6aefd93b01379b Jaegeuk Kim 2015-10-05 475 } else if (strlen(name) == 4 && !strncmp(name, "sync", 4)) {
bbbc34fd666254 Chao Yu 2020-02-14 476 F2FS_OPTION(sbi).bggc_mode = BGGC_MODE_SYNC;
6aefd93b01379b Jaegeuk Kim 2015-10-05 477 } else {
5222595d093ebe Jaegeuk Kim 2018-12-13 478 kvfree(name);
696c018c7718f5 Namjae Jeon 2013-06-16 479 return -EINVAL;
696c018c7718f5 Namjae Jeon 2013-06-16 480 }
5222595d093ebe Jaegeuk Kim 2018-12-13 481 kvfree(name);
696c018c7718f5 Namjae Jeon 2013-06-16 482 break;
696c018c7718f5 Namjae Jeon 2013-06-16 483 case Opt_disable_roll_forward:
696c018c7718f5 Namjae Jeon 2013-06-16 484 set_opt(sbi, DISABLE_ROLL_FORWARD);
696c018c7718f5 Namjae Jeon 2013-06-16 485 break;
2d834bf9ac8e40 Jaegeuk Kim 2015-01-23 486 case Opt_norecovery:
2d834bf9ac8e40 Jaegeuk Kim 2015-01-23 487 /* this option mounts f2fs with ro */
a9117eca1de6b7 Chao Yu 2020-02-14 488 set_opt(sbi, NORECOVERY);
2d834bf9ac8e40 Jaegeuk Kim 2015-01-23 489 if (!f2fs_readonly(sb))
2d834bf9ac8e40 Jaegeuk Kim 2015-01-23 490 return -EINVAL;
2d834bf9ac8e40 Jaegeuk Kim 2015-01-23 491 break;
696c018c7718f5 Namjae Jeon 2013-06-16 492 case Opt_discard:
696c018c7718f5 Namjae Jeon 2013-06-16 493 set_opt(sbi, DISCARD);
696c018c7718f5 Namjae Jeon 2013-06-16 494 break;
64058be9c8e357 Chao Yu 2016-07-03 495 case Opt_nodiscard:
7beb01f74415c5 Chao Yu 2018-10-24 496 if (f2fs_sb_has_blkzoned(sbi)) {
dcbb4c10e6d969 Joe Perches 2019-06-18 497 f2fs_warn(sbi, "discard is required for zoned block devices");
96ba2decb4241a Damien Le Moal 2016-10-28 498 return -EINVAL;
96ba2decb4241a Damien Le Moal 2016-10-28 499 }
64058be9c8e357 Chao Yu 2016-07-03 500 clear_opt(sbi, DISCARD);
487df616dec332 Damien Le Moal 2016-10-28 501 break;
696c018c7718f5 Namjae Jeon 2013-06-16 502 case Opt_noheap:
696c018c7718f5 Namjae Jeon 2013-06-16 503 set_opt(sbi, NOHEAP);
696c018c7718f5 Namjae Jeon 2013-06-16 504 break;
7a20b8a61eff81 Jaegeuk Kim 2017-03-24 505 case Opt_heap:
7a20b8a61eff81 Jaegeuk Kim 2017-03-24 506 clear_opt(sbi, NOHEAP);
7a20b8a61eff81 Jaegeuk Kim 2017-03-24 507 break;
696c018c7718f5 Namjae Jeon 2013-06-16 508 #ifdef CONFIG_F2FS_FS_XATTR
4058c5117d6d8a Kelly Anderson 2013-10-07 509 case Opt_user_xattr:
4058c5117d6d8a Kelly Anderson 2013-10-07 510 set_opt(sbi, XATTR_USER);
4058c5117d6d8a Kelly Anderson 2013-10-07 511 break;
696c018c7718f5 Namjae Jeon 2013-06-16 512 case Opt_nouser_xattr:
696c018c7718f5 Namjae Jeon 2013-06-16 513 clear_opt(sbi, XATTR_USER);
696c018c7718f5 Namjae Jeon 2013-06-16 514 break;
444c580f7e9ad2 Jaegeuk Kim 2013-08-08 515 case Opt_inline_xattr:
444c580f7e9ad2 Jaegeuk Kim 2013-08-08 516 set_opt(sbi, INLINE_XATTR);
444c580f7e9ad2 Jaegeuk Kim 2013-08-08 517 break;
23cf7212a1cae2 Chao Yu 2017-02-15 518 case Opt_noinline_xattr:
23cf7212a1cae2 Chao Yu 2017-02-15 519 clear_opt(sbi, INLINE_XATTR);
23cf7212a1cae2 Chao Yu 2017-02-15 520 break;
6afc662e68b5f9 Chao Yu 2017-09-06 521 case Opt_inline_xattr_size:
6afc662e68b5f9 Chao Yu 2017-09-06 522 if (args->from && match_int(args, &arg))
6afc662e68b5f9 Chao Yu 2017-09-06 523 return -EINVAL;
6afc662e68b5f9 Chao Yu 2017-09-06 524 set_opt(sbi, INLINE_XATTR_SIZE);
63189b785960c3 Chao Yu 2018-03-08 525 F2FS_OPTION(sbi).inline_xattr_size = arg;
6afc662e68b5f9 Chao Yu 2017-09-06 526 break;
696c018c7718f5 Namjae Jeon 2013-06-16 527 #else
4058c5117d6d8a Kelly Anderson 2013-10-07 528 case Opt_user_xattr:
dcbb4c10e6d969 Joe Perches 2019-06-18 529 f2fs_info(sbi, "user_xattr options not supported");
4058c5117d6d8a Kelly Anderson 2013-10-07 530 break;
696c018c7718f5 Namjae Jeon 2013-06-16 531 case Opt_nouser_xattr:
dcbb4c10e6d969 Joe Perches 2019-06-18 532 f2fs_info(sbi, "nouser_xattr options not supported");
696c018c7718f5 Namjae Jeon 2013-06-16 533 break;
444c580f7e9ad2 Jaegeuk Kim 2013-08-08 534 case Opt_inline_xattr:
dcbb4c10e6d969 Joe Perches 2019-06-18 535 f2fs_info(sbi, "inline_xattr options not supported");
444c580f7e9ad2 Jaegeuk Kim 2013-08-08 536 break;
23cf7212a1cae2 Chao Yu 2017-02-15 537 case Opt_noinline_xattr:
dcbb4c10e6d969 Joe Perches 2019-06-18 538 f2fs_info(sbi, "noinline_xattr options not supported");
23cf7212a1cae2 Chao Yu 2017-02-15 539 break;
696c018c7718f5 Namjae Jeon 2013-06-16 540 #endif
696c018c7718f5 Namjae Jeon 2013-06-16 541 #ifdef CONFIG_F2FS_FS_POSIX_ACL
4058c5117d6d8a Kelly Anderson 2013-10-07 542 case Opt_acl:
4058c5117d6d8a Kelly Anderson 2013-10-07 543 set_opt(sbi, POSIX_ACL);
4058c5117d6d8a Kelly Anderson 2013-10-07 544 break;
696c018c7718f5 Namjae Jeon 2013-06-16 545 case Opt_noacl:
696c018c7718f5 Namjae Jeon 2013-06-16 546 clear_opt(sbi, POSIX_ACL);
696c018c7718f5 Namjae Jeon 2013-06-16 547 break;
696c018c7718f5 Namjae Jeon 2013-06-16 548 #else
4058c5117d6d8a Kelly Anderson 2013-10-07 549 case Opt_acl:
dcbb4c10e6d969 Joe Perches 2019-06-18 550 f2fs_info(sbi, "acl options not supported");
4058c5117d6d8a Kelly Anderson 2013-10-07 551 break;
696c018c7718f5 Namjae Jeon 2013-06-16 552 case Opt_noacl:
dcbb4c10e6d969 Joe Perches 2019-06-18 553 f2fs_info(sbi, "noacl options not supported");
696c018c7718f5 Namjae Jeon 2013-06-16 554 break;
696c018c7718f5 Namjae Jeon 2013-06-16 555 #endif
696c018c7718f5 Namjae Jeon 2013-06-16 556 case Opt_active_logs:
696c018c7718f5 Namjae Jeon 2013-06-16 557 if (args->from && match_int(args, &arg))
696c018c7718f5 Namjae Jeon 2013-06-16 558 return -EINVAL;
696c018c7718f5 Namjae Jeon 2013-06-16 559 if (arg != 2 && arg != 4 && arg != NR_CURSEG_TYPE)
696c018c7718f5 Namjae Jeon 2013-06-16 560 return -EINVAL;
63189b785960c3 Chao Yu 2018-03-08 561 F2FS_OPTION(sbi).active_logs = arg;
696c018c7718f5 Namjae Jeon 2013-06-16 562 break;
696c018c7718f5 Namjae Jeon 2013-06-16 563 case Opt_disable_ext_identify:
696c018c7718f5 Namjae Jeon 2013-06-16 564 set_opt(sbi, DISABLE_EXT_IDENTIFY);
696c018c7718f5 Namjae Jeon 2013-06-16 565 break;
8274de77b7072d Huajun Li 2013-11-10 566 case Opt_inline_data:
8274de77b7072d Huajun Li 2013-11-10 567 set_opt(sbi, INLINE_DATA);
8274de77b7072d Huajun Li 2013-11-10 568 break;
5efd3c6f1be9cf Chao Yu 2014-09-24 569 case Opt_inline_dentry:
5efd3c6f1be9cf Chao Yu 2014-09-24 570 set_opt(sbi, INLINE_DENTRY);
5efd3c6f1be9cf Chao Yu 2014-09-24 571 break;
97c1794a5dc160 Chao Yu 2016-05-09 572 case Opt_noinline_dentry:
97c1794a5dc160 Chao Yu 2016-05-09 573 clear_opt(sbi, INLINE_DENTRY);
97c1794a5dc160 Chao Yu 2016-05-09 574 break;
6b4afdd794783f Jaegeuk Kim 2014-04-02 575 case Opt_flush_merge:
6b4afdd794783f Jaegeuk Kim 2014-04-02 576 set_opt(sbi, FLUSH_MERGE);
6b4afdd794783f Jaegeuk Kim 2014-04-02 577 break;
69e9e4274450c7 Jaegeuk Kim 2016-05-20 578 case Opt_noflush_merge:
69e9e4274450c7 Jaegeuk Kim 2016-05-20 579 clear_opt(sbi, FLUSH_MERGE);
69e9e4274450c7 Jaegeuk Kim 2016-05-20 580 break;
0f7b2abd188089 Jaegeuk Kim 2014-07-23 581 case Opt_nobarrier:
0f7b2abd188089 Jaegeuk Kim 2014-07-23 582 set_opt(sbi, NOBARRIER);
0f7b2abd188089 Jaegeuk Kim 2014-07-23 583 break;
d5053a34a9cc79 Jaegeuk Kim 2014-10-30 584 case Opt_fastboot:
d5053a34a9cc79 Jaegeuk Kim 2014-10-30 585 set_opt(sbi, FASTBOOT);
d5053a34a9cc79 Jaegeuk Kim 2014-10-30 586 break;
8967215954a509 Chao Yu 2015-02-05 587 case Opt_extent_cache:
8967215954a509 Chao Yu 2015-02-05 588 set_opt(sbi, EXTENT_CACHE);
8967215954a509 Chao Yu 2015-02-05 589 break;
7daaea256de42d Jaegeuk Kim 2015-06-25 590 case Opt_noextent_cache:
7daaea256de42d Jaegeuk Kim 2015-06-25 591 clear_opt(sbi, EXTENT_CACHE);
7daaea256de42d Jaegeuk Kim 2015-06-25 592 break;
75342797988a0f Wanpeng Li 2015-03-24 593 case Opt_noinline_data:
75342797988a0f Wanpeng Li 2015-03-24 594 clear_opt(sbi, INLINE_DATA);
75342797988a0f Wanpeng Li 2015-03-24 595 break;
343f40f0a70eb7 Chao Yu 2015-12-16 596 case Opt_data_flush:
343f40f0a70eb7 Chao Yu 2015-12-16 597 set_opt(sbi, DATA_FLUSH);
343f40f0a70eb7 Chao Yu 2015-12-16 598 break;
7e65be49ed94f8 Jaegeuk Kim 2017-12-27 599 case Opt_reserve_root:
7e65be49ed94f8 Jaegeuk Kim 2017-12-27 600 if (args->from && match_int(args, &arg))
7e65be49ed94f8 Jaegeuk Kim 2017-12-27 601 return -EINVAL;
7e65be49ed94f8 Jaegeuk Kim 2017-12-27 602 if (test_opt(sbi, RESERVE_ROOT)) {
dcbb4c10e6d969 Joe Perches 2019-06-18 603 f2fs_info(sbi, "Preserve previous reserve_root=%u",
63189b785960c3 Chao Yu 2018-03-08 604 F2FS_OPTION(sbi).root_reserved_blocks);
7e65be49ed94f8 Jaegeuk Kim 2017-12-27 605 } else {
63189b785960c3 Chao Yu 2018-03-08 606 F2FS_OPTION(sbi).root_reserved_blocks = arg;
7e65be49ed94f8 Jaegeuk Kim 2017-12-27 607 set_opt(sbi, RESERVE_ROOT);
7e65be49ed94f8 Jaegeuk Kim 2017-12-27 608 }
7e65be49ed94f8 Jaegeuk Kim 2017-12-27 609 break;
7c2e59632b846a Jaegeuk Kim 2018-01-04 610 case Opt_resuid:
7c2e59632b846a Jaegeuk Kim 2018-01-04 611 if (args->from && match_int(args, &arg))
7c2e59632b846a Jaegeuk Kim 2018-01-04 612 return -EINVAL;
7c2e59632b846a Jaegeuk Kim 2018-01-04 613 uid = make_kuid(current_user_ns(), arg);
7c2e59632b846a Jaegeuk Kim 2018-01-04 614 if (!uid_valid(uid)) {
dcbb4c10e6d969 Joe Perches 2019-06-18 615 f2fs_err(sbi, "Invalid uid value %d", arg);
7c2e59632b846a Jaegeuk Kim 2018-01-04 616 return -EINVAL;
7c2e59632b846a Jaegeuk Kim 2018-01-04 617 }
63189b785960c3 Chao Yu 2018-03-08 618 F2FS_OPTION(sbi).s_resuid = uid;
7c2e59632b846a Jaegeuk Kim 2018-01-04 619 break;
7c2e59632b846a Jaegeuk Kim 2018-01-04 620 case Opt_resgid:
7c2e59632b846a Jaegeuk Kim 2018-01-04 621 if (args->from && match_int(args, &arg))
7c2e59632b846a Jaegeuk Kim 2018-01-04 622 return -EINVAL;
7c2e59632b846a Jaegeuk Kim 2018-01-04 623 gid = make_kgid(current_user_ns(), arg);
7c2e59632b846a Jaegeuk Kim 2018-01-04 624 if (!gid_valid(gid)) {
dcbb4c10e6d969 Joe Perches 2019-06-18 625 f2fs_err(sbi, "Invalid gid value %d", arg);
7c2e59632b846a Jaegeuk Kim 2018-01-04 626 return -EINVAL;
7c2e59632b846a Jaegeuk Kim 2018-01-04 627 }
63189b785960c3 Chao Yu 2018-03-08 628 F2FS_OPTION(sbi).s_resgid = gid;
7c2e59632b846a Jaegeuk Kim 2018-01-04 629 break;
36abef4e796d38 Jaegeuk Kim 2016-06-03 630 case Opt_mode:
36abef4e796d38 Jaegeuk Kim 2016-06-03 631 name = match_strdup(&args[0]);
36abef4e796d38 Jaegeuk Kim 2016-06-03 632
36abef4e796d38 Jaegeuk Kim 2016-06-03 633 if (!name)
36abef4e796d38 Jaegeuk Kim 2016-06-03 634 return -ENOMEM;
36abef4e796d38 Jaegeuk Kim 2016-06-03 635 if (strlen(name) == 8 &&
36abef4e796d38 Jaegeuk Kim 2016-06-03 636 !strncmp(name, "adaptive", 8)) {
7beb01f74415c5 Chao Yu 2018-10-24 637 if (f2fs_sb_has_blkzoned(sbi)) {
dcbb4c10e6d969 Joe Perches 2019-06-18 638 f2fs_warn(sbi, "adaptive mode is not allowed with zoned block device feature");
5222595d093ebe Jaegeuk Kim 2018-12-13 639 kvfree(name);
3adc57e97792e4 Damien Le Moal 2016-10-28 640 return -EINVAL;
3adc57e97792e4 Damien Le Moal 2016-10-28 641 }
b0332a0f957ca8 Chao Yu 2020-02-14 642 F2FS_OPTION(sbi).fs_mode = FS_MODE_ADAPTIVE;
36abef4e796d38 Jaegeuk Kim 2016-06-03 643 } else if (strlen(name) == 3 &&
36abef4e796d38 Jaegeuk Kim 2016-06-03 644 !strncmp(name, "lfs", 3)) {
b0332a0f957ca8 Chao Yu 2020-02-14 645 F2FS_OPTION(sbi).fs_mode = FS_MODE_LFS;
36abef4e796d38 Jaegeuk Kim 2016-06-03 646 } else {
5222595d093ebe Jaegeuk Kim 2018-12-13 647 kvfree(name);
36abef4e796d38 Jaegeuk Kim 2016-06-03 648 return -EINVAL;
36abef4e796d38 Jaegeuk Kim 2016-06-03 649 }
5222595d093ebe Jaegeuk Kim 2018-12-13 650 kvfree(name);
36abef4e796d38 Jaegeuk Kim 2016-06-03 651 break;
ec91538dccd443 Jaegeuk Kim 2016-12-21 652 case Opt_io_size_bits:
ec91538dccd443 Jaegeuk Kim 2016-12-21 653 if (args->from && match_int(args, &arg))
ec91538dccd443 Jaegeuk Kim 2016-12-21 654 return -EINVAL;
6d52e135c8a8b2 Chao Yu 2019-02-15 655 if (arg <= 0 || arg > __ilog2_u32(BIO_MAX_PAGES)) {
dcbb4c10e6d969 Joe Perches 2019-06-18 656 f2fs_warn(sbi, "Not support %d, larger than %d",
ec91538dccd443 Jaegeuk Kim 2016-12-21 657 1 << arg, BIO_MAX_PAGES);
ec91538dccd443 Jaegeuk Kim 2016-12-21 658 return -EINVAL;
ec91538dccd443 Jaegeuk Kim 2016-12-21 659 }
63189b785960c3 Chao Yu 2018-03-08 660 F2FS_OPTION(sbi).write_io_size_bits = arg;
ec91538dccd443 Jaegeuk Kim 2016-12-21 661 break;
4cb037ec3f754f Chengguang Xu 2018-09-12 662 #ifdef CONFIG_F2FS_FAULT_INJECTION
73faec4d99358b Jaegeuk Kim 2016-04-29 663 case Opt_fault_injection:
73faec4d99358b Jaegeuk Kim 2016-04-29 664 if (args->from && match_int(args, &arg))
73faec4d99358b Jaegeuk Kim 2016-04-29 665 return -EINVAL;
d494500a704342 Chao Yu 2018-08-08 666 f2fs_build_fault_attr(sbi, arg, F2FS_ALL_FAULT_TYPE);
d494500a704342 Chao Yu 2018-08-08 667 set_opt(sbi, FAULT_INJECTION);
d494500a704342 Chao Yu 2018-08-08 668 break;
4cb037ec3f754f Chengguang Xu 2018-09-12 669
d494500a704342 Chao Yu 2018-08-08 670 case Opt_fault_type:
d494500a704342 Chao Yu 2018-08-08 671 if (args->from && match_int(args, &arg))
d494500a704342 Chao Yu 2018-08-08 672 return -EINVAL;
d494500a704342 Chao Yu 2018-08-08 673 f2fs_build_fault_attr(sbi, 0, arg);
0cc0dec2b6f9bf Kaixu Xia 2017-01-27 674 set_opt(sbi, FAULT_INJECTION);
4cb037ec3f754f Chengguang Xu 2018-09-12 675 break;
73faec4d99358b Jaegeuk Kim 2016-04-29 676 #else
4cb037ec3f754f Chengguang Xu 2018-09-12 677 case Opt_fault_injection:
dcbb4c10e6d969 Joe Perches 2019-06-18 678 f2fs_info(sbi, "fault_injection options not supported");
73faec4d99358b Jaegeuk Kim 2016-04-29 679 break;
4cb037ec3f754f Chengguang Xu 2018-09-12 680
4cb037ec3f754f Chengguang Xu 2018-09-12 681 case Opt_fault_type:
dcbb4c10e6d969 Joe Perches 2019-06-18 682 f2fs_info(sbi, "fault_type options not supported");
4cb037ec3f754f Chengguang Xu 2018-09-12 683 break;
4cb037ec3f754f Chengguang Xu 2018-09-12 684 #endif
6d94c74ab85fe7 Jaegeuk Kim 2016-05-20 685 case Opt_lazytime:
1751e8a6cb935e Linus Torvalds 2017-11-27 686 sb->s_flags |= SB_LAZYTIME;
6d94c74ab85fe7 Jaegeuk Kim 2016-05-20 687 break;
6d94c74ab85fe7 Jaegeuk Kim 2016-05-20 688 case Opt_nolazytime:
1751e8a6cb935e Linus Torvalds 2017-11-27 689 sb->s_flags &= ~SB_LAZYTIME;
6d94c74ab85fe7 Jaegeuk Kim 2016-05-20 690 break;
0abd675e97e60d Chao Yu 2017-07-09 691 #ifdef CONFIG_QUOTA
4b2414d04e9912 Chao Yu 2017-08-08 692 case Opt_quota:
0abd675e97e60d Chao Yu 2017-07-09 693 case Opt_usrquota:
0abd675e97e60d Chao Yu 2017-07-09 694 set_opt(sbi, USRQUOTA);
0abd675e97e60d Chao Yu 2017-07-09 695 break;
0abd675e97e60d Chao Yu 2017-07-09 696 case Opt_grpquota:
0abd675e97e60d Chao Yu 2017-07-09 697 set_opt(sbi, GRPQUOTA);
0abd675e97e60d Chao Yu 2017-07-09 698 break;
5c57132eaf5265 Chao Yu 2017-07-26 699 case Opt_prjquota:
5c57132eaf5265 Chao Yu 2017-07-26 700 set_opt(sbi, PRJQUOTA);
5c57132eaf5265 Chao Yu 2017-07-26 701 break;
4b2414d04e9912 Chao Yu 2017-08-08 702 case Opt_usrjquota:
4b2414d04e9912 Chao Yu 2017-08-08 703 ret = f2fs_set_qf_name(sb, USRQUOTA, &args[0]);
4b2414d04e9912 Chao Yu 2017-08-08 704 if (ret)
4b2414d04e9912 Chao Yu 2017-08-08 705 return ret;
4b2414d04e9912 Chao Yu 2017-08-08 706 break;
4b2414d04e9912 Chao Yu 2017-08-08 707 case Opt_grpjquota:
4b2414d04e9912 Chao Yu 2017-08-08 708 ret = f2fs_set_qf_name(sb, GRPQUOTA, &args[0]);
4b2414d04e9912 Chao Yu 2017-08-08 709 if (ret)
4b2414d04e9912 Chao Yu 2017-08-08 710 return ret;
4b2414d04e9912 Chao Yu 2017-08-08 711 break;
4b2414d04e9912 Chao Yu 2017-08-08 712 case Opt_prjjquota:
4b2414d04e9912 Chao Yu 2017-08-08 713 ret = f2fs_set_qf_name(sb, PRJQUOTA, &args[0]);
4b2414d04e9912 Chao Yu 2017-08-08 714 if (ret)
4b2414d04e9912 Chao Yu 2017-08-08 715 return ret;
4b2414d04e9912 Chao Yu 2017-08-08 716 break;
4b2414d04e9912 Chao Yu 2017-08-08 717 case Opt_offusrjquota:
4b2414d04e9912 Chao Yu 2017-08-08 718 ret = f2fs_clear_qf_name(sb, USRQUOTA);
4b2414d04e9912 Chao Yu 2017-08-08 719 if (ret)
4b2414d04e9912 Chao Yu 2017-08-08 720 return ret;
4b2414d04e9912 Chao Yu 2017-08-08 721 break;
4b2414d04e9912 Chao Yu 2017-08-08 722 case Opt_offgrpjquota:
4b2414d04e9912 Chao Yu 2017-08-08 723 ret = f2fs_clear_qf_name(sb, GRPQUOTA);
4b2414d04e9912 Chao Yu 2017-08-08 724 if (ret)
4b2414d04e9912 Chao Yu 2017-08-08 725 return ret;
4b2414d04e9912 Chao Yu 2017-08-08 726 break;
4b2414d04e9912 Chao Yu 2017-08-08 727 case Opt_offprjjquota:
4b2414d04e9912 Chao Yu 2017-08-08 728 ret = f2fs_clear_qf_name(sb, PRJQUOTA);
4b2414d04e9912 Chao Yu 2017-08-08 729 if (ret)
4b2414d04e9912 Chao Yu 2017-08-08 730 return ret;
4b2414d04e9912 Chao Yu 2017-08-08 731 break;
4b2414d04e9912 Chao Yu 2017-08-08 732 case Opt_jqfmt_vfsold:
63189b785960c3 Chao Yu 2018-03-08 733 F2FS_OPTION(sbi).s_jquota_fmt = QFMT_VFS_OLD;
4b2414d04e9912 Chao Yu 2017-08-08 734 break;
4b2414d04e9912 Chao Yu 2017-08-08 735 case Opt_jqfmt_vfsv0:
63189b785960c3 Chao Yu 2018-03-08 736 F2FS_OPTION(sbi).s_jquota_fmt = QFMT_VFS_V0;
4b2414d04e9912 Chao Yu 2017-08-08 737 break;
4b2414d04e9912 Chao Yu 2017-08-08 738 case Opt_jqfmt_vfsv1:
63189b785960c3 Chao Yu 2018-03-08 739 F2FS_OPTION(sbi).s_jquota_fmt = QFMT_VFS_V1;
4b2414d04e9912 Chao Yu 2017-08-08 740 break;
4b2414d04e9912 Chao Yu 2017-08-08 741 case Opt_noquota:
4b2414d04e9912 Chao Yu 2017-08-08 742 clear_opt(sbi, QUOTA);
4b2414d04e9912 Chao Yu 2017-08-08 743 clear_opt(sbi, USRQUOTA);
4b2414d04e9912 Chao Yu 2017-08-08 744 clear_opt(sbi, GRPQUOTA);
4b2414d04e9912 Chao Yu 2017-08-08 745 clear_opt(sbi, PRJQUOTA);
4b2414d04e9912 Chao Yu 2017-08-08 746 break;
0abd675e97e60d Chao Yu 2017-07-09 747 #else
4b2414d04e9912 Chao Yu 2017-08-08 748 case Opt_quota:
0abd675e97e60d Chao Yu 2017-07-09 749 case Opt_usrquota:
0abd675e97e60d Chao Yu 2017-07-09 750 case Opt_grpquota:
5c57132eaf5265 Chao Yu 2017-07-26 751 case Opt_prjquota:
4b2414d04e9912 Chao Yu 2017-08-08 752 case Opt_usrjquota:
4b2414d04e9912 Chao Yu 2017-08-08 753 case Opt_grpjquota:
4b2414d04e9912 Chao Yu 2017-08-08 754 case Opt_prjjquota:
4b2414d04e9912 Chao Yu 2017-08-08 755 case Opt_offusrjquota:
4b2414d04e9912 Chao Yu 2017-08-08 756 case Opt_offgrpjquota:
4b2414d04e9912 Chao Yu 2017-08-08 757 case Opt_offprjjquota:
4b2414d04e9912 Chao Yu 2017-08-08 758 case Opt_jqfmt_vfsold:
4b2414d04e9912 Chao Yu 2017-08-08 759 case Opt_jqfmt_vfsv0:
4b2414d04e9912 Chao Yu 2017-08-08 760 case Opt_jqfmt_vfsv1:
4b2414d04e9912 Chao Yu 2017-08-08 761 case Opt_noquota:
dcbb4c10e6d969 Joe Perches 2019-06-18 762 f2fs_info(sbi, "quota operations not supported");
0abd675e97e60d Chao Yu 2017-07-09 763 break;
0abd675e97e60d Chao Yu 2017-07-09 764 #endif
0cdd31953967b2 Hyunchul Lee 2018-01-31 765 case Opt_whint:
0cdd31953967b2 Hyunchul Lee 2018-01-31 766 name = match_strdup(&args[0]);
0cdd31953967b2 Hyunchul Lee 2018-01-31 767 if (!name)
0cdd31953967b2 Hyunchul Lee 2018-01-31 768 return -ENOMEM;
0cdd31953967b2 Hyunchul Lee 2018-01-31 769 if (strlen(name) == 10 &&
0cdd31953967b2 Hyunchul Lee 2018-01-31 770 !strncmp(name, "user-based", 10)) {
63189b785960c3 Chao Yu 2018-03-08 771 F2FS_OPTION(sbi).whint_mode = WHINT_MODE_USER;
0cdd31953967b2 Hyunchul Lee 2018-01-31 772 } else if (strlen(name) == 3 &&
0cdd31953967b2 Hyunchul Lee 2018-01-31 773 !strncmp(name, "off", 3)) {
63189b785960c3 Chao Yu 2018-03-08 774 F2FS_OPTION(sbi).whint_mode = WHINT_MODE_OFF;
f2e703f9a3caa9 Hyunchul Lee 2018-01-31 775 } else if (strlen(name) == 8 &&
f2e703f9a3caa9 Hyunchul Lee 2018-01-31 776 !strncmp(name, "fs-based", 8)) {
63189b785960c3 Chao Yu 2018-03-08 777 F2FS_OPTION(sbi).whint_mode = WHINT_MODE_FS;
0cdd31953967b2 Hyunchul Lee 2018-01-31 778 } else {
5222595d093ebe Jaegeuk Kim 2018-12-13 779 kvfree(name);
0cdd31953967b2 Hyunchul Lee 2018-01-31 780 return -EINVAL;
0cdd31953967b2 Hyunchul Lee 2018-01-31 781 }
5222595d093ebe Jaegeuk Kim 2018-12-13 782 kvfree(name);
0cdd31953967b2 Hyunchul Lee 2018-01-31 783 break;
079396270b0f1e Jaegeuk Kim 2018-02-18 784 case Opt_alloc:
079396270b0f1e Jaegeuk Kim 2018-02-18 785 name = match_strdup(&args[0]);
079396270b0f1e Jaegeuk Kim 2018-02-18 786 if (!name)
079396270b0f1e Jaegeuk Kim 2018-02-18 787 return -ENOMEM;
079396270b0f1e Jaegeuk Kim 2018-02-18 788
079396270b0f1e Jaegeuk Kim 2018-02-18 789 if (strlen(name) == 7 &&
079396270b0f1e Jaegeuk Kim 2018-02-18 790 !strncmp(name, "default", 7)) {
63189b785960c3 Chao Yu 2018-03-08 791 F2FS_OPTION(sbi).alloc_mode = ALLOC_MODE_DEFAULT;
079396270b0f1e Jaegeuk Kim 2018-02-18 792 } else if (strlen(name) == 5 &&
079396270b0f1e Jaegeuk Kim 2018-02-18 793 !strncmp(name, "reuse", 5)) {
63189b785960c3 Chao Yu 2018-03-08 794 F2FS_OPTION(sbi).alloc_mode = ALLOC_MODE_REUSE;
079396270b0f1e Jaegeuk Kim 2018-02-18 795 } else {
5222595d093ebe Jaegeuk Kim 2018-12-13 796 kvfree(name);
079396270b0f1e Jaegeuk Kim 2018-02-18 797 return -EINVAL;
079396270b0f1e Jaegeuk Kim 2018-02-18 798 }
5222595d093ebe Jaegeuk Kim 2018-12-13 799 kvfree(name);
079396270b0f1e Jaegeuk Kim 2018-02-18 800 break;
93cf93f17c8ef7 Junling Zheng 2018-03-07 801 case Opt_fsync:
93cf93f17c8ef7 Junling Zheng 2018-03-07 802 name = match_strdup(&args[0]);
93cf93f17c8ef7 Junling Zheng 2018-03-07 803 if (!name)
93cf93f17c8ef7 Junling Zheng 2018-03-07 804 return -ENOMEM;
93cf93f17c8ef7 Junling Zheng 2018-03-07 805 if (strlen(name) == 5 &&
93cf93f17c8ef7 Junling Zheng 2018-03-07 806 !strncmp(name, "posix", 5)) {
63189b785960c3 Chao Yu 2018-03-08 807 F2FS_OPTION(sbi).fsync_mode = FSYNC_MODE_POSIX;
93cf93f17c8ef7 Junling Zheng 2018-03-07 808 } else if (strlen(name) == 6 &&
93cf93f17c8ef7 Junling Zheng 2018-03-07 809 !strncmp(name, "strict", 6)) {
63189b785960c3 Chao Yu 2018-03-08 810 F2FS_OPTION(sbi).fsync_mode = FSYNC_MODE_STRICT;
d6290814b018aa Jaegeuk Kim 2018-05-25 811 } else if (strlen(name) == 9 &&
d6290814b018aa Jaegeuk Kim 2018-05-25 812 !strncmp(name, "nobarrier", 9)) {
d6290814b018aa Jaegeuk Kim 2018-05-25 813 F2FS_OPTION(sbi).fsync_mode =
d6290814b018aa Jaegeuk Kim 2018-05-25 814 FSYNC_MODE_NOBARRIER;
93cf93f17c8ef7 Junling Zheng 2018-03-07 815 } else {
5222595d093ebe Jaegeuk Kim 2018-12-13 816 kvfree(name);
93cf93f17c8ef7 Junling Zheng 2018-03-07 817 return -EINVAL;
93cf93f17c8ef7 Junling Zheng 2018-03-07 818 }
5222595d093ebe Jaegeuk Kim 2018-12-13 819 kvfree(name);
93cf93f17c8ef7 Junling Zheng 2018-03-07 820 break;
ff62af200b94e0 Sheng Yong 2018-03-15 821 case Opt_test_dummy_encryption:
0f065e5bfd243d Eric Biggers 2020-05-11 @822 ret = f2fs_set_test_dummy_encryption(sb, p, &args[0],
0f065e5bfd243d Eric Biggers 2020-05-11 823 is_remount);
0f065e5bfd243d Eric Biggers 2020-05-11 824 if (ret)
0f065e5bfd243d Eric Biggers 2020-05-11 825 return ret;
ff62af200b94e0 Sheng Yong 2018-03-15 826 break;
4d3aed70902f29 Daniel Rosenberg 2019-05-29 827 case Opt_checkpoint_disable_cap_perc:
4d3aed70902f29 Daniel Rosenberg 2019-05-29 828 if (args->from && match_int(args, &arg))
4d3aed70902f29 Daniel Rosenberg 2019-05-29 829 return -EINVAL;
4d3aed70902f29 Daniel Rosenberg 2019-05-29 830 if (arg < 0 || arg > 100)
4d3aed70902f29 Daniel Rosenberg 2019-05-29 831 return -EINVAL;
4d3aed70902f29 Daniel Rosenberg 2019-05-29 832 if (arg == 100)
4d3aed70902f29 Daniel Rosenberg 2019-05-29 833 F2FS_OPTION(sbi).unusable_cap =
4d3aed70902f29 Daniel Rosenberg 2019-05-29 834 sbi->user_block_count;
4d3aed70902f29 Daniel Rosenberg 2019-05-29 835 else
4d3aed70902f29 Daniel Rosenberg 2019-05-29 836 F2FS_OPTION(sbi).unusable_cap =
4d3aed70902f29 Daniel Rosenberg 2019-05-29 837 (sbi->user_block_count / 100) * arg;
4354994f097d06 Daniel Rosenberg 2018-08-20 838 set_opt(sbi, DISABLE_CHECKPOINT);
4d3aed70902f29 Daniel Rosenberg 2019-05-29 839 break;
4d3aed70902f29 Daniel Rosenberg 2019-05-29 840 case Opt_checkpoint_disable_cap:
4d3aed70902f29 Daniel Rosenberg 2019-05-29 841 if (args->from && match_int(args, &arg))
4354994f097d06 Daniel Rosenberg 2018-08-20 842 return -EINVAL;
4d3aed70902f29 Daniel Rosenberg 2019-05-29 843 F2FS_OPTION(sbi).unusable_cap = arg;
4d3aed70902f29 Daniel Rosenberg 2019-05-29 844 set_opt(sbi, DISABLE_CHECKPOINT);
4d3aed70902f29 Daniel Rosenberg 2019-05-29 845 break;
4d3aed70902f29 Daniel Rosenberg 2019-05-29 846 case Opt_checkpoint_disable:
4d3aed70902f29 Daniel Rosenberg 2019-05-29 847 set_opt(sbi, DISABLE_CHECKPOINT);
4d3aed70902f29 Daniel Rosenberg 2019-05-29 848 break;
4d3aed70902f29 Daniel Rosenberg 2019-05-29 849 case Opt_checkpoint_enable:
4d3aed70902f29 Daniel Rosenberg 2019-05-29 850 clear_opt(sbi, DISABLE_CHECKPOINT);
4354994f097d06 Daniel Rosenberg 2018-08-20 851 break;
4c8ff7095bef64 Chao Yu 2019-11-01 852 case Opt_compress_algorithm:
4c8ff7095bef64 Chao Yu 2019-11-01 853 if (!f2fs_sb_has_compression(sbi)) {
4c8ff7095bef64 Chao Yu 2019-11-01 854 f2fs_err(sbi, "Compression feature if off");
4c8ff7095bef64 Chao Yu 2019-11-01 855 return -EINVAL;
4c8ff7095bef64 Chao Yu 2019-11-01 856 }
4c8ff7095bef64 Chao Yu 2019-11-01 857 name = match_strdup(&args[0]);
4c8ff7095bef64 Chao Yu 2019-11-01 858 if (!name)
4c8ff7095bef64 Chao Yu 2019-11-01 859 return -ENOMEM;
4c8ff7095bef64 Chao Yu 2019-11-01 860 if (strlen(name) == 3 && !strcmp(name, "lzo")) {
4c8ff7095bef64 Chao Yu 2019-11-01 861 F2FS_OPTION(sbi).compress_algorithm =
4c8ff7095bef64 Chao Yu 2019-11-01 862 COMPRESS_LZO;
4c8ff7095bef64 Chao Yu 2019-11-01 863 } else if (strlen(name) == 3 &&
4c8ff7095bef64 Chao Yu 2019-11-01 864 !strcmp(name, "lz4")) {
4c8ff7095bef64 Chao Yu 2019-11-01 865 F2FS_OPTION(sbi).compress_algorithm =
4c8ff7095bef64 Chao Yu 2019-11-01 866 COMPRESS_LZ4;
50cfa66f0de02e Chao Yu 2020-03-03 867 } else if (strlen(name) == 4 &&
50cfa66f0de02e Chao Yu 2020-03-03 868 !strcmp(name, "zstd")) {
50cfa66f0de02e Chao Yu 2020-03-03 869 F2FS_OPTION(sbi).compress_algorithm =
50cfa66f0de02e Chao Yu 2020-03-03 870 COMPRESS_ZSTD;
4c8ff7095bef64 Chao Yu 2019-11-01 871 } else {
4c8ff7095bef64 Chao Yu 2019-11-01 872 kfree(name);
4c8ff7095bef64 Chao Yu 2019-11-01 873 return -EINVAL;
4c8ff7095bef64 Chao Yu 2019-11-01 874 }
4c8ff7095bef64 Chao Yu 2019-11-01 875 kfree(name);
4c8ff7095bef64 Chao Yu 2019-11-01 876 break;
4c8ff7095bef64 Chao Yu 2019-11-01 877 case Opt_compress_log_size:
4c8ff7095bef64 Chao Yu 2019-11-01 878 if (!f2fs_sb_has_compression(sbi)) {
4c8ff7095bef64 Chao Yu 2019-11-01 879 f2fs_err(sbi, "Compression feature is off");
4c8ff7095bef64 Chao Yu 2019-11-01 880 return -EINVAL;
4c8ff7095bef64 Chao Yu 2019-11-01 881 }
4c8ff7095bef64 Chao Yu 2019-11-01 882 if (args->from && match_int(args, &arg))
4c8ff7095bef64 Chao Yu 2019-11-01 883 return -EINVAL;
4c8ff7095bef64 Chao Yu 2019-11-01 884 if (arg < MIN_COMPRESS_LOG_SIZE ||
4c8ff7095bef64 Chao Yu 2019-11-01 885 arg > MAX_COMPRESS_LOG_SIZE) {
4c8ff7095bef64 Chao Yu 2019-11-01 886 f2fs_err(sbi,
4c8ff7095bef64 Chao Yu 2019-11-01 887 "Compress cluster log size is out of range");
4c8ff7095bef64 Chao Yu 2019-11-01 888 return -EINVAL;
4c8ff7095bef64 Chao Yu 2019-11-01 889 }
4c8ff7095bef64 Chao Yu 2019-11-01 890 F2FS_OPTION(sbi).compress_log_size = arg;
4c8ff7095bef64 Chao Yu 2019-11-01 891 break;
4c8ff7095bef64 Chao Yu 2019-11-01 892 case Opt_compress_extension:
4c8ff7095bef64 Chao Yu 2019-11-01 893 if (!f2fs_sb_has_compression(sbi)) {
4c8ff7095bef64 Chao Yu 2019-11-01 894 f2fs_err(sbi, "Compression feature is off");
4c8ff7095bef64 Chao Yu 2019-11-01 895 return -EINVAL;
4c8ff7095bef64 Chao Yu 2019-11-01 896 }
4c8ff7095bef64 Chao Yu 2019-11-01 897 name = match_strdup(&args[0]);
4c8ff7095bef64 Chao Yu 2019-11-01 898 if (!name)
4c8ff7095bef64 Chao Yu 2019-11-01 899 return -ENOMEM;
4c8ff7095bef64 Chao Yu 2019-11-01 900
4c8ff7095bef64 Chao Yu 2019-11-01 901 ext = F2FS_OPTION(sbi).extensions;
4c8ff7095bef64 Chao Yu 2019-11-01 902 ext_cnt = F2FS_OPTION(sbi).compress_ext_cnt;
4c8ff7095bef64 Chao Yu 2019-11-01 903
4c8ff7095bef64 Chao Yu 2019-11-01 904 if (strlen(name) >= F2FS_EXTENSION_LEN ||
4c8ff7095bef64 Chao Yu 2019-11-01 905 ext_cnt >= COMPRESS_EXT_NUM) {
4c8ff7095bef64 Chao Yu 2019-11-01 906 f2fs_err(sbi,
4c8ff7095bef64 Chao Yu 2019-11-01 907 "invalid extension length/number");
4c8ff7095bef64 Chao Yu 2019-11-01 908 kfree(name);
4c8ff7095bef64 Chao Yu 2019-11-01 909 return -EINVAL;
4c8ff7095bef64 Chao Yu 2019-11-01 910 }
4c8ff7095bef64 Chao Yu 2019-11-01 911
4c8ff7095bef64 Chao Yu 2019-11-01 912 strcpy(ext[ext_cnt], name);
4c8ff7095bef64 Chao Yu 2019-11-01 913 F2FS_OPTION(sbi).compress_ext_cnt++;
4c8ff7095bef64 Chao Yu 2019-11-01 914 kfree(name);
4c8ff7095bef64 Chao Yu 2019-11-01 915 break;
696c018c7718f5 Namjae Jeon 2013-06-16 916 default:
dcbb4c10e6d969 Joe Perches 2019-06-18 917 f2fs_err(sbi, "Unrecognized mount option \"%s\" or missing value",
696c018c7718f5 Namjae Jeon 2013-06-16 918 p);
696c018c7718f5 Namjae Jeon 2013-06-16 919 return -EINVAL;
696c018c7718f5 Namjae Jeon 2013-06-16 920 }
696c018c7718f5 Namjae Jeon 2013-06-16 921 }
4b2414d04e9912 Chao Yu 2017-08-08 922 #ifdef CONFIG_QUOTA
4b2414d04e9912 Chao Yu 2017-08-08 923 if (f2fs_check_quota_options(sbi))
4b2414d04e9912 Chao Yu 2017-08-08 924 return -EINVAL;
00960c2cd8f169 Sheng Yong 2018-07-24 925 #else
7beb01f74415c5 Chao Yu 2018-10-24 926 if (f2fs_sb_has_quota_ino(sbi) && !f2fs_readonly(sbi->sb)) {
dcbb4c10e6d969 Joe Perches 2019-06-18 927 f2fs_info(sbi, "Filesystem with quota feature cannot be mounted RDWR without CONFIG_QUOTA");
00960c2cd8f169 Sheng Yong 2018-07-24 928 return -EINVAL;
00960c2cd8f169 Sheng Yong 2018-07-24 929 }
7beb01f74415c5 Chao Yu 2018-10-24 930 if (f2fs_sb_has_project_quota(sbi) && !f2fs_readonly(sbi->sb)) {
dcbb4c10e6d969 Joe Perches 2019-06-18 931 f2fs_err(sbi, "Filesystem with project quota feature cannot be mounted RDWR without CONFIG_QUOTA");
4ddc1b28aac57a Chao Yu 2018-07-26 932 return -EINVAL;
4ddc1b28aac57a Chao Yu 2018-07-26 933 }
4b2414d04e9912 Chao Yu 2017-08-08 934 #endif
5aba54302a46fd Daniel Rosenberg 2019-07-23 935 #ifndef CONFIG_UNICODE
5aba54302a46fd Daniel Rosenberg 2019-07-23 936 if (f2fs_sb_has_casefold(sbi)) {
5aba54302a46fd Daniel Rosenberg 2019-07-23 937 f2fs_err(sbi,
5aba54302a46fd Daniel Rosenberg 2019-07-23 938 "Filesystem with casefold feature cannot be mounted without CONFIG_UNICODE");
5aba54302a46fd Daniel Rosenberg 2019-07-23 939 return -EINVAL;
5aba54302a46fd Daniel Rosenberg 2019-07-23 940 }
5aba54302a46fd Daniel Rosenberg 2019-07-23 941 #endif
ec91538dccd443 Jaegeuk Kim 2016-12-21 942
b0332a0f957ca8 Chao Yu 2020-02-14 943 if (F2FS_IO_SIZE_BITS(sbi) && !f2fs_lfs_mode(sbi)) {
dcbb4c10e6d969 Joe Perches 2019-06-18 944 f2fs_err(sbi, "Should set mode=lfs with %uKB-sized IO",
ec91538dccd443 Jaegeuk Kim 2016-12-21 945 F2FS_IO_SIZE_KB(sbi));
ec91538dccd443 Jaegeuk Kim 2016-12-21 946 return -EINVAL;
ec91538dccd443 Jaegeuk Kim 2016-12-21 947 }
6afc662e68b5f9 Chao Yu 2017-09-06 948
6afc662e68b5f9 Chao Yu 2017-09-06 949 if (test_opt(sbi, INLINE_XATTR_SIZE)) {
70db5b04cbe19e Jaegeuk Kim 2019-03-12 950 int min_size, max_size;
70db5b04cbe19e Jaegeuk Kim 2019-03-12 951
7beb01f74415c5 Chao Yu 2018-10-24 952 if (!f2fs_sb_has_extra_attr(sbi) ||
7beb01f74415c5 Chao Yu 2018-10-24 953 !f2fs_sb_has_flexible_inline_xattr(sbi)) {
dcbb4c10e6d969 Joe Perches 2019-06-18 954 f2fs_err(sbi, "extra_attr or flexible_inline_xattr feature is off");
4d817ae099883b Chao Yu 2018-01-27 955 return -EINVAL;
4d817ae099883b Chao Yu 2018-01-27 956 }
6afc662e68b5f9 Chao Yu 2017-09-06 957 if (!test_opt(sbi, INLINE_XATTR)) {
dcbb4c10e6d969 Joe Perches 2019-06-18 958 f2fs_err(sbi, "inline_xattr_size option should be set with inline_xattr option");
6afc662e68b5f9 Chao Yu 2017-09-06 959 return -EINVAL;
6afc662e68b5f9 Chao Yu 2017-09-06 960 }
70db5b04cbe19e Jaegeuk Kim 2019-03-12 961
70db5b04cbe19e Jaegeuk Kim 2019-03-12 962 min_size = sizeof(struct f2fs_xattr_header) / sizeof(__le32);
dd6c89b5f2b93c Chao Yu 2019-03-04 963 max_size = MAX_INLINE_XATTR_SIZE;
70db5b04cbe19e Jaegeuk Kim 2019-03-12 964
70db5b04cbe19e Jaegeuk Kim 2019-03-12 965 if (F2FS_OPTION(sbi).inline_xattr_size < min_size ||
70db5b04cbe19e Jaegeuk Kim 2019-03-12 966 F2FS_OPTION(sbi).inline_xattr_size > max_size) {
dcbb4c10e6d969 Joe Perches 2019-06-18 967 f2fs_err(sbi, "inline xattr size is out of range: %d ~ %d",
70db5b04cbe19e Jaegeuk Kim 2019-03-12 968 min_size, max_size);
6afc662e68b5f9 Chao Yu 2017-09-06 969 return -EINVAL;
6afc662e68b5f9 Chao Yu 2017-09-06 970 }
6afc662e68b5f9 Chao Yu 2017-09-06 971 }
0cdd31953967b2 Hyunchul Lee 2018-01-31 972
b0332a0f957ca8 Chao Yu 2020-02-14 973 if (test_opt(sbi, DISABLE_CHECKPOINT) && f2fs_lfs_mode(sbi)) {
dcbb4c10e6d969 Joe Perches 2019-06-18 974 f2fs_err(sbi, "LFS not compatible with checkpoint=disable\n");
4354994f097d06 Daniel Rosenberg 2018-08-20 975 return -EINVAL;
4354994f097d06 Daniel Rosenberg 2018-08-20 976 }
4354994f097d06 Daniel Rosenberg 2018-08-20 977
0cdd31953967b2 Hyunchul Lee 2018-01-31 978 /* Not pass down write hints if the number of active logs is lesser
0cdd31953967b2 Hyunchul Lee 2018-01-31 979 * than NR_CURSEG_TYPE.
0cdd31953967b2 Hyunchul Lee 2018-01-31 980 */
63189b785960c3 Chao Yu 2018-03-08 981 if (F2FS_OPTION(sbi).active_logs != NR_CURSEG_TYPE)
63189b785960c3 Chao Yu 2018-03-08 982 F2FS_OPTION(sbi).whint_mode = WHINT_MODE_OFF;
696c018c7718f5 Namjae Jeon 2013-06-16 983 return 0;
696c018c7718f5 Namjae Jeon 2013-06-16 984 }
696c018c7718f5 Namjae Jeon 2013-06-16 985
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
_______________________________________________
kbuild mailing list -- kbuild(a)lists.01.org
To unsubscribe send an email to kbuild-leave(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 26960 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2020-05-12 12:37 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-05-12 12:37 [kbuild] [ebiggers:wip-test-dummy-encryption 3/4] fs/f2fs/super.c:822:4: error: 'ret' undeclared; did you mean 'net'? kbuild test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.