From patchwork Tue May 3 09:45:16 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Henry Chang X-Patchwork-Id: 749672 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id p439mKIx005792 for ; Tue, 3 May 2011 09:48:20 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751639Ab1ECJsT (ORCPT ); Tue, 3 May 2011 05:48:19 -0400 Received: from mail-pw0-f46.google.com ([209.85.160.46]:57684 "EHLO mail-pw0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751521Ab1ECJsS (ORCPT ); Tue, 3 May 2011 05:48:18 -0400 Received: by pwi15 with SMTP id 15so3053916pwi.19 for ; Tue, 03 May 2011 02:48:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:from:to:cc:subject:date:message-id:x-mailer; bh=Pd8G9N5sIMUpcxPVBx9KA9P+N7Ohayc0S6LykNWCFeI=; b=Q8i2dbvwjA8uymch3wtC5TNMa04KLna1LXmJqqjkL95XUmDrrgs2/YFmKS+bymTu78 5TeU41TmIzeYDcrOAqx6pxFEGkN8CPlXMeXy2YT55ksCp1Djotr0A9hXQ87WMQ6la/zQ 3afzM5SGrCYpg/hrPxezbR0KE/pV7ClD1EPa4= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:to:cc:subject:date:message-id:x-mailer; b=etHmhPqSy976npELaABdkvcJe80AqDaGzdbh3+XN2t1VLY4tTi8qZ0UTnY34vKJNih oiNDRY7ua9ycI/CB3EJmyWMlPUc3QNCRLXKSIpr0DmRUNq3R57WWxXwxThui6HIxf8od VXGRMGo7oe/uRt8aEpJJ8RNc3XtPhy2NkiPFQ= Received: by 10.68.4.226 with SMTP id n2mr10070258pbn.517.1304416098451; Tue, 03 May 2011 02:48:18 -0700 (PDT) Received: from localhost.localdomain ([122.146.30.126]) by mx.google.com with ESMTPS id q2sm4401306pbk.49.2011.05.03.02.48.15 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 03 May 2011 02:48:17 -0700 (PDT) From: Henry C Chang To: ceph-devel@vger.kernel.org Cc: Henry C Chang Subject: [PATCH] ceph: handle ceph_osdc_new_request failure in ceph_writepages_start Date: Tue, 3 May 2011 09:45:16 +0000 Message-Id: <1304415916-1894-1-git-send-email-henry_c_chang@tcloudcomputing.com> X-Mailer: git-send-email 1.7.2.3 Sender: ceph-devel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: ceph-devel@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter1.kernel.org [140.211.167.41]); Tue, 03 May 2011 09:48:20 +0000 (UTC) We should unlock the page and return -ENOMEM if ceph_osdc_new_request failed. Signed-off-by: Henry C Chang --- fs/ceph/addr.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) diff --git a/fs/ceph/addr.c b/fs/ceph/addr.c index 561438b..e14dd9f 100644 --- a/fs/ceph/addr.c +++ b/fs/ceph/addr.c @@ -775,6 +775,13 @@ get_more_pages: ci->i_truncate_seq, ci->i_truncate_size, &inode->i_mtime, true, 1, 0); + + if (!req) { + rc = -ENOMEM; + unlock_page(page); + break; + } + max_pages = req->r_num_pages; alloc_page_vec(fsc, req);