[SCSI] st: Increase success probability in driver buffer allocation
Modify allocation to try the minimum possible page order allowed by the HBA scatter/gather segment limit in allocation of the driver's internal buffer. This increases the probability of successful allocation. The allocation may still fail if this minimum order is > 0. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Kai Makisara <kai.makisara@kolumbus.fi> Reported-by: Lukas Kolbe <lkolbe@techfak.uni-bielefeld.de> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
This commit is contained in:
Родитель
373daacfce
Коммит
46081b1664
|
@ -3729,7 +3729,8 @@ static int enlarge_buffer(struct st_buffer * STbuffer, int new_size, int need_dm
|
|||
b_size = PAGE_SIZE << order;
|
||||
} else {
|
||||
for (b_size = PAGE_SIZE, order = 0;
|
||||
order < ST_MAX_ORDER && b_size < new_size;
|
||||
order < ST_MAX_ORDER &&
|
||||
max_segs * (PAGE_SIZE << order) < new_size;
|
||||
order++, b_size *= 2)
|
||||
; /* empty */
|
||||
STbuffer->reserved_page_order = order;
|
||||
|
|
Загрузка…
Ссылка в новой задаче