From patchwork Mon Dec 20 02:02:59 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tsutomu Itoh X-Patchwork-Id: 419261 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 oBK23Amx021682 for ; Mon, 20 Dec 2010 02:03:10 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753511Ab0LTCDF (ORCPT ); Sun, 19 Dec 2010 21:03:05 -0500 Received: from fgwmail7.fujitsu.co.jp ([192.51.44.37]:46161 "EHLO fgwmail7.fujitsu.co.jp" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753388Ab0LTCDD (ORCPT ); Sun, 19 Dec 2010 21:03:03 -0500 Received: from m2.gw.fujitsu.co.jp ([10.0.50.72]) by fgwmail7.fujitsu.co.jp (Fujitsu Gateway) with ESMTP id oBK230kD024649 for (envelope-from t-itoh@jp.fujitsu.com); Mon, 20 Dec 2010 11:03:01 +0900 Received: from smail (m2 [127.0.0.1]) by outgoing.m2.gw.fujitsu.co.jp (Postfix) with ESMTP id 8AC1A45DE6A for ; Mon, 20 Dec 2010 11:02:59 +0900 (JST) Received: from s2.gw.fujitsu.co.jp (s2.gw.fujitsu.co.jp [10.0.50.92]) by m2.gw.fujitsu.co.jp (Postfix) with ESMTP id 6EF1F45DE67 for ; Mon, 20 Dec 2010 11:02:59 +0900 (JST) Received: from s2.gw.fujitsu.co.jp (localhost.localdomain [127.0.0.1]) by s2.gw.fujitsu.co.jp (Postfix) with ESMTP id 587CC1DB803C for ; Mon, 20 Dec 2010 11:02:59 +0900 (JST) Received: from ml14.s.css.fujitsu.com (ml14.s.css.fujitsu.com [10.249.87.104]) by s2.gw.fujitsu.co.jp (Postfix) with ESMTP id 01C5B1DB803B for ; Mon, 20 Dec 2010 11:02:59 +0900 (JST) Received: from ml14.css.fujitsu.com (ml14 [127.0.0.1]) by ml14.s.css.fujitsu.com (Postfix) with ESMTP id BF78A9F6C71 for ; Mon, 20 Dec 2010 11:02:58 +0900 (JST) Received: from [127.0.0.1] (unknown [10.124.101.86]) by ml14.s.css.fujitsu.com (Postfix) with ESMTP id 4F0EF9F6C64 for ; Mon, 20 Dec 2010 11:02:58 +0900 (JST) X-SecurityPolicyCheck-FJ: OK by FujitsuOutboundMailChecker v1.4.0 Received: from T-ITOH1[10.124.101.86] by T-ITOH1 (FujitsuOutboundMailChecker v1.4.0/9992[10.124.101.86]); Mon, 20 Dec 2010 11:03:06 +0900 (JST) Message-ID: <4D0EB953.2010106@jp.fujitsu.com> Date: Mon, 20 Dec 2010 11:02:59 +0900 From: Tsutomu Itoh User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 To: Linux Btrfs Subject: Re: [BUG?] There is a possibility that 'i_ino' overflows References: <4D09D153.1060208@jp.fujitsu.com> In-Reply-To: <4D09D153.1060208@jp.fujitsu.com> Sender: linux-btrfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-btrfs@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter1.kernel.org [140.211.167.41]); Mon, 20 Dec 2010 02:03:10 +0000 (UTC) diff -urNp linux-2.6.37-rc6/fs/btrfs/inode.c linux-2.6.37-rc6.new/fs/btrfs/inode.c --- linux-2.6.37-rc6/fs/btrfs/inode.c 2010-12-16 10:24:48.000000000 +0900 +++ linux-2.6.37-rc6.new/fs/btrfs/inode.c 2010-12-20 09:04:18.000000000 +0900 @@ -4529,6 +4529,10 @@ static struct inode *btrfs_new_inode(str inode_init_owner(inode, dir, mode); inode->i_ino = objectid; + if (unlikely(inode->i_ino > (unsigned long)BTRFS_LAST_FREE_OBJECTID)) { + ret = -ENOSPC; + goto fail; + } inode_set_bytes(inode, 0); inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME; inode_item = btrfs_item_ptr(path->nodes[0], path->slots[0],