Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 77093
b: refs/heads/master
c: 11c3e68
h: refs/heads/master
i:
  77091: 6822d3f
v: v3
  • Loading branch information
James Bottomley authored and James Bottomley committed Jan 12, 2008
1 parent 75980bf commit 22541ab
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 166a72878f76e911f2d1ce4b2310d4403e94be11
refs/heads/master: 11c3e689f1c3a73e3af7b0ea767b1b0626da8033
24 changes: 24 additions & 0 deletions trunk/block/ll_rw_blk.c
Original file line number Diff line number Diff line change
Expand Up @@ -759,6 +759,30 @@ void blk_queue_dma_alignment(struct request_queue *q, int mask)

EXPORT_SYMBOL(blk_queue_dma_alignment);

/**
* blk_queue_update_dma_alignment - update dma length and memory alignment
* @q: the request queue for the device
* @mask: alignment mask
*
* description:
* update required memory and length aligment for direct dma transactions.
* If the requested alignment is larger than the current alignment, then
* the current queue alignment is updated to the new value, otherwise it
* is left alone. The design of this is to allow multiple objects
* (driver, device, transport etc) to set their respective
* alignments without having them interfere.
*
**/
void blk_queue_update_dma_alignment(struct request_queue *q, int mask)
{
BUG_ON(mask > PAGE_SIZE);

if (mask > q->dma_alignment)
q->dma_alignment = mask;
}

EXPORT_SYMBOL(blk_queue_update_dma_alignment);

/**
* blk_queue_find_tag - find a request by its tag and queue
* @q: The request queue for the device
Expand Down
1 change: 1 addition & 0 deletions trunk/include/linux/blkdev.h
Original file line number Diff line number Diff line change
Expand Up @@ -766,6 +766,7 @@ extern void blk_queue_segment_boundary(struct request_queue *, unsigned long);
extern void blk_queue_prep_rq(struct request_queue *, prep_rq_fn *pfn);
extern void blk_queue_merge_bvec(struct request_queue *, merge_bvec_fn *);
extern void blk_queue_dma_alignment(struct request_queue *, int);
extern void blk_queue_update_dma_alignment(struct request_queue *, int);
extern void blk_queue_softirq_done(struct request_queue *, softirq_done_fn *);
extern struct backing_dev_info *blk_get_backing_dev_info(struct block_device *bdev);
extern int blk_queue_ordered(struct request_queue *, unsigned, prepare_flush_fn *);
Expand Down

0 comments on commit 22541ab

Please sign in to comment.