From: Randy Dunlap These functions shouldn't be 'extern'. That's not needed for exports in Linux. Also, sparse complains, so fix them. drivers/scsi/libsas/sas_init.c:138:39: warning: function 'sas_domain_attach_transport' with external linkage has definition drivers/scsi/libsas/sas_init.c:158:13: warning: function 'sas_domain_release_transport' with external linkage has definitio Signed-off-by: Randy Dunlap Cc: James Bottomley Signed-off-by: Andrew Morton --- drivers/scsi/libsas/sas_init.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff -puN drivers/scsi/libsas/sas_init.c~libsas-externs-not-needed drivers/scsi/libsas/sas_init.c --- a/drivers/scsi/libsas/sas_init.c~libsas-externs-not-needed +++ a/drivers/scsi/libsas/sas_init.c @@ -135,7 +135,7 @@ int sas_unregister_ha(struct sas_ha_stru static struct sas_function_template sft = { }; -extern struct scsi_transport_template * +struct scsi_transport_template * sas_domain_attach_transport(struct sas_domain_function_template *dft) { struct scsi_transport_template *stt = sas_attach_transport(&sft); @@ -155,7 +155,7 @@ sas_domain_attach_transport(struct sas_d EXPORT_SYMBOL_GPL(sas_domain_attach_transport); -extern void sas_domain_release_transport(struct scsi_transport_template *stt) +void sas_domain_release_transport(struct scsi_transport_template *stt) { sas_release_transport(stt); } _