Hi Richard, On Thu, 30 Mar 2017 08:56:57 +0200 Richard Weinberger <richard@xxxxxx> wrote: > > Ralph, > Please apply this > fix:http://lists.infradead.org/pipermail/linux-mtd/2017-March/072613.html > No longer able to observe an issue with this one on top. The two patches seem all that was needed to get things back to a working state. Do you want me to test anything else than linux-next? Thanks Ralph > > Von meinem Samsung Gerät gesendet. > > -------- Ursprüngliche Nachricht -------- > Von: Ralph Sennhauser <ralph.sennhauser@xxxxxxxxx> > Datum: 30.03.17 07:53 (GMT+01:00) > An: Richard Weinberger <richard@xxxxxx> > Cc: Amir Goldstein <amir73il@xxxxxxxxx>, Miklos Szeredi > <miklos@xxxxxxxxxx>, linux-unionfs@xxxxxxxxxxxxxxx, linux-kernel > <linux-kernel@xxxxxxxxxxxxxxx>, linux-mtd@xxxxxxxxxxxxxxxxxxx, > regressions@xxxxxxxxxxxxx, Artem Bityutskiy <dedekind1@xxxxxxxxx>, > Adrian Hunter <adrian.hunter@xxxxxxxxx>, David Oberhollenzer > <goliath@xxxxxxxxxxxxx> Betreff: Re: [REGRESSION 4.11] Commit > d8514d8edb5b ("ovl: copy up regular file using O_TMPFILE") breaks ubifs > > Hi Richard, > > On Thu, 30 Mar 2017 00:15:31 +0200 > Richard Weinberger <richard@xxxxxx> wrote: > > > Ralph, > > > > Am 29.03.2017 um 23:26 schrieb Ralph Sennhauser: > > >> # create and link a tmpfile - then remove it > > >> sudo rm -rf foo; sudo xfs_io -T -c "flink foo" . ; ls -l foo; > > >> sudo rm foo > > > > > > next-20170328, obviously without your patch: > > > > > > # xfs_io -T -c "flink foo" . > > > .: Not supported > > > > -T tells xfs_io to create a tmpfile but you have it disabled in > > UBIFS. > > Bash history says I booted the other partition than I flashed (uname > just happened to match), the downside of the dual boot layout. :) > > # rm -rf foo > # xfs_io -T -c "flink foo" . > # ls -l foo > -rw------- 1 root root 0 Mar 30 02:00 foo > # rm foo > [ 305.001436] UBIFS error (ubi0:0 pid 2493): ubifs_add_orphan: > orphaned twice > > However, unlike with the overlay setup the filesystem can be mounted > just fine without imediatly visible side effects. > > > > > Anyway, can you please test the attached patch? > > Amir was right, UBIFS misses a corner case in ubifs_link(). ;-\ > > > > I think I understand also why we never noticed this in xfstests, > > UBIFS prints only a non-fatal error while umounting the filesystem > > in this case. But will test tomorrow in more detail, need some > > sleep now. > > > > diff --git a/fs/ubifs/dir.c b/fs/ubifs/dir.c > > index 30825d882aa9..95e348a2da29 100644 > > --- a/fs/ubifs/dir.c > > +++ b/fs/ubifs/dir.c > > @@ -748,6 +748,9 @@ static int ubifs_link(struct dentry *old_dentry, > > struct inode *dir, goto out_fname; > > > > lock_2_inodes(dir, inode); > > + if (inode->i_nlink == 0) > > + ubifs_delete_orphan(c, inode->i_ino); > > + > > inc_nlink(inode); > > ihold(inode); > > inode->i_ctime = ubifs_current_time(inode); > > > > Thanks, > > //richard > > With this patch I'm no longer able to reproduce _this_ issue, however, > rename no longer works either: > > # mv /etc/config/wireless /etc/config/wireless.back > mv: can't rename '/etc/config/wireless': Invalid argument > # ls /etc/config/wireless > /etc/config/wireless > # rm /etc/config/wireless > # ls /etc/config/wireless > ls: /etc/config/wireless: No such file or directory > > > Thanks > Ralph -- To unsubscribe from this list: send the line "unsubscribe linux-unionfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html