#include <linux/module.h>
#include <linux/fs.h>
#include <linux/genhd.h>
+#include <linux/kdev_t.h>
#include <linux/kernel.h>
#include <linux/blkdev.h>
#include <linux/init.h>
#include <linux/buffer_head.h>
#include <linux/mutex.h>
-struct subsystem block_subsys;
+struct kset block_subsys;
static DEFINE_MUTEX(block_subsys_lock);
/*
/* temporary */
if (major == 0) {
for (index = ARRAY_SIZE(major_names)-1; index > 0; index--) {
- /*
- * Disallow the LANANA-assigned LOCAL/EXPERIMENTAL
- * majors
- */
- if ((60 <= index && index <= 63) ||
- (120 <= index && index <= 127) ||
- (240 <= index && index <= 254))
- continue;
if (major_names[index] == NULL)
break;
}
loff_t l = *pos;
mutex_lock(&block_subsys_lock);
- list_for_each(p, &block_subsys.kset.list)
+ list_for_each(p, &block_subsys.list)
if (!l--)
return list_entry(p, struct gendisk, kobj.entry);
return NULL;
{
struct list_head *p = ((struct gendisk *)v)->kobj.entry.next;
++*pos;
- return p==&block_subsys.kset.list ? NULL :
+ return p==&block_subsys.list ? NULL :
list_entry(p, struct gendisk, kobj.entry);
}
int n;
char buf[BDEVNAME_SIZE];
- if (&sgp->kobj.entry == block_subsys.kset.list.next)
+ if (&sgp->kobj.entry == block_subsys.list.next)
seq_puts(part, "major minor #blocks name\n\n");
/* Don't show non-partitionable removeable devices or empty devices */
struct list_head *p;
mutex_lock(&block_subsys_lock);
- list_for_each(p, &block_subsys.kset.list)
+ list_for_each(p, &block_subsys.list)
if (!k--)
return list_entry(p, struct gendisk, kobj.entry);
return NULL;
{
struct list_head *p = ((struct gendisk *)v)->kobj.entry.next;
++*pos;
- return p==&block_subsys.kset.list ? NULL :
+ return p==&block_subsys.list ? NULL :
list_entry(p, struct gendisk, kobj.entry);
}