Re: [PATCH 4/4] Add MMC Password Protection (lock/unlock) support V8: mmc_sysfs.diff

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


On Mon, Dec 04, 2006 at 04:13:39PM -0400, Anderson Briglia wrote:
> Implement MMC password force erase, remove password, change password,
> unlock card and assign password operations. It uses the sysfs mechanism
> to send commands to the MMC subsystem. 

Sorry, this is still unsuitable for mainline.

> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar <at>>
> Signed-off-by: Anderson Lizardo <anderson.lizardo <at>>
> Signed-off-by: Anderson Briglia <anderson.briglia <at>>

Please use the standard format, do not obfuscate these.  The kernel
community utterly abhors this.

> +/*
> + * implement MMC password functions: force erase, remove password, change
> + * password, unlock card and assign password.
> + */
> +static ssize_t
> +mmc_lockable_store(struct device *dev, struct device_attribute *att,
> +	const char *data, size_t len)
> +{
> +	struct mmc_card *card = dev_to_mmc_card(dev);
> +	int err = 0;

Where is the check that the host can do byte-wise data transfers?

> +
> +	err = mmc_card_claim_host(card);
> +	if (err != MMC_ERR_NONE)
> +		return -EINVAL;
> +
> +	if (!mmc_card_lockable(card))
> +		return -EINVAL;

So writing to this file with a card which is not lockable results in
deadlocking the host.  Suggest you do as other subsystems do and have
one exit path, and use gotos, setting the appropriate return code in a
variable.  If everything goes via that it forces you to think about
where you want to jump to in each case.

Russell King
 Linux kernel    2.6 ARM Linux   -
 maintainer of:
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at
Please read the FAQ at

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux