From patchwork Thu Jan 3 19:06:37 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alex Elder X-Patchwork-Id: 1929181 Return-Path: X-Original-To: patchwork-ceph-devel@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork1.kernel.org (Postfix) with ESMTP id DF4E33FE37 for ; Thu, 3 Jan 2013 19:06:40 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753730Ab3ACTGk (ORCPT ); Thu, 3 Jan 2013 14:06:40 -0500 Received: from mail-ie0-f172.google.com ([209.85.223.172]:46106 "EHLO mail-ie0-f172.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753707Ab3ACTGk (ORCPT ); Thu, 3 Jan 2013 14:06:40 -0500 Received: by mail-ie0-f172.google.com with SMTP id c13so18867739ieb.3 for ; Thu, 03 Jan 2013 11:06:39 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:message-id:date:from:user-agent:mime-version:to:subject :references:in-reply-to:content-type:content-transfer-encoding :x-gm-message-state; bh=CQsDfAAc5P0ZE8tQZFiSCfaifGTKSXXA8lIwHZJ+fX8=; b=lxsrk/2lp/WAcn3e95se9IKmP+0FcW7iExs7VlSnRnA4iahRNuFOTergqrTauo3d10 CCI6IcuSTpenlI5xn7R5KyeUeAXb+PinD9j2E8/U010eMTp1meGd0umoisq4F9DGJncW ibaeZuytgM5SXYK5T4BfHOoM8r7jj/8/uyZE4FolNoNgVmymhzxT7D+vY3G1+jABnzDi Cr1P7Usk6NSwsaAaATA8f9pVttSBP5H0/cYHHqo0a+cqb2BuKg0uOfnsvTssFMT94Wb0 p4rty+YJbz2+EhkY+pCejiS1CIy6q67Yxq5nR8Y0SSDhtZuiLhxfCQTzhKHUMfwQlF9L ulPA== X-Received: by 10.50.88.136 with SMTP id bg8mr38851183igb.96.1357239999508; Thu, 03 Jan 2013 11:06:39 -0800 (PST) Received: from [172.22.22.4] (c-71-195-31-37.hsd1.mn.comcast.net. [71.195.31.37]) by mx.google.com with ESMTPS id wg2sm44983509igb.13.2013.01.03.11.06.37 (version=SSLv3 cipher=OTHER); Thu, 03 Jan 2013 11:06:38 -0800 (PST) Message-ID: <50E5D6BD.4050105@inktank.com> Date: Thu, 03 Jan 2013 13:06:37 -0600 From: Alex Elder User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/17.0 Thunderbird/17.0 MIME-Version: 1.0 To: "ceph-devel@vger.kernel.org" Subject: [PATCH REPOST 4/4] rbd: use kmemdup() References: <50E5D641.2010405@inktank.com> In-Reply-To: <50E5D641.2010405@inktank.com> X-Gm-Message-State: ALoCoQmTGvJqEpq0BOnCIqoOkOmuWtZVWU+GiuURfpJcDfA+aUpqFTdNl0UKDQjS31MI6SoGOXLp Sender: ceph-devel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: ceph-devel@vger.kernel.org This replaces two kmalloc()/memcpy() combinations with a single call to kmemdup(). Signed-off-by: Alex Elder --- drivers/block/rbd.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) @@ -3264,10 +3262,9 @@ static int rbd_add_parse_args(const char *buf, ret = -ENAMETOOLONG; goto out_err; } - spec->snap_name = kmalloc(len + 1, GFP_KERNEL); + spec->snap_name = kmemdup(buf, len + 1, GFP_KERNEL); if (!spec->snap_name) goto out_mem; - memcpy(spec->snap_name, buf, len); *(spec->snap_name + len) = '\0'; /* Initialize all rbd options to the defaults */ diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c index e01dbb1..d97611e 100644 --- a/drivers/block/rbd.c +++ b/drivers/block/rbd.c @@ -3151,11 +3151,9 @@ static inline char *dup_token(const char **buf, size_t *lenp) size_t len; len = next_token(buf); - dup = kmalloc(len + 1, GFP_KERNEL); + dup = kmemdup(*buf, len + 1, GFP_KERNEL); if (!dup) return NULL; - - memcpy(dup, *buf, len); *(dup + len) = '\0'; *buf += len;