On Sun, Feb 14, 2016 at 05:02:14PM +0200, Michael S. Tsirkin wrote: > On Sat, Feb 13, 2016 at 12:26:53PM -0500, Kevin O'Connor wrote: > > On Tue, Feb 09, 2016 at 07:36:12PM +0100, Laszlo Ersek wrote: > > > In my opinion, the real mess in this case is in the ACPI spec itself. If > > > you re-read the _FDI control method's description, the Package that it > > > returns contains *dynamic* geometry data, about the *disk* (not *drive*): > > > > > > - Maximum Cylinder Number // Integer (WORD) > > > - Maximum Sector Number // Integer (WORD) > > > - Maximum Head Number // Integer (WORD) > > > > FWIW, that's not how I read the ACPI specification. I read it as > > saying that the information should be filled with the maximum number > > of CHS that the drive can support. So, even if a smaller disk happens > > to be in the drive the maximum the drive supports would not change. > > I agree. It says: > This object returns information about a floppy disk drive. This > information is the same as > that returned by the INT 13 Function 08H on Intel Architecture PCs. > > So disk drive, not disk information. > > And FWIW I have an old "the undocumented PC" book which says > this about int 13h function 8 (read diskette drive parameters): > > "Remember this data is *not* the limits of the media in the drive, > but the maximum capability of the specified drive".
Thanks for the info, I've re-implemented the patchset according to it and Windows guests (w2k12, w10) seem to be happy with it, including dynamically (re-)inserting the "diskette" of compatible size. I'll submit the patches shortly. Thanks, Roman.