On Thu, 13 Sep 2012 18:46:21 +0800, Zheng Liu <gnehzuil.liu@xxxxxxxxx> wrote: > On Sun, Sep 09, 2012 at 09:27:11PM +0400, Dmitry Monakhov wrote: > > fsync and punch_hole are the places where we have to wait for all > > existing writers (writeback, aio, dio), but currently we simply > > flush pended end_io request which is not sufficient. > > Even more i_mutex is not holded while punch_hole which obviously > > result in dangerous data corruption due to write-after-free. > > Hi Dmitry, > > Lukas already has a patch to take i_mutex locking before punching a > hole. Just a reminding. :-) Yes, i've found it after patch was submitted, but this bug make me nervous a bit because we have broken punch_hole implementation long time ago, it allow to destroy data easily, user are able to call it if has WR permission for a file. So if you ask be i'll vote for hide it under CAP_SYS_RESOURCE until proper implementation appears. Same it true for EXT4_IO_MOVE_EXT because it allow to kernel panic since v2.6.30-6558-g748de67, so all primary distros (RH6,Deb6) are affected :( > > https://patchwork.kernel.org/patch/1247271/ > > Regards, > Zheng > -- > To unsubscribe from this list: send the line "unsubscribe linux-ext4" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html