Re: [PATCH v3 01/11] md/raid5: add CONFIG_MD_RAID456_STRIPE_SHIFT to set STRIPE_SIZE

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Yufen,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on cryptodev/master]
[also build test ERROR on crypto/master linus/master v5.7-rc7 next-20200526]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url:    https://github.com/0day-ci/linux/commits/Yufen-Yu/md-raid5-set-STRIPE_SIZE-as-a-configurable-value/20200527-212526
base:   https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git master
config: ia64-defconfig (attached as .config)
compiler: ia64-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=ia64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@xxxxxxxxx>

All error/warnings (new ones prefixed by >>, old ones prefixed by <<):

In file included from drivers/md/raid0.c:20:
drivers/md/raid5.h: In function 'r5_next_bio':
>> drivers/md/raid5.h:475:29: error: 'CONFIG_MD_RAID456_STRIPE_SHIFT' undeclared (first use in this function)
475 | #define CONFIG_STRIPE_SIZE (CONFIG_MD_RAID456_STRIPE_SHIFT << 9)
|                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/md/raid5.h:477:3: note: in expansion of macro 'CONFIG_STRIPE_SIZE'
477 |  (CONFIG_STRIPE_SIZE > PAGE_SIZE ? PAGE_SIZE : CONFIG_STRIPE_SIZE)
|   ^~~~~~~~~~~~~~~~~~
>> drivers/md/raid5.h:479:26: note: in expansion of macro 'STRIPE_SIZE'
479 | #define STRIPE_SECTORS  (STRIPE_SIZE>>9)
|                          ^~~~~~~~~~~
>> drivers/md/raid5.h:497:37: note: in expansion of macro 'STRIPE_SECTORS'
497 |  if (bio_end_sector(bio) < sector + STRIPE_SECTORS)
|                                     ^~~~~~~~~~~~~~
drivers/md/raid5.h:475:29: note: each undeclared identifier is reported only once for each function it appears in
475 | #define CONFIG_STRIPE_SIZE (CONFIG_MD_RAID456_STRIPE_SHIFT << 9)
|                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/md/raid5.h:477:3: note: in expansion of macro 'CONFIG_STRIPE_SIZE'
477 |  (CONFIG_STRIPE_SIZE > PAGE_SIZE ? PAGE_SIZE : CONFIG_STRIPE_SIZE)
|   ^~~~~~~~~~~~~~~~~~
>> drivers/md/raid5.h:479:26: note: in expansion of macro 'STRIPE_SIZE'
479 | #define STRIPE_SECTORS  (STRIPE_SIZE>>9)
|                          ^~~~~~~~~~~
>> drivers/md/raid5.h:497:37: note: in expansion of macro 'STRIPE_SECTORS'
497 |  if (bio_end_sector(bio) < sector + STRIPE_SECTORS)
|                                     ^~~~~~~~~~~~~~

vim +/CONFIG_MD_RAID456_STRIPE_SHIFT +475 drivers/md/raid5.h

   469	
   470	/*
   471	 * Stripe cache
   472	 */
   473	
   474	#define NR_STRIPES		256
 > 475	#define CONFIG_STRIPE_SIZE	(CONFIG_MD_RAID456_STRIPE_SHIFT << 9)
   476	#define STRIPE_SIZE		\
 > 477		(CONFIG_STRIPE_SIZE > PAGE_SIZE ? PAGE_SIZE : CONFIG_STRIPE_SIZE)
   478	#define STRIPE_SHIFT		(PAGE_SHIFT - 9)
 > 479	#define STRIPE_SECTORS		(STRIPE_SIZE>>9)
   480	#define	IO_THRESHOLD		1
   481	#define BYPASS_THRESHOLD	1
   482	#define NR_HASH			(PAGE_SIZE / sizeof(struct hlist_head))
   483	#define HASH_MASK		(NR_HASH - 1)
   484	#define MAX_STRIPE_BATCH	8
   485	
   486	/* bio's attached to a stripe+device for I/O are linked together in bi_sector
   487	 * order without overlap.  There may be several bio's per stripe+device, and
   488	 * a bio could span several devices.
   489	 * When walking this list for a particular stripe+device, we must never proceed
   490	 * beyond a bio that extends past this device, as the next bio might no longer
   491	 * be valid.
   492	 * This function is used to determine the 'next' bio in the list, given the
   493	 * sector of the current stripe+device
   494	 */
   495	static inline struct bio *r5_next_bio(struct bio *bio, sector_t sector)
   496	{
 > 497		if (bio_end_sector(bio) < sector + STRIPE_SECTORS)
   498			return bio->bi_next;
   499		else
   500			return NULL;
   501	}
   502	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux