[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1275939165.17903.5100.camel@macbook.infradead.org>
Date: Mon, 07 Jun 2010 20:32:45 +0100
From: David Woodhouse <dwmw2@...radead.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Al Viro <viro@...IV.linux.org.uk>, Dave Airlie <airlied@...ux.ie>,
dri-devel@...ts.freedesktop.org,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [git pull] drm fixes
On Mon, 2010-06-07 at 11:53 -0700, Linus Torvalds wrote:
>
> On Mon, 7 Jun 2010, Al Viro wrote:
> >
> > Ho-hum... Speaking of which, what about leak fixes? There's a long-standing
> > in-core inode leak in jffs2; basically, if you fail directory modification
> > in symlink() et.al., you get a leaked inode and whinge at umount. Found
> > after -rc1, had been there since all the way back (similar bug in creat()
> > had been fixed in 2003, mkdir()/mknod()/symlink() were not). Fix sits in
> > jffs2-fixes now...
>
> I think a leak that is trivial easily falls under "security issue" as a
> potential DoS issue.
>
> On the other hand, if it's not trivially fixed (say it needs big
> re-organizing of some locking or refcounting or whatever), and it's a
> really slow leak of a pretty small data structure, and is not triggered by
> normal users (say, you need to mount a filesystem or it needs some very
> specific timing), I think it falls under "we haven't seen in the previous
> five years, we might as well make sure the fix is tested in the next merge
> window".
>
> So I think it's a judgement call.
The fix is fairly trivial. There's a "big" patch to fs/jffs2/dir.c which
accounts for the bulk of my pull request, but if you look harder you'll
see it's mostly just a bunch of removing 'return ret;' and adding
'goto fail;' so the error cleanup happens properly.
Al pointed out a second problem at the same time, fixed by commit
e72e6497 in the tree I asked you to pull. That involved adding an
unlock_new_inode() to the same error paths that the first patch used.
Between the two bugs, I figured it was worth pushing the fixes for
2.6.35.
The third jffs2 patch in that tree is a fix for ctime semantics which is
a two-liner. Again not a regression but worth fixing, and -stable
fodder.
Al also pointed out that I could use iget_failed(), but I figured that
cleanup could wait for 2.6.36.
> I seem to have a jffs2 pull request that I haven't yet processed, exactly
> because it wasn't clear. It's much bigger than I would have wished for,
> and it's not clear it's all regressions at all.
>
> DavidW? It's
>
> 7 files changed, 107 insertions(+), 91 deletions(-)
>
> and while that's in the size range that I didn't just reject it like the
> drm pull, I still do want to know if that's really just true major
> bugfixes and regressions.
Documentation/DocBook/mtdnand.tmpl | 2 +-
drivers/mtd/mtdchar.c | 11 +--
drivers/mtd/nand/Kconfig | 21 +++---
drivers/mtd/nand/r852.c | 27 +++++---
fs/jffs2/acl.c | 3 +-
fs/jffs2/dir.c | 127 +++++++++++++++++++-----------------
fs/jffs2/fs.c | 7 ++-
7 files changed, 107 insertions(+), 91 deletions(-)
The patches to r852 are fixing the fact that suspend/resume wasn't
working. Not strictly a regression, as it's a new driver in 2.6.35 --
but I judged that it was best to fix it.
The Kconfig patch fixes a problem with the menu nesting, introduced with
the SmartMedia support. That one is a regression.
I'll concede that I could probably have lived without the DocBook patch,
and the patch to use memdup_user() in mtdchar.c, but they're so trivial
that it seemed pointless rebasing the tree to exclude them once I
concluded I should to try my luck at getting the other stuff into -rc2.
--
David Woodhouse Open Source Technology Centre
David.Woodhouse@...el.com Intel Corporation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists