block: move header for /proc/partitions to seq_start
The seq_start call is the better place for the header for the file, that way we don't have to be mucking in the class structure to try to figure out if this is the first partition or not. Cc: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Родитель
68c4d4a787
Коммит
66c64afec1
|
@ -305,6 +305,10 @@ static int find_start(struct device *dev, void *data)
|
||||||
static void *part_start(struct seq_file *part, loff_t *pos)
|
static void *part_start(struct seq_file *part, loff_t *pos)
|
||||||
{
|
{
|
||||||
struct device *dev;
|
struct device *dev;
|
||||||
|
loff_t n = *pos;
|
||||||
|
|
||||||
|
if (!n)
|
||||||
|
seq_puts(part, "major minor #blocks name\n\n");
|
||||||
|
|
||||||
mutex_lock(&block_class_lock);
|
mutex_lock(&block_class_lock);
|
||||||
dev = class_find_device(&block_class, NULL, (void *)pos, find_start);
|
dev = class_find_device(&block_class, NULL, (void *)pos, find_start);
|
||||||
|
@ -338,9 +342,6 @@ static int show_partition(struct seq_file *part, void *v)
|
||||||
int n;
|
int n;
|
||||||
char buf[BDEVNAME_SIZE];
|
char buf[BDEVNAME_SIZE];
|
||||||
|
|
||||||
if (&sgp->dev.node == block_class.devices.next)
|
|
||||||
seq_puts(part, "major minor #blocks name\n\n");
|
|
||||||
|
|
||||||
/* Don't show non-partitionable removeable devices or empty devices */
|
/* Don't show non-partitionable removeable devices or empty devices */
|
||||||
if (!get_capacity(sgp) ||
|
if (!get_capacity(sgp) ||
|
||||||
(sgp->minors == 1 && (sgp->flags & GENHD_FL_REMOVABLE)))
|
(sgp->minors == 1 && (sgp->flags & GENHD_FL_REMOVABLE)))
|
||||||
|
|
Загрузка…
Ссылка в новой задаче