From 24d08d09f5a66060617682cda5732cb2865320e2 Mon Sep 17 00:00:00 2001 From: Fang Wenqi Date: Wed, 30 Dec 2009 18:37:13 +0800 Subject: [PATCH] --- yaml --- r: 185087 b: refs/heads/master c: b2d82ee3c8b2193ee5bc7eca4687ee9be30abd34 h: refs/heads/master i: 185085: 4fa3bc708b561402e5c070ddc6dafa40f14f2765 185083: a713f606c79644a0dfaca0c86bb35012750c6d88 185079: c0f1b4b2fed82a80b77302f130c88143eca9e265 185071: fbb6368f604f267a171212e5cfbfb9095b38b733 185055: 6d8b20770210d1525999542961df9e1c9f021fb2 185023: dc5911eda39dec77a8f9ac7032ba7ec4814beab2 184959: aa4074a16cd842a8608e73a295def644112298d2 184831: 7d72d5cbd42dfc6ed2e3286a9455353e58a083a0 v: v3 --- [refs] | 2 +- trunk/fs/fuse/dev.c | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 5e9d8b704775..f77a8a73fa03 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b21dda438baa450a76a375a35653ae0377793fab +refs/heads/master: b2d82ee3c8b2193ee5bc7eca4687ee9be30abd34 diff --git a/trunk/fs/fuse/dev.c b/trunk/fs/fuse/dev.c index ab622305c2f5..eb7e9423691f 100644 --- a/trunk/fs/fuse/dev.c +++ b/trunk/fs/fuse/dev.c @@ -881,10 +881,15 @@ static int fuse_notify_inval_entry(struct fuse_conn *fc, unsigned int size, struct fuse_copy_state *cs) { struct fuse_notify_inval_entry_out outarg; - int err = -EINVAL; - char buf[FUSE_NAME_MAX+1]; + int err = -ENOMEM; + char *buf; struct qstr name; + buf = kzalloc(FUSE_NAME_MAX + 1, GFP_KERNEL); + if (!buf) + goto err; + + err = -EINVAL; if (size < sizeof(outarg)) goto err; @@ -910,9 +915,11 @@ static int fuse_notify_inval_entry(struct fuse_conn *fc, unsigned int size, if (fc->sb) err = fuse_reverse_inval_entry(fc->sb, outarg.parent, &name); up_read(&fc->killsb); + kfree(buf); return err; err: + kfree(buf); fuse_copy_finish(cs); return err; }