On 29.03.16 23:04, Andriy Gapon wrote: > On 29/03/2016 22:18, Alexander Motin wrote: >> Author: mav >> Date: Tue Mar 29 19:18:34 2016 >> New Revision: 297396 >> URL: https://svnweb.freebsd.org/changeset/base/297396 >> >> Log: >> Modify "4958 zdb trips assert on pools with ashift >= 0xe". >> >> Unlike Illumos FreeBSD has concept of logical ashift, that specifies >> really minimal vdev block size that can be accessed. This knowledge >> allows properly pad physical I/O and correctly assert its alignment. >> >> This change fixes L2ARC write errors when device has logical sector >> size above 512 bytes. >> >> MFC after: 1 month > > Alexander, > > I believe that this is wrong. > We must not modify any parameters of a physical zio including its size. > Otherwise we are going to overwrite something that an originator of the I/O > did > not intend to overwrite. Here we should have a check (or just the assertion) > that the zio conforms to disk characteristics. It's the code that creates > physical zio-s that should be made aware of the alignment requirements.
Generally I agree with your point. I also had such thoughts. Though this way is much easier and less invasive and I can not find any real failure scenario for it. I will happily revert it when better solution is ready. > Please see my work in this direction: https://reviews.freebsd.org/D2789 > (BTW, I added you as a reviewer there). Sure. I'll take a look on that. -- Alexander Motin _______________________________________________ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"