forked from luck/tmp_suning_uos_patched
cciss: fix compile issue
drivers/block/cciss.c: In function ‘cciss_send_reset’: drivers/block/cciss.c:2515:2: error: implicit declaration of function ‘fill_cmd’ drivers/block/cciss.c: At top level: drivers/block/cciss.c:2531:12: error: conflicting types for ‘fill_cmd’ drivers/block/cciss.c:2534:1: note: an argument type that has a default promotion can’t match an empty parameter name list declaration drivers/block/cciss.c:2515:18: note: previous implicit declaration of ‘fill_cmd’ was here make[1]: *** [drivers/block/cciss.o] Error 1 make: *** [drivers/block/cciss.o] Error 2 Move fill_cmd() to above where it is first used. Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
This commit is contained in:
parent
8a4ec67bd5
commit
edc83d47a9
|
@ -2503,31 +2503,6 @@ static int deregister_disk(ctlr_info_t *h, int drv_index,
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int __devinit cciss_send_reset(ctlr_info_t *h, unsigned char *scsi3addr,
|
||||
u8 reset_type)
|
||||
{
|
||||
CommandList_struct *c;
|
||||
int return_status;
|
||||
|
||||
c = cmd_alloc(h);
|
||||
if (!c)
|
||||
return -ENOMEM;
|
||||
return_status = fill_cmd(h, c, CCISS_RESET_MSG, NULL, 0, 0,
|
||||
CTLR_LUNID, TYPE_MSG);
|
||||
c->Request.CDB[1] = reset_type; /* fill_cmd defaults to target reset */
|
||||
if (return_status != IO_OK) {
|
||||
cmd_special_free(h, c);
|
||||
return return_status;
|
||||
}
|
||||
c->waiting = NULL;
|
||||
enqueue_cmd_and_start_io(h, c);
|
||||
/* Don't wait for completion, the reset won't complete. Don't free
|
||||
* the command either. This is the last command we will send before
|
||||
* re-initializing everything, so it doesn't matter and won't leak.
|
||||
*/
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int fill_cmd(ctlr_info_t *h, CommandList_struct *c, __u8 cmd, void *buff,
|
||||
size_t size, __u8 page_code, unsigned char *scsi3addr,
|
||||
int cmd_type)
|
||||
|
@ -2668,6 +2643,31 @@ static int fill_cmd(ctlr_info_t *h, CommandList_struct *c, __u8 cmd, void *buff,
|
|||
return status;
|
||||
}
|
||||
|
||||
static int __devinit cciss_send_reset(ctlr_info_t *h, unsigned char *scsi3addr,
|
||||
u8 reset_type)
|
||||
{
|
||||
CommandList_struct *c;
|
||||
int return_status;
|
||||
|
||||
c = cmd_alloc(h);
|
||||
if (!c)
|
||||
return -ENOMEM;
|
||||
return_status = fill_cmd(h, c, CCISS_RESET_MSG, NULL, 0, 0,
|
||||
CTLR_LUNID, TYPE_MSG);
|
||||
c->Request.CDB[1] = reset_type; /* fill_cmd defaults to target reset */
|
||||
if (return_status != IO_OK) {
|
||||
cmd_special_free(h, c);
|
||||
return return_status;
|
||||
}
|
||||
c->waiting = NULL;
|
||||
enqueue_cmd_and_start_io(h, c);
|
||||
/* Don't wait for completion, the reset won't complete. Don't free
|
||||
* the command either. This is the last command we will send before
|
||||
* re-initializing everything, so it doesn't matter and won't leak.
|
||||
*/
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int check_target_status(ctlr_info_t *h, CommandList_struct *c)
|
||||
{
|
||||
switch (c->err_info->ScsiStatus) {
|
||||
|
|
Loading…
Reference in New Issue
Block a user