Hi Hannes, [auto build test ERROR on mkp-scsi/for-next] [also build test ERROR on next-20170623] [cannot apply to v4.12-rc6] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Hannes-Reinecke/SCSI-EH-argument-reshuffling/20170624-071433 base: https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git for-next config: i386-randconfig-x078-06180431 (attached as .config) compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 reproduce: # save the attached .config to linux build tree make ARCH=i386 All error/warnings (new ones prefixed by >>): >> drivers/scsi/nsp32.c:280:27: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] .eh_bus_reset_handler = nsp32_eh_bus_reset, ^~~~~~~~~~~~~~~~~~ drivers/scsi/nsp32.c:280:27: note: (near initialization for 'nsp32_template.eh_bus_reset_handler') >> drivers/scsi/nsp32.c:2848:12: error: conflicting types for 'nsp32_eh_bus_reset' static int nsp32_eh_bus_reset(struct Scsi_Host *host, int channel) ^~~~~~~~~~~~~~~~~~ drivers/scsi/nsp32.c:204:20: note: previous declaration of 'nsp32_eh_bus_reset' was here static int nsp32_eh_bus_reset (struct scsi_cmnd *); ^~~~~~~~~~~~~~~~~~ >> drivers/scsi/nsp32.c:204:20: warning: 'nsp32_eh_bus_reset' used but never defined drivers/scsi/nsp32.c:2848:12: warning: 'nsp32_eh_bus_reset' defined but not used [-Wunused-function] static int nsp32_eh_bus_reset(struct Scsi_Host *host, int channel) ^~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors vim +280 drivers/scsi/nsp32.c f281233d Jeff Garzik 2010-11-16 198 static int nsp32_queuecommand(struct Scsi_Host *, struct scsi_cmnd *); ^1da177e Linus Torvalds 2005-04-16 199 static const char *nsp32_info (struct Scsi_Host *); ^1da177e Linus Torvalds 2005-04-16 200 static int nsp32_release (struct Scsi_Host *); ^1da177e Linus Torvalds 2005-04-16 201 ^1da177e Linus Torvalds 2005-04-16 202 /* SCSI error handler */ ^1da177e Linus Torvalds 2005-04-16 203 static int nsp32_eh_abort (struct scsi_cmnd *); ^1da177e Linus Torvalds 2005-04-16 @204 static int nsp32_eh_bus_reset (struct scsi_cmnd *); 33f80ca2 Hannes Reinecke 2017-06-23 205 static int nsp32_eh_host_reset(struct Scsi_Host *); ^1da177e Linus Torvalds 2005-04-16 206 ^1da177e Linus Torvalds 2005-04-16 207 /* generate SCSI message */ ^1da177e Linus Torvalds 2005-04-16 208 static void nsp32_build_identify(struct scsi_cmnd *); ^1da177e Linus Torvalds 2005-04-16 209 static void nsp32_build_nop (struct scsi_cmnd *); ^1da177e Linus Torvalds 2005-04-16 210 static void nsp32_build_reject (struct scsi_cmnd *); ^1da177e Linus Torvalds 2005-04-16 211 static void nsp32_build_sdtr (struct scsi_cmnd *, unsigned char, unsigned char); ^1da177e Linus Torvalds 2005-04-16 212 ^1da177e Linus Torvalds 2005-04-16 213 /* SCSI message handler */ ^1da177e Linus Torvalds 2005-04-16 214 static int nsp32_busfree_occur(struct scsi_cmnd *, unsigned short); ^1da177e Linus Torvalds 2005-04-16 215 static void nsp32_msgout_occur (struct scsi_cmnd *); ^1da177e Linus Torvalds 2005-04-16 216 static void nsp32_msgin_occur (struct scsi_cmnd *, unsigned long, unsigned short); ^1da177e Linus Torvalds 2005-04-16 217 ^1da177e Linus Torvalds 2005-04-16 218 static int nsp32_setup_sg_table (struct scsi_cmnd *); ^1da177e Linus Torvalds 2005-04-16 219 static int nsp32_selection_autopara(struct scsi_cmnd *); ^1da177e Linus Torvalds 2005-04-16 220 static int nsp32_selection_autoscsi(struct scsi_cmnd *); ^1da177e Linus Torvalds 2005-04-16 221 static void nsp32_scsi_done (struct scsi_cmnd *); ^1da177e Linus Torvalds 2005-04-16 222 static int nsp32_arbitration (struct scsi_cmnd *, unsigned int); ^1da177e Linus Torvalds 2005-04-16 223 static int nsp32_reselection (struct scsi_cmnd *, unsigned char); ^1da177e Linus Torvalds 2005-04-16 224 static void nsp32_adjust_busfree (struct scsi_cmnd *, unsigned int); ^1da177e Linus Torvalds 2005-04-16 225 static void nsp32_restart_autoscsi (struct scsi_cmnd *, unsigned short); ^1da177e Linus Torvalds 2005-04-16 226 ^1da177e Linus Torvalds 2005-04-16 227 /* SCSI SDTR */ ^1da177e Linus Torvalds 2005-04-16 228 static void nsp32_analyze_sdtr (struct scsi_cmnd *); ^1da177e Linus Torvalds 2005-04-16 229 static int nsp32_search_period_entry(nsp32_hw_data *, nsp32_target *, unsigned char); ^1da177e Linus Torvalds 2005-04-16 230 static void nsp32_set_async (nsp32_hw_data *, nsp32_target *); ^1da177e Linus Torvalds 2005-04-16 231 static void nsp32_set_max_sync (nsp32_hw_data *, nsp32_target *, unsigned char *, unsigned char *); ^1da177e Linus Torvalds 2005-04-16 232 static void nsp32_set_sync_entry (nsp32_hw_data *, nsp32_target *, int, unsigned char); ^1da177e Linus Torvalds 2005-04-16 233 ^1da177e Linus Torvalds 2005-04-16 234 /* SCSI bus status handler */ ^1da177e Linus Torvalds 2005-04-16 235 static void nsp32_wait_req (nsp32_hw_data *, int); ^1da177e Linus Torvalds 2005-04-16 236 static void nsp32_wait_sack (nsp32_hw_data *, int); ^1da177e Linus Torvalds 2005-04-16 237 static void nsp32_sack_assert (nsp32_hw_data *); ^1da177e Linus Torvalds 2005-04-16 238 static void nsp32_sack_negate (nsp32_hw_data *); ^1da177e Linus Torvalds 2005-04-16 239 static void nsp32_do_bus_reset(nsp32_hw_data *); ^1da177e Linus Torvalds 2005-04-16 240 ^1da177e Linus Torvalds 2005-04-16 241 /* hardware interrupt handler */ 7d12e780 David Howells 2006-10-05 242 static irqreturn_t do_nsp32_isr(int, void *); ^1da177e Linus Torvalds 2005-04-16 243 ^1da177e Linus Torvalds 2005-04-16 244 /* initialize hardware */ ^1da177e Linus Torvalds 2005-04-16 245 static int nsp32hw_init(nsp32_hw_data *); ^1da177e Linus Torvalds 2005-04-16 246 ^1da177e Linus Torvalds 2005-04-16 247 /* EEPROM handler */ ^1da177e Linus Torvalds 2005-04-16 248 static int nsp32_getprom_param (nsp32_hw_data *); ^1da177e Linus Torvalds 2005-04-16 249 static int nsp32_getprom_at24 (nsp32_hw_data *); ^1da177e Linus Torvalds 2005-04-16 250 static int nsp32_getprom_c16 (nsp32_hw_data *); ^1da177e Linus Torvalds 2005-04-16 251 static void nsp32_prom_start (nsp32_hw_data *); ^1da177e Linus Torvalds 2005-04-16 252 static void nsp32_prom_stop (nsp32_hw_data *); ^1da177e Linus Torvalds 2005-04-16 253 static int nsp32_prom_read (nsp32_hw_data *, int); ^1da177e Linus Torvalds 2005-04-16 254 static int nsp32_prom_read_bit (nsp32_hw_data *); ^1da177e Linus Torvalds 2005-04-16 255 static void nsp32_prom_write_bit(nsp32_hw_data *, int); ^1da177e Linus Torvalds 2005-04-16 256 static void nsp32_prom_set (nsp32_hw_data *, int, int); ^1da177e Linus Torvalds 2005-04-16 257 static int nsp32_prom_get (nsp32_hw_data *, int); ^1da177e Linus Torvalds 2005-04-16 258 ^1da177e Linus Torvalds 2005-04-16 259 /* debug/warning/info message */ ^1da177e Linus Torvalds 2005-04-16 260 static void nsp32_message (const char *, int, char *, char *, ...); ^1da177e Linus Torvalds 2005-04-16 261 #ifdef NSP32_DEBUG ^1da177e Linus Torvalds 2005-04-16 262 static void nsp32_dmessage(const char *, int, int, char *, ...); ^1da177e Linus Torvalds 2005-04-16 263 #endif ^1da177e Linus Torvalds 2005-04-16 264 ^1da177e Linus Torvalds 2005-04-16 265 /* ^1da177e Linus Torvalds 2005-04-16 266 * max_sectors is currently limited up to 128. ^1da177e Linus Torvalds 2005-04-16 267 */ ^1da177e Linus Torvalds 2005-04-16 268 static struct scsi_host_template nsp32_template = { ^1da177e Linus Torvalds 2005-04-16 269 .proc_name = "nsp32", ^1da177e Linus Torvalds 2005-04-16 270 .name = "Workbit NinjaSCSI-32Bi/UDE", 35c6e0e5 Al Viro 2013-03-31 271 .show_info = nsp32_show_info, ^1da177e Linus Torvalds 2005-04-16 272 .info = nsp32_info, ^1da177e Linus Torvalds 2005-04-16 273 .queuecommand = nsp32_queuecommand, ^1da177e Linus Torvalds 2005-04-16 274 .can_queue = 1, ^1da177e Linus Torvalds 2005-04-16 275 .sg_tablesize = NSP32_SG_SIZE, ^1da177e Linus Torvalds 2005-04-16 276 .max_sectors = 128, ^1da177e Linus Torvalds 2005-04-16 277 .this_id = NSP32_HOST_SCSIID, ^1da177e Linus Torvalds 2005-04-16 278 .use_clustering = DISABLE_CLUSTERING, ^1da177e Linus Torvalds 2005-04-16 279 .eh_abort_handler = nsp32_eh_abort, ^1da177e Linus Torvalds 2005-04-16 @280 .eh_bus_reset_handler = nsp32_eh_bus_reset, ^1da177e Linus Torvalds 2005-04-16 281 .eh_host_reset_handler = nsp32_eh_host_reset, ^1da177e Linus Torvalds 2005-04-16 282 /* .highmem_io = 1, */ ^1da177e Linus Torvalds 2005-04-16 283 }; :::::: The code at line 280 was first introduced by commit :::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2 :::::: TO: Linus Torvalds :::::: CC: Linus Torvalds --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation