[SeaBIOS] [PATCH 1/2] scsi: ensure LUN0 is added first

Kevin O'Connor kevin at koconnor.net
Wed Jun 21 00:44:19 CEST 2017


On Tue, Jun 20, 2017 at 04:05:32PM -0400, Paolo Bonzini wrote:
> > If virtio-scsi didn't need to allocate any space in the f-segment,
> > does this problem go away in practice?
> 
> Yes, I think so.  I'm not sure why virtqueues are allocated
> in low memory.  Either cargo culting, or a remain of when
> virtio was a 16-bit driver, if it ever was.

The 'struct drive_s' storage currently must be allocated in the
f-segment so that the disk.c code can access some critical details of
mapped drives when in 16bit mode.  However, we could change the code
to allocate that data separately from the controller specific data and
then move the controller specific data to a larger memory pool.  This
would have two gains - there's a cap of 16 hard drives that can be
mapped so we'd be less likely to exceed the f-segment, and even if the
f-segment did run out of space it would almost certainly be on a
non-bootable drive.

-Kevin



More information about the SeaBIOS mailing list