mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-26 08:40:54 +07:00
[SCSI] osst: make all the buffer the same size
This simiplifies the buffer management; all the buffers in osst_buffer become the same size. This is necessary to use the block layer API (sg driver was modified in the same way) since the block layer API takes the same size page frames instead of scatter gatter. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Cc: Willem Riede <osst@riede.org> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
This commit is contained in:
parent
68274794c6
commit
78a42ce8fb
@ -5286,11 +5286,6 @@ static int enlarge_buffer(struct osst_buffer *STbuffer, int need_dma)
|
||||
struct page *page = alloc_pages(priority, (OS_FRAME_SIZE - got <= PAGE_SIZE) ? 0 : order);
|
||||
STbuffer->sg[segs].offset = 0;
|
||||
if (page == NULL) {
|
||||
if (OS_FRAME_SIZE - got <= (max_segs - segs) * b_size / 2 && order) {
|
||||
b_size /= 2; /* Large enough for the rest of the buffers */
|
||||
order--;
|
||||
continue;
|
||||
}
|
||||
printk(KERN_WARNING "osst :W: Failed to enlarge buffer to %d bytes.\n",
|
||||
OS_FRAME_SIZE);
|
||||
#if DEBUG
|
||||
|
Loading…
Reference in New Issue
Block a user