bhyve VM stopped to boot after moving virtio disks

Igor Mozolevsky igor at hybrid-lab.co.uk
Sat Apr 20 20:36:20 UTC 2019


On Sat, 20 Apr 2019 at 19:29, Ian Lepore wrote:
>
> On Sat, 2019-04-20 at 18:45 +0100, Igor Mozolevsky wrote:
> > On Sat, 20 Apr 2019 at 18:00, Ian Lepore wrote:
> >
> > <snip>
> > > dd absolutely will fail to copy the last block of the source if it
> > > isn't exactly the blocksize and you didn't specify conv=sync, and
> > > it
> > > will return a zero status when doing so.  It appears you've
> > > convinced
> > > yourself otherwise, but for anyone else reading this thread, be
> > > aware:
> > > conv=sync is required to copy the last part of the source if it's
> > > smaller than the blocksize.
> >
> >
> > Isn't that contrary to the POSIX Spec? Reading the manual [1], it is
> > implied (from STDERR part of the main section) that dd will read and
> > write partial blocks, cf. truncated blocks?..
> >
> > 1. https://pubs.opengroup.org/onlinepubs/9699919799/utilities/dd.html
> >
> >
>
> Damn, why do people trim away the entire useful context of an email
> thread when replying?  I almost don't want to reply to this because at
> this point all the useful info is gone.

I only trimmed because you were appearing to be speaking generally and
not specifically, so the trimmed part was superfluous.


> In any case, in retrospect, what I said was wrong.  Using conv=sync is
> important when the output is a device that has fixed block sizes where
> you cannot write a partial block.  When the destination is a file where
> short writes work correctly, it will copy the entire source correctly.


Thanks for clarifying, I was starting to think I misread the POSIX
standard when implementing a local version of dd.


-- 
Igor M.


More information about the freebsd-hackers mailing list