All of lore.kernel.org
 help / color / mirror / Atom feed
* [brauner-vfs:namespace-7.4.misc 6/7] fs/btrfs/tests/inode-tests.c:16:13: error: conflicting types for 'insert_extent'
@ 2026-09-11  2:09 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-09-11  2:09 UTC (permalink / raw)
  To: Bill Wendling
  Cc: oe-kbuild-all, Christian Brauner, Christian Brauner,
	Bradley Morgan

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git namespace-7.4.misc
head:   34a496d638705dc227cc6dd2aaaa9e450893502f
commit: f6f1a2496ba5dcc076d7fb7aa329887cd6ae55fa [6/7] userns: Add KUnit test suite for uid_gid_map
config: powerpc64-randconfig-r123-20260910 (https://download.01.org/0day-ci/archive/20260911/202609110937.zHKPPXJk-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260911/202609110937.zHKPPXJk-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/202609110937.zHKPPXJk-lkp@intel.com/

All errors (new ones prefixed by >>):

>> fs/btrfs/tests/inode-tests.c:16:13: error: conflicting types for 'insert_extent'
      16 | static void insert_extent(struct btrfs_root *root, u64 start, u64 len,
         |             ^
   include/linux/user_namespace.h:212:12: note: previous declaration is here
     212 | extern int insert_extent(struct uid_gid_map *map, struct uid_gid_extent *extent);
         |            ^
>> fs/btrfs/tests/inode-tests.c:112:30: error: too many arguments to function call, expected 2, have 10
     112 |         insert_extent(root, offset, 6, 6, 0, 0, 0, BTRFS_FILE_EXTENT_INLINE, 0,
         |         ~~~~~~~~~~~~~               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     113 |                       slot);
         |                       ~~~~
   include/linux/user_namespace.h:212:12: note: 'insert_extent' declared here
     212 | extern int insert_extent(struct uid_gid_map *map, struct uid_gid_extent *extent);
         |            ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/btrfs/tests/inode-tests.c:118:30: error: too many arguments to function call, expected 2, have 10
     118 |         insert_extent(root, offset, sectorsize, sectorsize, 0,
         |         ~~~~~~~~~~~~~               ^~~~~~~~~~~~~~~~~~~~~~~~~~
     119 |                       disk_bytenr, sectorsize, BTRFS_FILE_EXTENT_REG, 0, slot);
         |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/user_namespace.h:212:12: note: 'insert_extent' declared here
     212 | extern int insert_extent(struct uid_gid_map *map, struct uid_gid_extent *extent);
         |            ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/btrfs/tests/inode-tests.c:132:30: error: too many arguments to function call, expected 2, have 10
     132 |         insert_extent(root, offset, sectorsize, 4 * sectorsize, 0, disk_bytenr,
         |         ~~~~~~~~~~~~~               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     133 |                       4 * sectorsize, BTRFS_FILE_EXTENT_REG, 0, slot);
         |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/user_namespace.h:212:12: note: 'insert_extent' declared here
     212 | extern int insert_extent(struct uid_gid_map *map, struct uid_gid_extent *extent);
         |            ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/btrfs/tests/inode-tests.c:138:30: error: too many arguments to function call, expected 2, have 10
     138 |         insert_extent(root, offset, sectorsize, sectorsize, 0, 0, 0,
         |         ~~~~~~~~~~~~~               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     139 |                       BTRFS_FILE_EXTENT_REG, 0, slot);
         |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/user_namespace.h:212:12: note: 'insert_extent' declared here
     212 | extern int insert_extent(struct uid_gid_map *map, struct uid_gid_extent *extent);
         |            ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/btrfs/tests/inode-tests.c:144:30: error: too many arguments to function call, expected 2, have 10
     144 |         insert_extent(root, offset, 2 * sectorsize, 4 * sectorsize,
         |         ~~~~~~~~~~~~~               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     145 |                       2 * sectorsize, disk_bytenr, 4 * sectorsize,
         |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     146 |                       BTRFS_FILE_EXTENT_REG, 0, slot);
         |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/user_namespace.h:212:12: note: 'insert_extent' declared here
     212 | extern int insert_extent(struct uid_gid_map *map, struct uid_gid_extent *extent);
         |            ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/btrfs/tests/inode-tests.c:152:30: error: too many arguments to function call, expected 2, have 10
     152 |         insert_extent(root, offset, sectorsize, sectorsize, 0, disk_bytenr,
         |         ~~~~~~~~~~~~~               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     153 |                 sectorsize, BTRFS_FILE_EXTENT_PREALLOC, 0, slot);
         |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/user_namespace.h:212:12: note: 'insert_extent' declared here
     212 | extern int insert_extent(struct uid_gid_map *map, struct uid_gid_extent *extent);
         |            ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/btrfs/tests/inode-tests.c:170:30: error: too many arguments to function call, expected 2, have 10
     170 |         insert_extent(root, offset, sectorsize, 4 * sectorsize, 0, disk_bytenr,
         |         ~~~~~~~~~~~~~               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     171 |                       4 * sectorsize, BTRFS_FILE_EXTENT_PREALLOC, 0, slot);
         |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/user_namespace.h:212:12: note: 'insert_extent' declared here
     212 | extern int insert_extent(struct uid_gid_map *map, struct uid_gid_extent *extent);
         |            ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/btrfs/tests/inode-tests.c:176:30: error: too many arguments to function call, expected 2, have 10
     176 |         insert_extent(root, offset, sectorsize, 4 * sectorsize, sectorsize,
         |         ~~~~~~~~~~~~~               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     177 |                       disk_bytenr, 4 * sectorsize, BTRFS_FILE_EXTENT_REG, 0,
         |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     178 |                       slot);
         |                       ~~~~
   include/linux/user_namespace.h:212:12: note: 'insert_extent' declared here
     212 | extern int insert_extent(struct uid_gid_map *map, struct uid_gid_extent *extent);
         |            ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/btrfs/tests/inode-tests.c:183:30: error: too many arguments to function call, expected 2, have 10
     183 |         insert_extent(root, offset, 2 * sectorsize, 4 * sectorsize,
         |         ~~~~~~~~~~~~~               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     184 |                       2 * sectorsize, disk_bytenr, 4 * sectorsize,
         |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     185 |                       BTRFS_FILE_EXTENT_PREALLOC, 0, slot);
         |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/user_namespace.h:212:12: note: 'insert_extent' declared here
     212 | extern int insert_extent(struct uid_gid_map *map, struct uid_gid_extent *extent);
         |            ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/btrfs/tests/inode-tests.c:191:30: error: too many arguments to function call, expected 2, have 10
     191 |         insert_extent(root, offset, 2 * sectorsize, 2 * sectorsize, 0,
         |         ~~~~~~~~~~~~~               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     192 |                       disk_bytenr, sectorsize, BTRFS_FILE_EXTENT_REG,
         |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     193 |                       BTRFS_COMPRESS_ZLIB, slot);
         |                       ~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/user_namespace.h:212:12: note: 'insert_extent' declared here
     212 | extern int insert_extent(struct uid_gid_map *map, struct uid_gid_extent *extent);
         |            ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/btrfs/tests/inode-tests.c:200:30: error: too many arguments to function call, expected 2, have 10
     200 |         insert_extent(root, offset, sectorsize, 4 * sectorsize, 0, disk_bytenr,
         |         ~~~~~~~~~~~~~               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     201 |                       sectorsize, BTRFS_FILE_EXTENT_REG,
         |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     202 |                       BTRFS_COMPRESS_ZLIB, slot);
         |                       ~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/user_namespace.h:212:12: note: 'insert_extent' declared here
     212 | extern int insert_extent(struct uid_gid_map *map, struct uid_gid_extent *extent);
         |            ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/btrfs/tests/inode-tests.c:207:30: error: too many arguments to function call, expected 2, have 10
     207 |         insert_extent(root, offset, sectorsize, sectorsize, 0,
         |         ~~~~~~~~~~~~~               ^~~~~~~~~~~~~~~~~~~~~~~~~~


vim +/insert_extent +16 fs/btrfs/tests/inode-tests.c

aaedb55bc08f38 Josef Bacik   2013-10-11   15  
aaedb55bc08f38 Josef Bacik   2013-10-11  @16  static void insert_extent(struct btrfs_root *root, u64 start, u64 len,
aaedb55bc08f38 Josef Bacik   2013-10-11   17  			  u64 ram_bytes, u64 offset, u64 disk_bytenr,
aaedb55bc08f38 Josef Bacik   2013-10-11   18  			  u64 disk_len, u32 type, u8 compression, int slot)
aaedb55bc08f38 Josef Bacik   2013-10-11   19  {
aaedb55bc08f38 Josef Bacik   2013-10-11   20  	struct btrfs_path path;
aaedb55bc08f38 Josef Bacik   2013-10-11   21  	struct btrfs_file_extent_item *fi;
aaedb55bc08f38 Josef Bacik   2013-10-11   22  	struct extent_buffer *leaf = root->node;
aaedb55bc08f38 Josef Bacik   2013-10-11   23  	struct btrfs_key key;
aaedb55bc08f38 Josef Bacik   2013-10-11   24  	u32 value_len = sizeof(struct btrfs_file_extent_item);
aaedb55bc08f38 Josef Bacik   2013-10-11   25  
aaedb55bc08f38 Josef Bacik   2013-10-11   26  	if (type == BTRFS_FILE_EXTENT_INLINE)
aaedb55bc08f38 Josef Bacik   2013-10-11   27  		value_len += len;
aaedb55bc08f38 Josef Bacik   2013-10-11   28  	memset(&path, 0, sizeof(path));
aaedb55bc08f38 Josef Bacik   2013-10-11   29  
aaedb55bc08f38 Josef Bacik   2013-10-11   30  	path.nodes[0] = leaf;
aaedb55bc08f38 Josef Bacik   2013-10-11   31  	path.slots[0] = slot;
aaedb55bc08f38 Josef Bacik   2013-10-11   32  
aaedb55bc08f38 Josef Bacik   2013-10-11   33  	key.objectid = BTRFS_FIRST_FREE_OBJECTID;
aaedb55bc08f38 Josef Bacik   2013-10-11   34  	key.type = BTRFS_EXTENT_DATA_KEY;
aaedb55bc08f38 Josef Bacik   2013-10-11   35  	key.offset = start;
aaedb55bc08f38 Josef Bacik   2013-10-11   36  
50564b651d01c1 Filipe Manana 2023-09-12   37  	/*
50564b651d01c1 Filipe Manana 2023-09-12   38  	 * Passing a NULL trans handle is fine here, we have a dummy root eb
50564b651d01c1 Filipe Manana 2023-09-12   39  	 * and the tree is a single node (level 0).
50564b651d01c1 Filipe Manana 2023-09-12   40  	 */
50564b651d01c1 Filipe Manana 2023-09-12   41  	btrfs_setup_item_for_insert(NULL, root, &path, &key, value_len);
aaedb55bc08f38 Josef Bacik   2013-10-11   42  	fi = btrfs_item_ptr(leaf, slot, struct btrfs_file_extent_item);
aaedb55bc08f38 Josef Bacik   2013-10-11   43  	btrfs_set_file_extent_generation(leaf, fi, 1);
aaedb55bc08f38 Josef Bacik   2013-10-11   44  	btrfs_set_file_extent_type(leaf, fi, type);
aaedb55bc08f38 Josef Bacik   2013-10-11   45  	btrfs_set_file_extent_disk_bytenr(leaf, fi, disk_bytenr);
aaedb55bc08f38 Josef Bacik   2013-10-11   46  	btrfs_set_file_extent_disk_num_bytes(leaf, fi, disk_len);
aaedb55bc08f38 Josef Bacik   2013-10-11   47  	btrfs_set_file_extent_offset(leaf, fi, offset);
aaedb55bc08f38 Josef Bacik   2013-10-11   48  	btrfs_set_file_extent_num_bytes(leaf, fi, len);
aaedb55bc08f38 Josef Bacik   2013-10-11   49  	btrfs_set_file_extent_ram_bytes(leaf, fi, ram_bytes);
aaedb55bc08f38 Josef Bacik   2013-10-11   50  	btrfs_set_file_extent_compression(leaf, fi, compression);
aaedb55bc08f38 Josef Bacik   2013-10-11   51  	btrfs_set_file_extent_encryption(leaf, fi, 0);
aaedb55bc08f38 Josef Bacik   2013-10-11   52  	btrfs_set_file_extent_other_encoding(leaf, fi, 0);
aaedb55bc08f38 Josef Bacik   2013-10-11   53  }
aaedb55bc08f38 Josef Bacik   2013-10-11   54  
0e30db86a4524f Josef Bacik   2013-10-14   55  static void insert_inode_item_key(struct btrfs_root *root)
0e30db86a4524f Josef Bacik   2013-10-14   56  {
0e30db86a4524f Josef Bacik   2013-10-14   57  	struct btrfs_path path;
0e30db86a4524f Josef Bacik   2013-10-14   58  	struct extent_buffer *leaf = root->node;
0e30db86a4524f Josef Bacik   2013-10-14   59  	struct btrfs_key key;
0e30db86a4524f Josef Bacik   2013-10-14   60  	u32 value_len = 0;
0e30db86a4524f Josef Bacik   2013-10-14   61  
0e30db86a4524f Josef Bacik   2013-10-14   62  	memset(&path, 0, sizeof(path));
0e30db86a4524f Josef Bacik   2013-10-14   63  
0e30db86a4524f Josef Bacik   2013-10-14   64  	path.nodes[0] = leaf;
0e30db86a4524f Josef Bacik   2013-10-14   65  	path.slots[0] = 0;
0e30db86a4524f Josef Bacik   2013-10-14   66  
0e30db86a4524f Josef Bacik   2013-10-14   67  	key.objectid = BTRFS_INODE_ITEM_KEY;
0e30db86a4524f Josef Bacik   2013-10-14   68  	key.type = BTRFS_INODE_ITEM_KEY;
0e30db86a4524f Josef Bacik   2013-10-14   69  	key.offset = 0;
0e30db86a4524f Josef Bacik   2013-10-14   70  
50564b651d01c1 Filipe Manana 2023-09-12   71  	/*
50564b651d01c1 Filipe Manana 2023-09-12   72  	 * Passing a NULL trans handle is fine here, we have a dummy root eb
50564b651d01c1 Filipe Manana 2023-09-12   73  	 * and the tree is a single node (level 0).
50564b651d01c1 Filipe Manana 2023-09-12   74  	 */
50564b651d01c1 Filipe Manana 2023-09-12   75  	btrfs_setup_item_for_insert(NULL, root, &path, &key, value_len);
0e30db86a4524f Josef Bacik   2013-10-14   76  }
0e30db86a4524f Josef Bacik   2013-10-14   77  
aaedb55bc08f38 Josef Bacik   2013-10-11   78  /*
aaedb55bc08f38 Josef Bacik   2013-10-11   79   * Build the most complicated map of extents the earth has ever seen.  We want
aaedb55bc08f38 Josef Bacik   2013-10-11   80   * this so we can test all of the corner cases of btrfs_get_extent.  Here is a
aaedb55bc08f38 Josef Bacik   2013-10-11   81   * diagram of how the extents will look though this may not be possible we still
aaedb55bc08f38 Josef Bacik   2013-10-11   82   * want to make sure everything acts normally (the last number is not inclusive)
aaedb55bc08f38 Josef Bacik   2013-10-11   83   *
d77b90cfe08f4c Qu Wenruo     2026-01-22   84   * The numbers are using 4K fs block size as an example, the real test will scale
d77b90cfe08f4c Qu Wenruo     2026-01-22   85   * all the extent maps (except the inlined one) according to the block size.
aaedb55bc08f38 Josef Bacik   2013-10-11   86   *
d77b90cfe08f4c Qu Wenruo     2026-01-22   87   * [ 0  - 6 ][ 6 - 4K       ][ 4K - 8K ][ 8K -  12K      ]
d77b90cfe08f4c Qu Wenruo     2026-01-22   88   * [ inline ][ implied hole ][ regular ][ regular1 split ]
d77b90cfe08f4c Qu Wenruo     2026-01-22   89   *
d77b90cfe08f4c Qu Wenruo     2026-01-22   90   * [ 12K - 16K ][ 16K - 24K      ][ 24K - 28K ][ 28K - 32K ][ 32K - 36K         ]
b9ef22dedde08a Feifei Xu     2016-06-01   91   * [ hole      ][ regular1 split ][ prealloc  ][ prealloc1 ][ prealloc1 written ]
aaedb55bc08f38 Josef Bacik   2013-10-11   92   *
d77b90cfe08f4c Qu Wenruo     2026-01-22   93   * [ 36K - 44K ][ 44K - 52K  ][ 52K - 56K   ][ 56K - 60K ][ 60K - 68 K  ]
b9ef22dedde08a Feifei Xu     2016-06-01   94   * [ prealloc1 ][ compressed ][ compressed1 ][ regular   ][ compressed1 ]
aaedb55bc08f38 Josef Bacik   2013-10-11   95   *
d77b90cfe08f4c Qu Wenruo     2026-01-22   96   * [ 68K - 72K ][ 72K - 84K          ][ 84K - 88K ]
b9ef22dedde08a Feifei Xu     2016-06-01   97   * [  regular  ][ hole but no extent ][ regular   ]
aaedb55bc08f38 Josef Bacik   2013-10-11   98   */
b9ef22dedde08a Feifei Xu     2016-06-01   99  static void setup_file_extents(struct btrfs_root *root, u32 sectorsize)
aaedb55bc08f38 Josef Bacik   2013-10-11  100  {
aaedb55bc08f38 Josef Bacik   2013-10-11  101  	int slot = 0;
ee22184b53c823 Byongho Lee   2015-12-15  102  	u64 disk_bytenr = SZ_1M;
aaedb55bc08f38 Josef Bacik   2013-10-11  103  	u64 offset = 0;
aaedb55bc08f38 Josef Bacik   2013-10-11  104  
aaedb55bc08f38 Josef Bacik   2013-10-11  105  	/*
d77b90cfe08f4c Qu Wenruo     2026-01-22  106  	 * Start 0, length 6, inlined.
d77b90cfe08f4c Qu Wenruo     2026-01-22  107  	 *
d52a1365258b57 Qu Wenruo     2022-09-16  108  	 * Tree-checker has strict limits on inline extents that they can only
d52a1365258b57 Qu Wenruo     2022-09-16  109  	 * exist at file offset 0, thus we can only have one inline file extent
d52a1365258b57 Qu Wenruo     2022-09-16  110  	 * at most.
aaedb55bc08f38 Josef Bacik   2013-10-11  111  	 */
d52a1365258b57 Qu Wenruo     2022-09-16 @112  	insert_extent(root, offset, 6, 6, 0, 0, 0, BTRFS_FILE_EXTENT_INLINE, 0,
aaedb55bc08f38 Josef Bacik   2013-10-11  113  		      slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  114  	slot++;
b9ef22dedde08a Feifei Xu     2016-06-01  115  	offset = sectorsize;
aaedb55bc08f38 Josef Bacik   2013-10-11  116  
d77b90cfe08f4c Qu Wenruo     2026-01-22  117  	/* Start 1 * blocksize, length 1 * blocksize, regular. */
d77b90cfe08f4c Qu Wenruo     2026-01-22  118  	insert_extent(root, offset, sectorsize, sectorsize, 0,
d77b90cfe08f4c Qu Wenruo     2026-01-22  119  		      disk_bytenr, sectorsize, BTRFS_FILE_EXTENT_REG, 0, slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  120  	slot++;
aaedb55bc08f38 Josef Bacik   2013-10-11  121  
d77b90cfe08f4c Qu Wenruo     2026-01-22  122  	/* We don't want the regular em merged with the next one. */
d77b90cfe08f4c Qu Wenruo     2026-01-22  123  	disk_bytenr += 2 * sectorsize;
d77b90cfe08f4c Qu Wenruo     2026-01-22  124  	offset += sectorsize;
aaedb55bc08f38 Josef Bacik   2013-10-11  125  
aaedb55bc08f38 Josef Bacik   2013-10-11  126  	/*
d77b90cfe08f4c Qu Wenruo     2026-01-22  127  	 * Start 2 * blocksize, length 1 * blocksize, regular.
d77b90cfe08f4c Qu Wenruo     2026-01-22  128  	 *
aaedb55bc08f38 Josef Bacik   2013-10-11  129  	 * Now for 3 extents that were split from a hole punch so we test
aaedb55bc08f38 Josef Bacik   2013-10-11  130  	 * offsets properly.
aaedb55bc08f38 Josef Bacik   2013-10-11  131  	 */
b9ef22dedde08a Feifei Xu     2016-06-01  132  	insert_extent(root, offset, sectorsize, 4 * sectorsize, 0, disk_bytenr,
b9ef22dedde08a Feifei Xu     2016-06-01  133  		      4 * sectorsize, BTRFS_FILE_EXTENT_REG, 0, slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  134  	slot++;
b9ef22dedde08a Feifei Xu     2016-06-01  135  	offset += sectorsize;
d77b90cfe08f4c Qu Wenruo     2026-01-22  136  
d77b90cfe08f4c Qu Wenruo     2026-01-22  137  	/* Start 3 * blocksize, length 1 * blocksize, regular, explicit hole. */
b9ef22dedde08a Feifei Xu     2016-06-01  138  	insert_extent(root, offset, sectorsize, sectorsize, 0, 0, 0,
b9ef22dedde08a Feifei Xu     2016-06-01  139  		      BTRFS_FILE_EXTENT_REG, 0, slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  140  	slot++;
b9ef22dedde08a Feifei Xu     2016-06-01  141  	offset += sectorsize;
d77b90cfe08f4c Qu Wenruo     2026-01-22  142  
d77b90cfe08f4c Qu Wenruo     2026-01-22  143  	/* Start 4 * blocksize, length 2 * blocksize, regular. */
b9ef22dedde08a Feifei Xu     2016-06-01  144  	insert_extent(root, offset, 2 * sectorsize, 4 * sectorsize,
b9ef22dedde08a Feifei Xu     2016-06-01  145  		      2 * sectorsize, disk_bytenr, 4 * sectorsize,
aaedb55bc08f38 Josef Bacik   2013-10-11  146  		      BTRFS_FILE_EXTENT_REG, 0, slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  147  	slot++;
b9ef22dedde08a Feifei Xu     2016-06-01  148  	offset += 2 * sectorsize;
b9ef22dedde08a Feifei Xu     2016-06-01  149  	disk_bytenr += 4 * sectorsize;
aaedb55bc08f38 Josef Bacik   2013-10-11  150  
d77b90cfe08f4c Qu Wenruo     2026-01-22  151  	/* Start 6 * blocksize, length 1 * blocksize, preallocated. */
b9ef22dedde08a Feifei Xu     2016-06-01  152  	insert_extent(root, offset, sectorsize, sectorsize, 0, disk_bytenr,
b9ef22dedde08a Feifei Xu     2016-06-01  153  		sectorsize, BTRFS_FILE_EXTENT_PREALLOC, 0, slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  154  	slot++;
b9ef22dedde08a Feifei Xu     2016-06-01  155  	offset += sectorsize;
aaedb55bc08f38 Josef Bacik   2013-10-11  156  
aaedb55bc08f38 Josef Bacik   2013-10-11  157  	/*
aaedb55bc08f38 Josef Bacik   2013-10-11  158  	 * We want to jack up disk_bytenr a little more so the em stuff doesn't
aaedb55bc08f38 Josef Bacik   2013-10-11  159  	 * merge our records.
aaedb55bc08f38 Josef Bacik   2013-10-11  160  	 */
b9ef22dedde08a Feifei Xu     2016-06-01  161  	disk_bytenr += 2 * sectorsize;
aaedb55bc08f38 Josef Bacik   2013-10-11  162  
aaedb55bc08f38 Josef Bacik   2013-10-11  163  	/*
d77b90cfe08f4c Qu Wenruo     2026-01-22  164  	 * Start 7 * blocksize, length 1 * blocksize, prealloc.
d77b90cfe08f4c Qu Wenruo     2026-01-22  165  	 *
aaedb55bc08f38 Josef Bacik   2013-10-11  166  	 * Now for a partially written prealloc extent, basically the same as
aaedb55bc08f38 Josef Bacik   2013-10-11  167  	 * the hole punch example above.  Ram_bytes never changes when you mark
aaedb55bc08f38 Josef Bacik   2013-10-11  168  	 * extents written btw.
aaedb55bc08f38 Josef Bacik   2013-10-11  169  	 */
b9ef22dedde08a Feifei Xu     2016-06-01  170  	insert_extent(root, offset, sectorsize, 4 * sectorsize, 0, disk_bytenr,
b9ef22dedde08a Feifei Xu     2016-06-01  171  		      4 * sectorsize, BTRFS_FILE_EXTENT_PREALLOC, 0, slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  172  	slot++;
b9ef22dedde08a Feifei Xu     2016-06-01  173  	offset += sectorsize;
d77b90cfe08f4c Qu Wenruo     2026-01-22  174  
d77b90cfe08f4c Qu Wenruo     2026-01-22  175  	/* Start 8 * blocksize, length 1 * blocksize, regular. */
b9ef22dedde08a Feifei Xu     2016-06-01  176  	insert_extent(root, offset, sectorsize, 4 * sectorsize, sectorsize,
b9ef22dedde08a Feifei Xu     2016-06-01  177  		      disk_bytenr, 4 * sectorsize, BTRFS_FILE_EXTENT_REG, 0,
b9ef22dedde08a Feifei Xu     2016-06-01  178  		      slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  179  	slot++;
b9ef22dedde08a Feifei Xu     2016-06-01  180  	offset += sectorsize;
d77b90cfe08f4c Qu Wenruo     2026-01-22  181  
d77b90cfe08f4c Qu Wenruo     2026-01-22  182  	/* Start 9 * blocksize, length 2 * blocksize, prealloc. */
b9ef22dedde08a Feifei Xu     2016-06-01  183  	insert_extent(root, offset, 2 * sectorsize, 4 * sectorsize,
b9ef22dedde08a Feifei Xu     2016-06-01  184  		      2 * sectorsize, disk_bytenr, 4 * sectorsize,
aaedb55bc08f38 Josef Bacik   2013-10-11  185  		      BTRFS_FILE_EXTENT_PREALLOC, 0, slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  186  	slot++;
b9ef22dedde08a Feifei Xu     2016-06-01  187  	offset += 2 * sectorsize;
b9ef22dedde08a Feifei Xu     2016-06-01  188  	disk_bytenr += 4 * sectorsize;
aaedb55bc08f38 Josef Bacik   2013-10-11  189  
d77b90cfe08f4c Qu Wenruo     2026-01-22  190  	/* Start 11 * blocksize, length 2 * blocksize, regular. */
b9ef22dedde08a Feifei Xu     2016-06-01  191  	insert_extent(root, offset, 2 * sectorsize, 2 * sectorsize, 0,
b9ef22dedde08a Feifei Xu     2016-06-01  192  		      disk_bytenr, sectorsize, BTRFS_FILE_EXTENT_REG,
b9ef22dedde08a Feifei Xu     2016-06-01  193  		      BTRFS_COMPRESS_ZLIB, slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  194  	slot++;
b9ef22dedde08a Feifei Xu     2016-06-01  195  	offset += 2 * sectorsize;
aaedb55bc08f38 Josef Bacik   2013-10-11  196  	/* No merges */
b9ef22dedde08a Feifei Xu     2016-06-01  197  	disk_bytenr += 2 * sectorsize;
aaedb55bc08f38 Josef Bacik   2013-10-11  198  
d77b90cfe08f4c Qu Wenruo     2026-01-22  199  	/* Start 13 * blocksize, length 1 * blocksize, regular. */
b9ef22dedde08a Feifei Xu     2016-06-01  200  	insert_extent(root, offset, sectorsize, 4 * sectorsize, 0, disk_bytenr,
b9ef22dedde08a Feifei Xu     2016-06-01  201  		      sectorsize, BTRFS_FILE_EXTENT_REG,
b9ef22dedde08a Feifei Xu     2016-06-01  202  		      BTRFS_COMPRESS_ZLIB, slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  203  	slot++;
b9ef22dedde08a Feifei Xu     2016-06-01  204  	offset += sectorsize;
d77b90cfe08f4c Qu Wenruo     2026-01-22  205  
d77b90cfe08f4c Qu Wenruo     2026-01-22  206  	/* Start 14 * blocksize, length 1 * blocksize, regular. */
b9ef22dedde08a Feifei Xu     2016-06-01  207  	insert_extent(root, offset, sectorsize, sectorsize, 0,
b9ef22dedde08a Feifei Xu     2016-06-01  208  		      disk_bytenr + sectorsize, sectorsize,
aaedb55bc08f38 Josef Bacik   2013-10-11  209  		      BTRFS_FILE_EXTENT_REG, 0, slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  210  	slot++;
b9ef22dedde08a Feifei Xu     2016-06-01  211  	offset += sectorsize;
d77b90cfe08f4c Qu Wenruo     2026-01-22  212  
d77b90cfe08f4c Qu Wenruo     2026-01-22  213  	/* Start 15 * blocksize, length 2 * blocksize, regular. */
b9ef22dedde08a Feifei Xu     2016-06-01  214  	insert_extent(root, offset, 2 * sectorsize, 4 * sectorsize,
b9ef22dedde08a Feifei Xu     2016-06-01  215  		      2 * sectorsize, disk_bytenr, sectorsize,
aaedb55bc08f38 Josef Bacik   2013-10-11  216  		      BTRFS_FILE_EXTENT_REG, BTRFS_COMPRESS_ZLIB, slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  217  	slot++;
b9ef22dedde08a Feifei Xu     2016-06-01  218  	offset += 2 * sectorsize;
b9ef22dedde08a Feifei Xu     2016-06-01  219  	disk_bytenr += 2 * sectorsize;
aaedb55bc08f38 Josef Bacik   2013-10-11  220  
d77b90cfe08f4c Qu Wenruo     2026-01-22  221  	/* Start 17 * blocksize, length 1 * blocksize, regular. */
b9ef22dedde08a Feifei Xu     2016-06-01  222  	insert_extent(root, offset, sectorsize, sectorsize, 0, disk_bytenr,
b9ef22dedde08a Feifei Xu     2016-06-01  223  		      sectorsize, BTRFS_FILE_EXTENT_REG, 0, slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  224  	slot++;
b9ef22dedde08a Feifei Xu     2016-06-01  225  	offset += 4 * sectorsize;
b9ef22dedde08a Feifei Xu     2016-06-01  226  	disk_bytenr += sectorsize;
d77b90cfe08f4c Qu Wenruo     2026-01-22  227  
d77b90cfe08f4c Qu Wenruo     2026-01-22  228  	/*
d77b90cfe08f4c Qu Wenruo     2026-01-22  229  	 * Start 18 * blocksize, length 3 * blocksize, implied hole (aka no
d77b90cfe08f4c Qu Wenruo     2026-01-22  230  	 * file extent item).
d77b90cfe08f4c Qu Wenruo     2026-01-22  231  	 *
d77b90cfe08f4c Qu Wenruo     2026-01-22  232  	 * Start 21 * blocksize, length 1 * blocksize, regular.
d77b90cfe08f4c Qu Wenruo     2026-01-22  233  	 */
b9ef22dedde08a Feifei Xu     2016-06-01  234  	insert_extent(root, offset, sectorsize, sectorsize, 0, disk_bytenr,
b9ef22dedde08a Feifei Xu     2016-06-01  235  		      sectorsize, BTRFS_FILE_EXTENT_REG, 0, slot);
aaedb55bc08f38 Josef Bacik   2013-10-11  236  }
aaedb55bc08f38 Josef Bacik   2013-10-11  237  

:::::: The code at line 16 was first introduced by commit
:::::: aaedb55bc08f384b7f57dbb3222a511baed4decf Btrfs: add tests for btrfs_get_extent

:::::: TO: Josef Bacik <jbacik@fusionio.com>
:::::: CC: Chris Mason <chris.mason@fusionio.com>

--
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:[~2026-09-11  2:14 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-11  2:09 [brauner-vfs:namespace-7.4.misc 6/7] fs/btrfs/tests/inode-tests.c:16:13: error: conflicting types for 'insert_extent' kernel 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.