From: Greg Kroah-Hartman <gregkh@suse.de>
To: linux-kernel@vger.kernel.org
Cc: Kay Sievers <kay.sievers@vrfy.org>, Greg Kroah-Hartman <gregkh@suse.de>
Subject: [PATCH 07/11] kobject: do not copy vargs, just pass them around
Date: Wed, 30 Apr 2008 16:57:46 -0700 [thread overview]
Message-ID: <1209599870-22919-7-git-send-email-gregkh@suse.de> (raw)
In-Reply-To: <20080430235701.GA20981@suse.de>
From: Kay Sievers <kay.sievers@vrfy.org>
This prevents a few unneeded copies.
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
lib/kobject.c | 28 ++++++++--------------------
1 files changed, 8 insertions(+), 20 deletions(-)
diff --git a/lib/kobject.c b/lib/kobject.c
index fd78740..718e510 100644
--- a/lib/kobject.c
+++ b/lib/kobject.c
@@ -216,21 +216,12 @@ static int kobject_add_internal(struct kobject *kobj)
static int kobject_set_name_vargs(struct kobject *kobj, const char *fmt,
va_list vargs)
{
- va_list aq;
- char *name;
-
- va_copy(aq, vargs);
- name = kvasprintf(GFP_KERNEL, fmt, vargs);
- va_end(aq);
-
- if (!name)
- return -ENOMEM;
-
/* Free the old name, if necessary. */
kfree(kobj->name);
- /* Now, set the new name */
- kobj->name = name;
+ kobj->name = kvasprintf(GFP_KERNEL, fmt, vargs);
+ if (!kobj->name)
+ return -ENOMEM;
return 0;
}
@@ -246,12 +237,12 @@ static int kobject_set_name_vargs(struct kobject *kobj, const char *fmt,
*/
int kobject_set_name(struct kobject *kobj, const char *fmt, ...)
{
- va_list args;
+ va_list vargs;
int retval;
- va_start(args, fmt);
- retval = kobject_set_name_vargs(kobj, fmt, args);
- va_end(args);
+ va_start(vargs, fmt);
+ retval = kobject_set_name_vargs(kobj, fmt, vargs);
+ va_end(vargs);
return retval;
}
@@ -301,12 +292,9 @@ EXPORT_SYMBOL(kobject_init);
static int kobject_add_varg(struct kobject *kobj, struct kobject *parent,
const char *fmt, va_list vargs)
{
- va_list aq;
int retval;
- va_copy(aq, vargs);
- retval = kobject_set_name_vargs(kobj, fmt, aq);
- va_end(aq);
+ retval = kobject_set_name_vargs(kobj, fmt, vargs);
if (retval) {
printk(KERN_ERR "kobject: can not set name properly!\n");
return retval;
--
1.5.5.1
next prev parent reply other threads:[~2008-05-01 0:01 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-30 23:57 [GIT PATCH] driver core patches against 2.6.25-git Greg KH
2008-04-30 23:57 ` [PATCH 01/11] sysfs: Disallow truncation of files in sysfs Greg Kroah-Hartman
2008-04-30 23:57 ` [PATCH 02/11] klist: implement KLIST_INIT() and DEFINE_KLIST() Greg Kroah-Hartman
2008-04-30 23:57 ` [PATCH 03/11] klist: implement klist_add_{after|before}() Greg Kroah-Hartman
2008-04-30 23:57 ` [PATCH 04/11] driver core: warn about duplicate driver names on the same bus Greg Kroah-Hartman
2008-04-30 23:57 ` [PATCH 05/11] DEBUGFS: Correct location of debugfs API documentation Greg Kroah-Hartman
2008-04-30 23:57 ` [PATCH 06/11] sysfs: sysfs_update_group stub for CONFIG_SYSFS=n Greg Kroah-Hartman
2008-04-30 23:57 ` Greg Kroah-Hartman [this message]
2008-05-02 7:07 ` [PATCH 07/11] kobject: do not copy vargs, just pass them around SL Baur
2008-04-30 23:57 ` [PATCH 08/11] devres: support addresses greater than an unsigned long via dev_ioremap Greg Kroah-Hartman
2008-04-30 23:57 ` [PATCH 09/11] pcmcia: remove pccard_sysfs_interface warnings Greg Kroah-Hartman
2008-04-30 23:57 ` [PATCH 10/11] driver core: remove no longer used "struct class_device" Greg Kroah-Hartman
2008-04-30 23:57 ` [PATCH 11/11] klist: fix coding style errors in klist.h and klist.c Greg Kroah-Hartman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1209599870-22919-7-git-send-email-gregkh@suse.de \
--to=gregkh@suse.de \
--cc=kay.sievers@vrfy.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®