X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Flov%2Flproc_lov.c;h=80d1a2966da37048f46f87ca710042490d9d808f;hb=ea383222e031cdceffbdf2e3afab3b6d1fd53c8e;hp=e400faf227c812575a85340b53526073d222d531;hpb=f93ecd5e11e27c2f9859a24329b40de63cd6a56f;p=fs%2Flustre-release.git diff --git a/lustre/lov/lproc_lov.c b/lustre/lov/lproc_lov.c index e400faf..80d1a29 100644 --- a/lustre/lov/lproc_lov.c +++ b/lustre/lov/lproc_lov.c @@ -42,7 +42,7 @@ #include #include "lov_internal.h" -#ifdef LPROCFS +#ifdef CONFIG_PROC_FS static int lov_stripesize_seq_show(struct seq_file *m, void *v) { struct obd_device *dev = (struct obd_device *)m->private; @@ -54,7 +54,8 @@ static int lov_stripesize_seq_show(struct seq_file *m, void *v) return seq_printf(m, LPU64"\n", desc->ld_default_stripe_size); } -static ssize_t lov_stripesize_seq_write(struct file *file, const char *buffer, +static ssize_t lov_stripesize_seq_write(struct file *file, + const char __user *buffer, size_t count, loff_t *off) { struct obd_device *dev = ((struct seq_file *)file->private_data)->private; @@ -84,7 +85,8 @@ static int lov_stripeoffset_seq_show(struct seq_file *m, void *v) return seq_printf(m, LPU64"\n", desc->ld_default_stripe_offset); } -static ssize_t lov_stripeoffset_seq_write(struct file *file, const char *buffer, +static ssize_t lov_stripeoffset_seq_write(struct file *file, + const char __user *buffer, size_t count, loff_t *off) { struct obd_device *dev = ((struct seq_file *)file->private_data)->private; @@ -113,7 +115,8 @@ static int lov_stripetype_seq_show(struct seq_file *m, void *v) return seq_printf(m, "%u\n", desc->ld_pattern); } -static ssize_t lov_stripetype_seq_write(struct file *file, const char *buffer, +static ssize_t lov_stripetype_seq_write(struct file *file, + const char __user *buffer, size_t count, loff_t *off) { struct obd_device *dev = ((struct seq_file *)file->private_data)->private; @@ -143,7 +146,8 @@ static int lov_stripecount_seq_show(struct seq_file *m, void *v) (__s16)(desc->ld_default_stripe_count + 1) - 1); } -static ssize_t lov_stripecount_seq_write(struct file *file, const char *buffer, +static ssize_t lov_stripecount_seq_write(struct file *file, + const char __user *buffer, size_t count, loff_t *off) { struct obd_device *dev = ((struct seq_file *)file->private_data)->private; @@ -227,12 +231,12 @@ static void *lov_tgt_seq_next(struct seq_file *p, void *v, loff_t *pos) static int lov_tgt_seq_show(struct seq_file *p, void *v) { struct lov_tgt_desc *tgt = v; - return seq_printf(p, "%d: %s %sACTIVE\n", tgt->ltd_index, - obd_uuid2str(&tgt->ltd_uuid), - tgt->ltd_active ? "" : "IN"); + return seq_printf(p, "%d: %s %sACTIVE\n", tgt->ltd_index, + obd_uuid2str(&tgt->ltd_uuid), + tgt->ltd_active ? "" : "IN"); } -struct seq_operations lov_tgt_sops = { +static const struct seq_operations lov_tgt_sops = { .start = lov_tgt_seq_start, .stop = lov_tgt_seq_stop, .next = lov_tgt_seq_next, @@ -244,7 +248,10 @@ static int lov_target_seq_open(struct inode *inode, struct file *file) struct seq_file *seq; int rc; - LPROCFS_ENTRY_CHECK(PDE(inode)); + rc = LPROCFS_ENTRY_CHECK(inode); + if (rc < 0) + return rc; + rc = seq_open(file, &lov_tgt_sops); if (rc) return rc; @@ -262,22 +269,36 @@ LPROC_SEQ_FOPS_RO_TYPE(lov, kbytestotal); LPROC_SEQ_FOPS_RO_TYPE(lov, kbytesfree); LPROC_SEQ_FOPS_RO_TYPE(lov, kbytesavail); -struct lprocfs_seq_vars lprocfs_lov_obd_vars[] = { - { "uuid", &lov_uuid_fops }, - { "stripesize", &lov_stripesize_fops }, - { "stripeoffset", &lov_stripeoffset_fops }, - { "stripecount", &lov_stripecount_fops }, - { "stripetype", &lov_stripetype_fops }, - { "numobd", &lov_numobd_fops }, - { "activeobd", &lov_activeobd_fops }, - { "filestotal", &lov_filestotal_fops }, - { "filesfree", &lov_filesfree_fops }, - { "blocksize", &lov_blksize_fops }, - { "kbytestotal", &lov_kbytestotal_fops }, - { "kbytesfree", &lov_kbytesfree_fops }, - { "kbytesavail", &lov_kbytesavail_fops }, - { "desc_uuid", &lov_desc_uuid_fops }, - { 0 } +struct lprocfs_vars lprocfs_lov_obd_vars[] = { + { .name = "uuid", + .fops = &lov_uuid_fops }, + { .name = "stripesize", + .fops = &lov_stripesize_fops }, + { .name = "stripeoffset", + .fops = &lov_stripeoffset_fops }, + { .name = "stripecount", + .fops = &lov_stripecount_fops }, + { .name = "stripetype", + .fops = &lov_stripetype_fops }, + { .name = "numobd", + .fops = &lov_numobd_fops }, + { .name = "activeobd", + .fops = &lov_activeobd_fops }, + { .name = "filestotal", + .fops = &lov_filestotal_fops }, + { .name = "filesfree", + .fops = &lov_filesfree_fops }, + { .name = "blocksize", + .fops = &lov_blksize_fops }, + { .name = "kbytestotal", + .fops = &lov_kbytestotal_fops }, + { .name = "kbytesfree", + .fops = &lov_kbytesfree_fops }, + { .name = "kbytesavail", + .fops = &lov_kbytesavail_fops }, + { .name = "desc_uuid", + .fops = &lov_desc_uuid_fops }, + { NULL } }; struct file_operations lov_proc_target_fops = { @@ -287,4 +308,4 @@ struct file_operations lov_proc_target_fops = { .llseek = seq_lseek, .release = lprocfs_seq_release, }; -#endif /* LPROCFS */ +#endif /* CONFIG_PROC_FS */