mirror of
https://github.com/torvalds/linux.git
synced 2024-12-12 14:12:51 +00:00
[PATCH] libata: inline ata_qc_complete()
This patch inlines ata_qc_complete() and uninlines __ata_qc_complete() as suggested by Jeff Garzik. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
This commit is contained in:
parent
cbefa3258e
commit
76014427e6
@ -3621,7 +3621,7 @@ void ata_qc_free(struct ata_queued_cmd *qc)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void __ata_qc_complete(struct ata_queued_cmd *qc)
|
void __ata_qc_complete(struct ata_queued_cmd *qc)
|
||||||
{
|
{
|
||||||
assert(qc != NULL); /* ata_qc_from_tag _might_ return NULL */
|
assert(qc != NULL); /* ata_qc_from_tag _might_ return NULL */
|
||||||
assert(qc->flags & ATA_QCFLAG_ACTIVE);
|
assert(qc->flags & ATA_QCFLAG_ACTIVE);
|
||||||
@ -3639,25 +3639,6 @@ inline void __ata_qc_complete(struct ata_queued_cmd *qc)
|
|||||||
qc->complete_fn(qc);
|
qc->complete_fn(qc);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* ata_qc_complete - Complete an active ATA command
|
|
||||||
* @qc: Command to complete
|
|
||||||
* @err_mask: ATA Status register contents
|
|
||||||
*
|
|
||||||
* Indicate to the mid and upper layers that an ATA
|
|
||||||
* command has completed, with either an ok or not-ok status.
|
|
||||||
*
|
|
||||||
* LOCKING:
|
|
||||||
* spin_lock_irqsave(host_set lock)
|
|
||||||
*/
|
|
||||||
void ata_qc_complete(struct ata_queued_cmd *qc)
|
|
||||||
{
|
|
||||||
if (unlikely(qc->flags & ATA_QCFLAG_EH_SCHEDULED))
|
|
||||||
return;
|
|
||||||
|
|
||||||
__ata_qc_complete(qc);
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline int ata_should_dma_map(struct ata_queued_cmd *qc)
|
static inline int ata_should_dma_map(struct ata_queued_cmd *qc)
|
||||||
{
|
{
|
||||||
struct ata_port *ap = qc->ap;
|
struct ata_port *ap = qc->ap;
|
||||||
@ -4877,7 +4858,7 @@ EXPORT_SYMBOL_GPL(ata_device_add);
|
|||||||
EXPORT_SYMBOL_GPL(ata_host_set_remove);
|
EXPORT_SYMBOL_GPL(ata_host_set_remove);
|
||||||
EXPORT_SYMBOL_GPL(ata_sg_init);
|
EXPORT_SYMBOL_GPL(ata_sg_init);
|
||||||
EXPORT_SYMBOL_GPL(ata_sg_init_one);
|
EXPORT_SYMBOL_GPL(ata_sg_init_one);
|
||||||
EXPORT_SYMBOL_GPL(ata_qc_complete);
|
EXPORT_SYMBOL_GPL(__ata_qc_complete);
|
||||||
EXPORT_SYMBOL_GPL(ata_qc_issue_prot);
|
EXPORT_SYMBOL_GPL(ata_qc_issue_prot);
|
||||||
EXPORT_SYMBOL_GPL(ata_eng_timeout);
|
EXPORT_SYMBOL_GPL(ata_eng_timeout);
|
||||||
EXPORT_SYMBOL_GPL(ata_tf_load);
|
EXPORT_SYMBOL_GPL(ata_tf_load);
|
||||||
|
@ -46,7 +46,6 @@ extern struct ata_queued_cmd *ata_qc_new_init(struct ata_port *ap,
|
|||||||
extern int ata_rwcmd_protocol(struct ata_queued_cmd *qc);
|
extern int ata_rwcmd_protocol(struct ata_queued_cmd *qc);
|
||||||
extern void ata_qc_free(struct ata_queued_cmd *qc);
|
extern void ata_qc_free(struct ata_queued_cmd *qc);
|
||||||
extern unsigned int ata_qc_issue(struct ata_queued_cmd *qc);
|
extern unsigned int ata_qc_issue(struct ata_queued_cmd *qc);
|
||||||
extern void __ata_qc_complete(struct ata_queued_cmd *qc);
|
|
||||||
extern int ata_check_atapi_dma(struct ata_queued_cmd *qc);
|
extern int ata_check_atapi_dma(struct ata_queued_cmd *qc);
|
||||||
extern void ata_dev_select(struct ata_port *ap, unsigned int device,
|
extern void ata_dev_select(struct ata_port *ap, unsigned int device,
|
||||||
unsigned int wait, unsigned int can_sleep);
|
unsigned int wait, unsigned int can_sleep);
|
||||||
|
@ -556,7 +556,7 @@ extern void ata_bmdma_start (struct ata_queued_cmd *qc);
|
|||||||
extern void ata_bmdma_stop(struct ata_queued_cmd *qc);
|
extern void ata_bmdma_stop(struct ata_queued_cmd *qc);
|
||||||
extern u8 ata_bmdma_status(struct ata_port *ap);
|
extern u8 ata_bmdma_status(struct ata_port *ap);
|
||||||
extern void ata_bmdma_irq_clear(struct ata_port *ap);
|
extern void ata_bmdma_irq_clear(struct ata_port *ap);
|
||||||
extern void ata_qc_complete(struct ata_queued_cmd *qc);
|
extern void __ata_qc_complete(struct ata_queued_cmd *qc);
|
||||||
extern void ata_eng_timeout(struct ata_port *ap);
|
extern void ata_eng_timeout(struct ata_port *ap);
|
||||||
extern void ata_scsi_simulate(struct ata_port *ap, struct ata_device *dev,
|
extern void ata_scsi_simulate(struct ata_port *ap, struct ata_device *dev,
|
||||||
struct scsi_cmnd *cmd,
|
struct scsi_cmnd *cmd,
|
||||||
@ -756,6 +756,24 @@ static inline void ata_qc_reinit(struct ata_queued_cmd *qc)
|
|||||||
ata_tf_init(qc->ap, &qc->tf, qc->dev->devno);
|
ata_tf_init(qc->ap, &qc->tf, qc->dev->devno);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ata_qc_complete - Complete an active ATA command
|
||||||
|
* @qc: Command to complete
|
||||||
|
* @err_mask: ATA Status register contents
|
||||||
|
*
|
||||||
|
* Indicate to the mid and upper layers that an ATA
|
||||||
|
* command has completed, with either an ok or not-ok status.
|
||||||
|
*
|
||||||
|
* LOCKING:
|
||||||
|
* spin_lock_irqsave(host_set lock)
|
||||||
|
*/
|
||||||
|
static inline void ata_qc_complete(struct ata_queued_cmd *qc)
|
||||||
|
{
|
||||||
|
if (unlikely(qc->flags & ATA_QCFLAG_EH_SCHEDULED))
|
||||||
|
return;
|
||||||
|
|
||||||
|
__ata_qc_complete(qc);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ata_irq_on - Enable interrupts on a port.
|
* ata_irq_on - Enable interrupts on a port.
|
||||||
|
Loading…
Reference in New Issue
Block a user