* [PATCH] add removeable sysfs block device attribute
@ 2004-07-13 21:07 Olaf Hering
0 siblings, 0 replies; only message in thread
From: Olaf Hering @ 2004-07-13 21:07 UTC (permalink / raw)
To: Andrew Morton, linux-kernel; +Cc: Patrick Mansfield, Jens Axboe
This patch adds a /block/*/removeable sysfs attribute. A value of 1
indicates the media can change anytime. This is a hint for userland
to poll such devices for possible media changes, and leave all others alone.
There is currently no way to see if a connected usb-storage device is a
disk or a card reader. It will also show 1 for CD and ZIP drives.
It was done by Patrick Mansfield a while ago. I can probably not
sigh-off his work. ;)
diff -purN linux-2.6.8-rc1-bk2/drivers/block/genhd.c linux-2.6.8-rc1-bk2.removeable_media/drivers/block/genhd.c
--- linux-2.6.8-rc1-bk2/drivers/block/genhd.c 2004-07-13 20:14:17.326681737 +0000
+++ linux-2.6.8-rc1-bk2.removeable_media/drivers/block/genhd.c 2004-07-13 20:47:52.215560764 +0000
@@ -352,6 +352,12 @@ static ssize_t disk_range_read(struct ge
{
return sprintf(page, "%d\n", disk->minors);
}
+static ssize_t disk_removable_read(struct gendisk * disk, char *page)
+{
+ return sprintf(page, "%d\n",
+ (disk->flags & GENHD_FL_REMOVABLE ? 1 : 0));
+
+}
static ssize_t disk_size_read(struct gendisk * disk, char *page)
{
return sprintf(page, "%llu\n", (unsigned long long)get_capacity(disk));
@@ -384,6 +390,10 @@ static struct disk_attribute disk_attr_r
.attr = {.name = "range", .mode = S_IRUGO },
.show = disk_range_read
};
+static struct disk_attribute disk_attr_removable = {
+ .attr = {.name = "removable", .mode = S_IRUGO },
+ .show = disk_removable_read
+};
static struct disk_attribute disk_attr_size = {
.attr = {.name = "size", .mode = S_IRUGO },
.show = disk_size_read
@@ -396,6 +406,7 @@ static struct disk_attribute disk_attr_s
static struct attribute * default_attrs[] = {
&disk_attr_dev.attr,
&disk_attr_range.attr,
+ &disk_attr_removable.attr,
&disk_attr_size.attr,
&disk_attr_stat.attr,
NULL,
--
USB is for mice, FireWire is for men!
sUse lINUX ag, nÜRNBERG
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2004-07-13 21:10 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-07-13 21:07 [PATCH] add removeable sysfs block device attribute Olaf Hering
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.