Re: [PATCH 4/7] dm/md dependency tree in sysfs: bd_claim_by_disk

From: Andrew Morton
Date: Mon Mar 13 2006 - 21:29:46 EST


"Jun'ichi Nomura" <j-nomura@xxxxxxxxxxxxx> wrote:
>
> Variants of bd_claim_by_kobject which takes gendisk instead
> of kobject and do kobject_{get,put}(&gendisk->slave_dir).
>
> Signed-off-by: Jun'ichi Nomura <j-nomura@xxxxxxxxxxxxx>
>
> include/linux/genhd.h | 13 +++++++++++++
> 1 files changed, 13 insertions(+)
>
> --- linux-2.6.16-rc6.orig/include/linux/genhd.h 2006-03-11 17:12:55.000000000 -0500
> +++ linux-2.6.16-rc6/include/linux/genhd.h 2006-03-13 11:24:13.000000000 -0500
> @@ -421,6 +424,19 @@ static inline struct block_device *bdget
> return bdget(MKDEV(disk->major, disk->first_minor) + index);
> }
>
> +static inline int bd_claim_by_disk(struct block_device *bdev,
> + void *holder, struct gendisk *disk)
> +{
> + return bd_claim_by_kobject(bdev, holder, kobject_get(disk->slave_dir));
> +}
> +
> +static inline void bd_release_from_disk(struct block_device *bdev,
> + struct gendisk *disk)
> +{
> + bd_release_from_kobject(bdev, disk->slave_dir);
> + kobject_put(disk->slave_dir);
> +}
> +

genhd.h doesn't include kobject.h, so this only compiles due to luck.

An alternative to adding possibly risky nested header inclusions would be
to uninline these functions.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/