Mike Christie wrote: > > The problem is that we assume we will get nice large segments. When > using sg it will try to allocate multiple pages and make large segments. > We could hit a bad case where we cannot allocate enough large segments, > so a worst case would result in a max_segment_size of PAGE_SIZE: > > max_segments = min(q->max_hw_segments, q->max_phys_segments); > > max_xfer = min(q->max_hw_sectors * 512, > max_segments * PAGE_SIZE); > > return max_xfer; > Oh yeah, you could also check how large the reserved buffer is already. The estimate above does not take into account if we had already allocated a nice large reserved buffer with large segments. - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html