public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Jun'ichi Nomura" <j-nomura@ce.jp.nec.com>
To: Neil Brown <neilb@suse.de>, Alasdair Kergon <agk@redhat.com>,
	Lars Marowsky-Bree <lmb@suse.de>
Cc: device-mapper development <dm-devel@redhat.com>,
	linux-kernel@vger.kernel.org
Subject: [PATCH 3/3] sysfs representation of stacked devices (md)
Date: Fri, 17 Feb 2006 13:05:18 -0500	[thread overview]
Message-ID: <43F6105E.4040005@ce.jp.nec.com> (raw)
In-Reply-To: <43F60F31.1030507@ce.jp.nec.com>

[-- Attachment #1: Type: text/plain, Size: 129 bytes --]

This patch modifies md driver to create symlinks to/from
underlying devices.

-- 
Jun'ichi Nomura, NEC Solutions (America), Inc.

[-- Attachment #2: stacked-device-representation-in-sysfs-1-md.patch --]
[-- Type: text/x-patch, Size: 1703 bytes --]

Exporting stacked device relationship to sysfs (md)

Signed-off-by: Jun'ichi Nomura <j-nomura@ce.jp.nec.com>

--- linux-2.6.15.orig/include/linux/raid/md_k.h	2006-01-02 22:21:10.000000000 -0500
+++ linux-2.6.15/include/linux/raid/md_k.h	2006-02-16 15:36:22.000000000 -0500
@@ -155,6 +155,7 @@ struct mddev_s
 	struct gendisk			*gendisk;
 
 	struct kobject			kobj;
+	struct kobject			slave_dir;
 
 	/* Superblock information */
 	int				major_version,
md.c linux-2.6.15/drivers/md/md.c
--- linux-2.6.15.orig/drivers/md/md.c	2006-01-02 22:21:10.000000000 -0500
+++ linux-2.6.15/drivers/md/md.c	2006-02-16 17:44:49.000000000 -0500
@@ -182,6 +182,7 @@ static void mddev_put(mddev_t *mddev)
 		return;
 	if (!mddev->raid_disks && list_empty(&mddev->disks)) {
 		list_del(&mddev->all_mddevs);
+		stackdev_clear(&mddev->slave_dir);
 		blk_put_queue(mddev->queue);
 		kobject_unregister(&mddev->kobj);
 	}
@@ -1226,6 +1227,7 @@ static int bind_rdev_to_array(mdk_rdev_t
 	else
 		ko = &rdev->bdev->bd_disk->kobj;
 	sysfs_create_link(&rdev->kobj, ko, "block");
+	stackdev_link(rdev->bdev, &mddev->slave_dir, &mddev->gendisk->kobj);
 	return 0;
 }
 
@@ -1236,6 +1238,8 @@ static void unbind_rdev_from_array(mdk_r
 		MD_BUG();
 		return;
 	}
+	stackdev_unlink(rdev->bdev, &rdev->mddev->slave_dir,
+			&rdev->mddev->gendisk->kobj);
 	list_del_init(&rdev->same_set);
 	printk(KERN_INFO "md: unbind<%s>\n", bdevname(rdev->bdev,b));
 	rdev->mddev = NULL;
@@ -1924,6 +1928,7 @@ static struct kobject *md_probe(dev_t de
 	snprintf(mddev->kobj.name, KOBJ_NAME_LEN, "%s", "md");
 	mddev->kobj.ktype = &md_ktype;
 	kobject_register(&mddev->kobj);
+	stackdev_init(&mddev->slave_dir, &mddev->gendisk->kobj);
 	return NULL;
 }

  parent reply	other threads:[~2006-02-17 18:04 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-02-17 18:00 [PATCH 0/3] sysfs representation of stacked devices (dm/md) Jun'ichi Nomura
2006-02-17 18:01 ` [PATCH 1/3] sysfs representation of stacked devices (dm/md common) Jun'ichi Nomura
2006-02-17 18:44   ` Alasdair G Kergon
2006-02-18  1:03     ` Jun'ichi Nomura
2006-02-18 19:50       ` Alasdair G Kergon
2006-02-21 15:33         ` Jun'ichi Nomura
2006-02-21 15:52           ` Alasdair G Kergon
2006-02-17 18:03 ` [PATCH 2/3] sysfs representation of stacked devices (dm) Jun'ichi Nomura
2006-02-17 18:05 ` Jun'ichi Nomura [this message]
2006-02-17 19:42 ` [PATCH 0/3] sysfs representation of stacked devices (dm/md) Alasdair G Kergon
2006-02-18  1:21   ` Jun'ichi Nomura
2006-02-18 19:53     ` Alasdair G Kergon
2006-02-21 15:34       ` Jun'ichi Nomura
2006-02-18  6:06   ` Kyle Moffett
2006-02-19 22:04 ` Neil Brown

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=43F6105E.4040005@ce.jp.nec.com \
    --to=j-nomura@ce.jp.nec.com \
    --cc=agk@redhat.com \
    --cc=dm-devel@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lmb@suse.de \
    --cc=neilb@suse.de \
    /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