sd3: mode sense (4) returned nonsense; using fictitious geometry
SunOS 4.1.4 complains:
sd3: non-CCS device found at target 0 lun 0 on esp0
I was hoping that this is the same bug, so I tried to investigate. It's always easier to work when the sources are available. It turned out that NetBSD expects a block descriptor for mode pages, which wasn't implemented in qemu, and is probably mandatory for SCSI-2 disks. The specs are unclear: they don't explicitly say "optional" or "mandatory" in chapters 9.1.2 and 9.3.3.
Anyway, I implemented the block descriptor, and the NetBSD bug is gone. But this was in vain: the SunOS bug is still there, the Solaris bootblk problem is also un-affected.
Will send the patch upstream though. A small improvement is still an improvement.