提交 5d4e2262 编写于 作者: C Christof Schmitt 提交者: James Bottomley

[SCSI] zfcp: Small QDIO cleanups

QBUFF_PER_PAGE is only used inside the qdio module, so move it to
zfcp_qdio.c

zfcp_qdio_zero_sbals is now only used in the qdio module, so make it
static.
Signed-off-by: NChristof Schmitt <christof.schmitt@de.ibm.com>
Signed-off-by: NSwen Schillig <swen@vnet.ibm.com>
Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
上级 7afe29f7
...@@ -100,8 +100,6 @@ zfcp_address_to_sg(void *address, struct scatterlist *list, unsigned int size) ...@@ -100,8 +100,6 @@ zfcp_address_to_sg(void *address, struct scatterlist *list, unsigned int size)
#define ZFCP_TYPE2_RECOVERY_TIME 8 /* seconds */ #define ZFCP_TYPE2_RECOVERY_TIME 8 /* seconds */
#define QBUFF_PER_PAGE (PAGE_SIZE / sizeof(struct qdio_buffer))
/********************* FSF SPECIFIC DEFINES *********************************/ /********************* FSF SPECIFIC DEFINES *********************************/
#define ZFCP_ULP_INFO_VERSION 26 #define ZFCP_ULP_INFO_VERSION 26
......
...@@ -43,7 +43,6 @@ extern void _zfcp_scan_ports_later(struct work_struct *work); ...@@ -43,7 +43,6 @@ extern void _zfcp_scan_ports_later(struct work_struct *work);
/******************************* S/390 IO ************************************/ /******************************* S/390 IO ************************************/
extern int zfcp_ccw_register(void); extern int zfcp_ccw_register(void);
extern void zfcp_qdio_zero_sbals(struct qdio_buffer **, int, int);
extern int zfcp_qdio_allocate(struct zfcp_adapter *); extern int zfcp_qdio_allocate(struct zfcp_adapter *);
extern void zfcp_qdio_free(struct zfcp_adapter *); extern void zfcp_qdio_free(struct zfcp_adapter *);
extern int zfcp_qdio_send(struct zfcp_fsf_req *fsf_req); extern int zfcp_qdio_send(struct zfcp_fsf_req *fsf_req);
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
/* FIXME(tune): free space should be one max. SBAL chain plus what? */ /* FIXME(tune): free space should be one max. SBAL chain plus what? */
#define ZFCP_QDIO_PCI_INTERVAL (QDIO_MAX_BUFFERS_PER_Q \ #define ZFCP_QDIO_PCI_INTERVAL (QDIO_MAX_BUFFERS_PER_Q \
- (ZFCP_MAX_SBALS_PER_REQ + 4)) - (ZFCP_MAX_SBALS_PER_REQ + 4))
#define QBUFF_PER_PAGE (PAGE_SIZE / sizeof(struct qdio_buffer))
static int zfcp_qdio_buffers_enqueue(struct qdio_buffer **sbal) static int zfcp_qdio_buffers_enqueue(struct qdio_buffer **sbal)
{ {
...@@ -63,6 +64,16 @@ static void zfcp_qdio_handler_error(struct zfcp_adapter *adapter, u8 id) ...@@ -63,6 +64,16 @@ static void zfcp_qdio_handler_error(struct zfcp_adapter *adapter, u8 id)
ZFCP_STATUS_COMMON_ERP_FAILED, id, NULL); ZFCP_STATUS_COMMON_ERP_FAILED, id, NULL);
} }
static void zfcp_qdio_zero_sbals(struct qdio_buffer *sbal[], int first, int cnt)
{
int i, sbal_idx;
for (i = first; i < first + cnt; i++) {
sbal_idx = i % QDIO_MAX_BUFFERS_PER_Q;
memset(sbal[sbal_idx], 0, sizeof(struct qdio_buffer));
}
}
static void zfcp_qdio_int_req(struct ccw_device *cdev, unsigned int status, static void zfcp_qdio_int_req(struct ccw_device *cdev, unsigned int status,
unsigned int qdio_err, unsigned int siga_err, unsigned int qdio_err, unsigned int siga_err,
unsigned int queue_no, int first, int count, unsigned int queue_no, int first, int count,
...@@ -365,22 +376,6 @@ int zfcp_qdio_send(struct zfcp_fsf_req *fsf_req) ...@@ -365,22 +376,6 @@ int zfcp_qdio_send(struct zfcp_fsf_req *fsf_req)
return 0; return 0;
} }
/**
* zfcp_qdio_zero_sbals - zero all sbals of the specified area and queue
* @buf: pointer to array of SBALS
* @first: integer specifying the SBAL number to start
* @count: integer specifying the number of SBALS to process
*/
void zfcp_qdio_zero_sbals(struct qdio_buffer *sbal[], int first, int count)
{
int i, sbal_idx;
for (i = first; i < first + count; i++) {
sbal_idx = i % QDIO_MAX_BUFFERS_PER_Q;
memset(sbal[sbal_idx], 0, sizeof(struct qdio_buffer));
}
}
/** /**
* zfcp_qdio_allocate - allocate queue memory and initialize QDIO data * zfcp_qdio_allocate - allocate queue memory and initialize QDIO data
* @adapter: pointer to struct zfcp_adapter * @adapter: pointer to struct zfcp_adapter
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册