uevent: use add_uevent_var() instead of open coding it
Make use of add_uevent_var() instead of (often incorrectly) open coding it. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Eric Rannaud <eric.rannaud@gmail.com> Cc: Kay Sievers <kay.sievers@vrfy.org> Cc: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
bdc4960a0b
commit
bf62456eb9
@@ -86,31 +86,26 @@ mmc_bus_uevent(struct device *dev, char **envp, int num_envp, char *buf,
|
||||
{
|
||||
struct mmc_card *card = dev_to_mmc_card(dev);
|
||||
char ccc[13];
|
||||
int i = 0;
|
||||
int retval = 0, i = 0, length = 0;
|
||||
|
||||
#define add_env(fmt,val) \
|
||||
({ \
|
||||
int len, ret = -ENOMEM; \
|
||||
if (i < num_envp) { \
|
||||
envp[i++] = buf; \
|
||||
len = snprintf(buf, buf_size, fmt, val) + 1; \
|
||||
buf_size -= len; \
|
||||
buf += len; \
|
||||
if (buf_size >= 0) \
|
||||
ret = 0; \
|
||||
} \
|
||||
ret; \
|
||||
})
|
||||
#define add_env(fmt,val) do { \
|
||||
retval = add_uevent_var(envp, num_envp, &i, \
|
||||
buf, buf_size, &length, \
|
||||
fmt, val); \
|
||||
if (retval) \
|
||||
return retval; \
|
||||
} while (0);
|
||||
|
||||
for (i = 0; i < 12; i++)
|
||||
ccc[i] = card->csd.cmdclass & (1 << i) ? '1' : '0';
|
||||
ccc[12] = '\0';
|
||||
|
||||
i = 0;
|
||||
add_env("MMC_CCC=%s", ccc);
|
||||
add_env("MMC_MANFID=%06x", card->cid.manfid);
|
||||
add_env("MMC_NAME=%s", mmc_card_name(card));
|
||||
add_env("MMC_OEMID=%04x", card->cid.oemid);
|
||||
#undef add_env
|
||||
envp[i] = NULL;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Reference in New Issue
Block a user