Applying with these fixes on my side: - "Physically adjacent extents are merged into one discard" -> "Extents that follow each other both in the file and on disk are merged into one discard" - "opened only through EXT4_IOC_OPEN_BALLOON, which takes CAP_SYS_ADMIN, so the lock only waits for ploop" -> "only a privileged process opens it, through EXT4_IOC_OPEN_BALLOON or a file handle, so in practice the lock waits only for ploop"
On Wed, 11 Nov 2026 12:31:34 +0100, Denis V. Lunev wrote: > leave extents past i_size. Physically adjacent extents are merged into > one discard, otherwise every cut at the unwritten extent length limit > leaves a partly covered cluster of the image below. A merged run is Sashiko is right here: the run also ends at a hole, a written extent or an extent placed on disk before the one before it in the file. ploop fills the balloon from offset 0 and never writes it, so the code is fine and only the wording changes. > balloon is hidden from lookup and opened only through > EXT4_IOC_OPEN_BALLOON, which takes CAP_SYS_ADMIN, so the lock only > waits for ploop inflating or shrinking it. open_by_handle_at() opens the balloon too. It needs privileges as well, and the exclusive locks cover any opener, so only the wording changes. > + /* > + * Chunks keep a long run interruptible. They end on multiples of the > + * discard granularity, so no cluster below is split between two. > + */ Item 2 of the cover letter reply. > + ret = sb_issue_discard(sb, pblk, next - pblk, GFP_NOFS, 0); > + if (ret) > + return ret; Item 1 of the cover letter reply. -- Konstantin Khorenko, Virtuozzo Linux Kernel Team _______________________________________________ Devel mailing list [email protected] https://lists.openvz.org/mailman/listinfo/devel
