From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============1702917609979035885==" MIME-Version: 1.0 From: kernel test robot To: kbuild-all@lists.01.org Subject: Re: [PATCH] ata: sata_fsl: add compile test support Date: Wed, 05 Jan 2022 18:22:26 +0800 Message-ID: <202201051820.NO5a8nXS-lkp@intel.com> In-Reply-To: <20220104045748.1171439-1-damien.lemoal@opensource.wdc.com> List-Id: --===============1702917609979035885== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hi Damien, I love your patch! Perhaps something to improve: [auto build test WARNING on linus/master] [also build test WARNING on v5.16-rc8 next-20220104] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Damien-Le-Moal/ata-sata_fs= l-add-compile-test-support/20220104-125826 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git = c9e6606c7fe92b50a02ce51dda82586ebdf99b48 config: openrisc-allmodconfig (https://download.01.org/0day-ci/archive/2022= 0105/202201051820.NO5a8nXS-lkp(a)intel.com/config) compiler: or1k-linux-gcc (GCC) 11.2.0 reproduce (this is a W=3D1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/= make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/0day-ci/linux/commit/3e9ce2ab1a908d2acd644bfd3= 9d3626635919aa1 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Damien-Le-Moal/ata-sata_fsl-add-co= mpile-test-support/20220104-125826 git checkout 3e9ce2ab1a908d2acd644bfd39d3626635919aa1 # save the config file to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=3D$HOME/0day COMPILER=3Dgcc-11.2.0 make.cross= O=3Dbuild_dir ARCH=3Dopenrisc SHELL=3D/bin/bash drivers/ata/ If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All warnings (new ones prefixed by >>): drivers/ata/sata_fsl.c: In function 'sata_fsl_host_intr': >> drivers/ata/sata_fsl.c:1281:62: warning: suggest braces around empty bod= y in an 'if' statement [-Wempty-body] 1281 | ioread32(hcr_base + CA)); | ^ drivers/ata/sata_fsl.c: At top level: drivers/ata/sata_fsl.c:1410:22: warning: initialized field overwritten [= -Woverride-init] 1410 | .can_queue =3D SATA_FSL_QUEUE_DEPTH, | ^~~~~~~~~~~~~~~~~~~~ drivers/ata/sata_fsl.c:1410:22: note: (near initialization for 'sata_fsl= _sht.can_queue') vim +/if +1281 drivers/ata/sata_fsl.c faf0b2e5afe7da Li Yang 2007-10-16 1203 = faf0b2e5afe7da Li Yang 2007-10-16 1204 static void sata_fsl_host_int= r(struct ata_port *ap) faf0b2e5afe7da Li Yang 2007-10-16 1205 { faf0b2e5afe7da Li Yang 2007-10-16 1206 struct sata_fsl_host_priv *h= ost_priv =3D ap->host->private_data; faf0b2e5afe7da Li Yang 2007-10-16 1207 void __iomem *hcr_base =3D h= ost_priv->hcr_base; 752e386c247664 Tejun Heo 2010-06-25 1208 u32 hstatus, done_mask =3D 0; faf0b2e5afe7da Li Yang 2007-10-16 1209 struct ata_queued_cmd *qc; faf0b2e5afe7da Li Yang 2007-10-16 1210 u32 SError; 100f586bd0959f Shaohui Xie 2012-09-11 1211 u32 tag; 100f586bd0959f Shaohui Xie 2012-09-11 1212 u32 status_mask =3D INT_ON_E= RROR; faf0b2e5afe7da Li Yang 2007-10-16 1213 = faf0b2e5afe7da Li Yang 2007-10-16 1214 hstatus =3D ioread32(hcr_bas= e + HSTATUS); faf0b2e5afe7da Li Yang 2007-10-16 1215 = 82ef04fb4c8254 Tejun Heo 2008-07-31 1216 sata_fsl_scr_read(&ap->link,= SCR_ERROR, &SError); faf0b2e5afe7da Li Yang 2007-10-16 1217 = 100f586bd0959f Shaohui Xie 2012-09-11 1218 /* Read command completed re= gister */ 100f586bd0959f Shaohui Xie 2012-09-11 1219 done_mask =3D ioread32(hcr_b= ase + CC); 100f586bd0959f Shaohui Xie 2012-09-11 1220 = 100f586bd0959f Shaohui Xie 2012-09-11 1221 /* Workaround for data lengt= h mismatch errata */ 100f586bd0959f Shaohui Xie 2012-09-11 1222 if (unlikely(hstatus & INT_O= N_DATA_LENGTH_MISMATCH)) { d3543b4d1b48af Jens Axboe 2018-06-19 1223 ata_qc_for_each_with_intern= al(ap, qc, tag) { 100f586bd0959f Shaohui Xie 2012-09-11 1224 if (qc && ata_is_atapi(qc-= >tf.protocol)) { 100f586bd0959f Shaohui Xie 2012-09-11 1225 u32 hcontrol; 100f586bd0959f Shaohui Xie 2012-09-11 1226 /* Set HControl[27] to cl= ear error registers */ 100f586bd0959f Shaohui Xie 2012-09-11 1227 hcontrol =3D ioread32(hcr= _base + HCONTROL); 100f586bd0959f Shaohui Xie 2012-09-11 1228 iowrite32(hcontrol | CLEA= R_ERROR, 100f586bd0959f Shaohui Xie 2012-09-11 1229 hcr_base + HCONTROL); 100f586bd0959f Shaohui Xie 2012-09-11 1230 = 100f586bd0959f Shaohui Xie 2012-09-11 1231 /* Clear HControl[27] */ 100f586bd0959f Shaohui Xie 2012-09-11 1232 iowrite32(hcontrol & ~CLE= AR_ERROR, 100f586bd0959f Shaohui Xie 2012-09-11 1233 hcr_base + HCONTROL); 100f586bd0959f Shaohui Xie 2012-09-11 1234 = 100f586bd0959f Shaohui Xie 2012-09-11 1235 /* Clear SError[E] bit */ 100f586bd0959f Shaohui Xie 2012-09-11 1236 sata_fsl_scr_write(&ap->l= ink, SCR_ERROR, 100f586bd0959f Shaohui Xie 2012-09-11 1237 SError); 100f586bd0959f Shaohui Xie 2012-09-11 1238 = 100f586bd0959f Shaohui Xie 2012-09-11 1239 /* Ignore fatal error and= device error */ 100f586bd0959f Shaohui Xie 2012-09-11 1240 status_mask &=3D ~(INT_ON= _SINGL_DEVICE_ERR 100f586bd0959f Shaohui Xie 2012-09-11 1241 | INT_ON_FATAL_ERR); 100f586bd0959f Shaohui Xie 2012-09-11 1242 break; 100f586bd0959f Shaohui Xie 2012-09-11 1243 } 100f586bd0959f Shaohui Xie 2012-09-11 1244 } 100f586bd0959f Shaohui Xie 2012-09-11 1245 } 100f586bd0959f Shaohui Xie 2012-09-11 1246 = faf0b2e5afe7da Li Yang 2007-10-16 1247 if (unlikely(SError & 0xFFFF= 0000)) { faf0b2e5afe7da Li Yang 2007-10-16 1248 DPRINTK("serror @host_intr = : 0x%x\n", SError); faf0b2e5afe7da Li Yang 2007-10-16 1249 sata_fsl_error_intr(ap); faf0b2e5afe7da Li Yang 2007-10-16 1250 } faf0b2e5afe7da Li Yang 2007-10-16 1251 = 100f586bd0959f Shaohui Xie 2012-09-11 1252 if (unlikely(hstatus & statu= s_mask)) { faf0b2e5afe7da Li Yang 2007-10-16 1253 DPRINTK("error interrupt!!\= n"); faf0b2e5afe7da Li Yang 2007-10-16 1254 sata_fsl_error_intr(ap); faf0b2e5afe7da Li Yang 2007-10-16 1255 return; faf0b2e5afe7da Li Yang 2007-10-16 1256 } faf0b2e5afe7da Li Yang 2007-10-16 1257 = 034d8e8f273fcb Ashish Kalra 2008-05-20 1258 VPRINTK("Status of all queue= s :\n"); e3ed8939644166 Jens Axboe 2018-05-11 1259 VPRINTK("done_mask/CC =3D 0x= %x, CA =3D 0x%x, CE=3D0x%x,CQ=3D0x%x,apqa=3D0x%llx\n", 752e386c247664 Tejun Heo 2010-06-25 1260 done_mask, 034d8e8f273fcb Ashish Kalra 2008-05-20 1261 ioread32(hcr_base + CA), 034d8e8f273fcb Ashish Kalra 2008-05-20 1262 ioread32(hcr_base + CE), 034d8e8f273fcb Ashish Kalra 2008-05-20 1263 ioread32(hcr_base + CQ), 034d8e8f273fcb Ashish Kalra 2008-05-20 1264 ap->qc_active); 034d8e8f273fcb Ashish Kalra 2008-05-20 1265 = 752e386c247664 Tejun Heo 2010-06-25 1266 if (done_mask & ap->qc_activ= e) { 034d8e8f273fcb Ashish Kalra 2008-05-20 1267 int i; faf0b2e5afe7da Li Yang 2007-10-16 1268 /* clear CC bit, this will = also complete the interrupt */ 752e386c247664 Tejun Heo 2010-06-25 1269 iowrite32(done_mask, hcr_ba= se + CC); faf0b2e5afe7da Li Yang 2007-10-16 1270 = faf0b2e5afe7da Li Yang 2007-10-16 1271 DPRINTK("Status of all queu= es :\n"); 752e386c247664 Tejun Heo 2010-06-25 1272 DPRINTK("done_mask/CC =3D 0= x%x, CA =3D 0x%x, CE=3D0x%x\n", 752e386c247664 Tejun Heo 2010-06-25 1273 done_mask, ioread32(hcr_ba= se + CA), faf0b2e5afe7da Li Yang 2007-10-16 1274 ioread32(hcr_base + CE)); faf0b2e5afe7da Li Yang 2007-10-16 1275 = faf0b2e5afe7da Li Yang 2007-10-16 1276 for (i =3D 0; i < SATA_FSL_= QUEUE_DEPTH; i++) { 1aadf5c3bbbbb0 Tejun Heo 2010-06-25 1277 if (done_mask & (1 << i)) faf0b2e5afe7da Li Yang 2007-10-16 1278 DPRINTK faf0b2e5afe7da Li Yang 2007-10-16 1279 ("completing ncq cmd,= tag=3D%d,CC=3D0x%x,CA=3D0x%x\n", faf0b2e5afe7da Li Yang 2007-10-16 1280 i, ioread32(hcr_base= + CC), faf0b2e5afe7da Li Yang 2007-10-16 @1281 ioread32(hcr_base + = CA)); faf0b2e5afe7da Li Yang 2007-10-16 1282 } 8385d756e114f2 Sascha Hauer 2019-12-13 1283 ata_qc_complete_multiple(ap= , ata_qc_get_active(ap) ^ done_mask); faf0b2e5afe7da Li Yang 2007-10-16 1284 return; faf0b2e5afe7da Li Yang 2007-10-16 1285 = 88e10092f6a623 Jens Axboe 2018-05-11 1286 } else if ((ap->qc_active & = (1ULL << ATA_TAG_INTERNAL))) { faf0b2e5afe7da Li Yang 2007-10-16 1287 iowrite32(1, hcr_base + CC); 034d8e8f273fcb Ashish Kalra 2008-05-20 1288 qc =3D ata_qc_from_tag(ap, = ATA_TAG_INTERNAL); faf0b2e5afe7da Li Yang 2007-10-16 1289 = 034d8e8f273fcb Ashish Kalra 2008-05-20 1290 DPRINTK("completing non-ncq= cmd, CC=3D0x%x\n", 034d8e8f273fcb Ashish Kalra 2008-05-20 1291 ioread32(hcr_base + CC)); faf0b2e5afe7da Li Yang 2007-10-16 1292 = 034d8e8f273fcb Ashish Kalra 2008-05-20 1293 if (qc) { faf0b2e5afe7da Li Yang 2007-10-16 1294 ata_qc_complete(qc); 034d8e8f273fcb Ashish Kalra 2008-05-20 1295 } faf0b2e5afe7da Li Yang 2007-10-16 1296 } else { faf0b2e5afe7da Li Yang 2007-10-16 1297 /* Spurious Interrupt!! */ faf0b2e5afe7da Li Yang 2007-10-16 1298 DPRINTK("spurious interrupt= !!, CC =3D 0x%x\n", faf0b2e5afe7da Li Yang 2007-10-16 1299 ioread32(hcr_base + CC)); 752e386c247664 Tejun Heo 2010-06-25 1300 iowrite32(done_mask, hcr_ba= se + CC); faf0b2e5afe7da Li Yang 2007-10-16 1301 return; faf0b2e5afe7da Li Yang 2007-10-16 1302 } faf0b2e5afe7da Li Yang 2007-10-16 1303 } faf0b2e5afe7da Li Yang 2007-10-16 1304 = --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org --===============1702917609979035885==--