From patchwork Mon Oct 7 22:19:00 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Geyslan G. Bem" X-Patchwork-Id: 2999481 Return-Path: X-Original-To: patchwork-v9fs-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 26C05BF924 for ; Mon, 7 Oct 2013 22:23:23 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 63AA0201E7 for ; Mon, 7 Oct 2013 22:23:22 +0000 (UTC) Received: from lists.sourceforge.net (lists.sourceforge.net [216.34.181.88]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 6967F201E4 for ; Mon, 7 Oct 2013 22:23:21 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=sfs-ml-3.v29.ch3.sourceforge.com) by sfs-ml-3.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from ) id 1VTJCx-000628-2L; Mon, 07 Oct 2013 22:23:19 +0000 Received: from sog-mx-2.v43.ch3.sourceforge.com ([172.29.43.192] helo=mx.sourceforge.net) by sfs-ml-3.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from ) id 1VTJCv-000620-RM for v9fs-developer@lists.sourceforge.net; Mon, 07 Oct 2013 22:23:17 +0000 Received-SPF: pass (sog-mx-2.v43.ch3.sourceforge.com: domain of gmail.com designates 209.85.220.173 as permitted sender) client-ip=209.85.220.173; envelope-from=geyslan@gmail.com; helo=mail-vc0-f173.google.com; Received: from mail-vc0-f173.google.com ([209.85.220.173]) by sog-mx-2.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128) (Exim 4.76) id 1VTJCv-0006JA-1X for v9fs-developer@lists.sourceforge.net; Mon, 07 Oct 2013 22:23:17 +0000 Received: by mail-vc0-f173.google.com with SMTP id if17so3125877vcb.4 for ; Mon, 07 Oct 2013 15:23:11 -0700 (PDT) X-Received: by 10.52.69.204 with SMTP id g12mr2150889vdu.26.1381184591477; Mon, 07 Oct 2013 15:23:11 -0700 (PDT) Received: from localhost.localdomain (179-197-75-216.user.veloxzone.com.br. [179.197.75.216]) by mx.google.com with ESMTPSA id tn2sm32498810vdc.2.1969.12.31.16.00.00 (version=TLSv1.2 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 07 Oct 2013 15:23:11 -0700 (PDT) From: "Geyslan G. Bem" To: ericvh@gmail.com, rminnich@sandia.gov, lucho@ionkov.net, v9fs-developer@lists.sourceforge.net Date: Mon, 7 Oct 2013 19:19:00 -0300 Message-Id: <1381184340-11190-1-git-send-email-geyslan@gmail.com> X-Mailer: git-send-email 1.8.4 X-Spam-Score: -1.6 (-) X-Headers-End: 1VTJCv-0006JA-1X Cc: "Geyslan G. Bem" , linux-kernel@vger.kernel.org, kernel-br@googlegroups.com Subject: [V9fs-developer] [PATCH] 9p: unsigned/signed wrap in p9/unix modes. X-BeenThere: v9fs-developer@lists.sourceforge.net X-Mailman-Version: 2.1.9 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: v9fs-developer-bounces@lists.sourceforge.net X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, FREEMAIL_FROM,RCVD_IN_DNSWL_HI,RP_MATCHES_RCVD,UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Changes the sign type to unsigned, avoiding the possibility of wrap when ORing the p9 or unix bit modes. Signed-off-by: Geyslan G. Bem --- fs/9p/vfs_inode.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/fs/9p/vfs_inode.c b/fs/9p/vfs_inode.c index b352457..574095e 100644 --- a/fs/9p/vfs_inode.c +++ b/fs/9p/vfs_inode.c @@ -63,7 +63,7 @@ static const struct inode_operations v9fs_symlink_inode_operations; static u32 unixmode2p9mode(struct v9fs_session_info *v9ses, umode_t mode) { - int res; + u32 res; res = mode & 0777; if (S_ISDIR(mode)) res |= P9_DMDIR; @@ -125,7 +125,7 @@ static int p9mode2perm(struct v9fs_session_info *v9ses, static umode_t p9mode2unixmode(struct v9fs_session_info *v9ses, struct p9_wstat *stat, dev_t *rdev) { - int res; + umode_t res; u32 mode = stat->mode; *rdev = 0; @@ -144,7 +144,7 @@ static umode_t p9mode2unixmode(struct v9fs_session_info *v9ses, else if ((mode & P9_DMDEVICE) && (v9fs_proto_dotu(v9ses)) && (v9ses->nodev == 0)) { char type = 0, ext[32]; - int major = -1, minor = -1; + u32 major = 0, minor = 0; strlcpy(ext, stat->extension, sizeof(ext)); sscanf(ext, "%c %u %u", &type, &major, &minor);