target: Minimize #include directives

Remove superfluous #include directives from the include/target/*.h
files. Add missing #include directives to other *.h and *.c files.
Use forward declarations for structures where possible. This
change reduces the build time for make M=drivers/target on my
laptop from 27.1s to 18.7s or by about 30%.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Bryant G. Ly <bryantly@linux.vnet.ibm.com>
This commit is contained in:
Bart Van Assche
2016-11-14 15:47:14 -08:00
parent f504572457
commit 8dcf07be2d
51 changed files with 187 additions and 25 deletions

View File

@@ -1,12 +1,14 @@
#ifndef ISCSI_TARGET_CORE_H
#define ISCSI_TARGET_CORE_H
#include <linux/in.h>
#include <linux/configfs.h>
#include <net/sock.h>
#include <net/tcp.h>
#include <scsi/iscsi_proto.h>
#include <target/target_core_base.h>
#include <linux/dma-direction.h> /* enum dma_data_direction */
#include <linux/list.h> /* struct list_head */
#include <linux/socket.h> /* struct sockaddr_storage */
#include <linux/types.h> /* u8 */
#include <scsi/iscsi_proto.h> /* itt_t */
#include <target/target_core_base.h> /* struct se_cmd */
struct sock;
#define ISCSIT_VERSION "v4.1.0"
#define ISCSI_MAX_DATASN_MISSING_COUNT 16

View File

@@ -1,6 +1,10 @@
#ifndef ISCSI_TARGET_STAT_H
#define ISCSI_TARGET_STAT_H
#include <linux/types.h>
#include <linux/spinlock.h>
#include <linux/socket.h>
/*
* For struct iscsi_tiqn->tiqn_wwn default groups
*/

View File

@@ -1,6 +1,6 @@
#include <linux/module.h>
#include <linux/list.h>
#include "iscsi_target_core.h"
#include "iscsi_target_core.h" /* struct iscsi_cmd */
struct sockaddr_storage;
struct iscsit_transport {
#define ISCSIT_TRANSPORT_NAME 16

View File

@@ -1,8 +1,14 @@
#ifndef TARGET_CORE_BACKEND_H
#define TARGET_CORE_BACKEND_H
#include <linux/types.h>
#include <target/target_core_base.h>
#define TRANSPORT_FLAG_PASSTHROUGH 1
struct request_queue;
struct scatterlist;
struct target_backend_ops {
char name[16];
char inquiry_prod[16];

View File

@@ -1,14 +1,10 @@
#ifndef TARGET_CORE_BASE_H
#define TARGET_CORE_BASE_H
#include <linux/in.h>
#include <linux/configfs.h>
#include <linux/dma-mapping.h>
#include <linux/blkdev.h>
#include <linux/percpu_ida.h>
#include <linux/t10-pi.h>
#include <net/sock.h>
#include <net/tcp.h>
#include <linux/configfs.h> /* struct config_group */
#include <linux/dma-direction.h> /* enum dma_data_direction */
#include <linux/percpu_ida.h> /* struct percpu_ida */
#include <linux/semaphore.h> /* struct semaphore */
#define TARGET_CORE_VERSION "v5.0"

View File

@@ -1,6 +1,10 @@
#ifndef TARGET_CORE_FABRIC_H
#define TARGET_CORE_FABRIC_H
#include <linux/configfs.h>
#include <linux/types.h>
#include <target/target_core_base.h>
struct target_core_fabric_ops {
struct module *module;
const char *name;