Lines Matching defs:fsopt

254 static int namespace_equals(struct ceph_mount_options *fsopt,
257 return !(fsopt->mds_namespace &&
258 (strlen(fsopt->mds_namespace) != len ||
259 strncmp(fsopt->mds_namespace, namespace, len)));
267 struct ceph_mount_options *fsopt = pctx->opts;
277 fsopt->new_dev_syntax = false;
287 struct ceph_mount_options *fsopt = pctx->opts;
310 if (!namespace_equals(fsopt, fs_name_start, len))
312 kfree(fsopt->mds_namespace);
313 fsopt->mds_namespace = kstrndup(fs_name_start, len, GFP_KERNEL);
314 if (!fsopt->mds_namespace)
316 dout("file system (mds namespace) '%s'\n", fsopt->mds_namespace);
318 fsopt->new_dev_syntax = true;
343 struct ceph_mount_options *fsopt = pctx->opts;
357 kfree(fsopt->server_path);
358 fsopt->server_path = kstrdup(dev_name_end, GFP_KERNEL);
359 if (!fsopt->server_path)
362 canonicalize_path(fsopt->server_path);
372 if (fsopt->server_path)
373 dout("server path '%s'\n", fsopt->server_path);
395 struct ceph_mount_options *fsopt = pctx->opts;
397 kfree(fsopt->mon_addr);
398 fsopt->mon_addr = param->string;
401 return ceph_parse_mon_ips(fsopt->mon_addr, strlen(fsopt->mon_addr),
409 struct ceph_mount_options *fsopt = pctx->opts;
425 kfree(fsopt->snapdir_name);
426 fsopt->snapdir_name = param->string;
430 if (!namespace_equals(fsopt, param->string, strlen(param->string)))
432 kfree(fsopt->mds_namespace);
433 fsopt->mds_namespace = param->string;
439 fsopt->flags &= ~CEPH_MOUNT_OPT_CLEANRECOVER;
441 fsopt->flags |= CEPH_MOUNT_OPT_CLEANRECOVER;
455 fsopt->wsize = ALIGN(result.uint_32, PAGE_SIZE);
461 fsopt->rsize = ALIGN(result.uint_32, PAGE_SIZE);
464 fsopt->rasize = ALIGN(result.uint_32, PAGE_SIZE);
469 fsopt->caps_wanted_delay_min = result.uint_32;
474 fsopt->caps_wanted_delay_max = result.uint_32;
479 fsopt->caps_max = result.int_32;
484 fsopt->max_readdir = result.uint_32;
489 fsopt->max_readdir_bytes = result.uint_32;
494 fsopt->congestion_kb = result.uint_32;
498 fsopt->flags |= CEPH_MOUNT_OPT_DIRSTAT;
500 fsopt->flags &= ~CEPH_MOUNT_OPT_DIRSTAT;
504 fsopt->flags |= CEPH_MOUNT_OPT_RBYTES;
506 fsopt->flags &= ~CEPH_MOUNT_OPT_RBYTES;
510 fsopt->flags &= ~CEPH_MOUNT_OPT_NOASYNCREADDIR;
512 fsopt->flags |= CEPH_MOUNT_OPT_NOASYNCREADDIR;
516 fsopt->flags |= CEPH_MOUNT_OPT_DCACHE;
518 fsopt->flags &= ~CEPH_MOUNT_OPT_DCACHE;
522 fsopt->flags |= CEPH_MOUNT_OPT_INO32;
524 fsopt->flags &= ~CEPH_MOUNT_OPT_INO32;
529 kfree(fsopt->fscache_uniq);
530 fsopt->fscache_uniq = NULL;
532 fsopt->flags &= ~CEPH_MOUNT_OPT_FSCACHE;
534 fsopt->flags |= CEPH_MOUNT_OPT_FSCACHE;
535 fsopt->fscache_uniq = param->string;
544 fsopt->flags &= ~CEPH_MOUNT_OPT_NOPOOLPERM;
546 fsopt->flags |= CEPH_MOUNT_OPT_NOPOOLPERM;
550 fsopt->flags &= ~CEPH_MOUNT_OPT_MOUNTWAIT;
552 fsopt->flags |= CEPH_MOUNT_OPT_MOUNTWAIT;
556 fsopt->flags &= ~CEPH_MOUNT_OPT_NOQUOTADF;
558 fsopt->flags |= CEPH_MOUNT_OPT_NOQUOTADF;
562 fsopt->flags &= ~CEPH_MOUNT_OPT_NOCOPYFROM;
564 fsopt->flags |= CEPH_MOUNT_OPT_NOCOPYFROM;
579 fsopt->flags &= ~CEPH_MOUNT_OPT_ASYNC_DIROPS;
581 fsopt->flags |= CEPH_MOUNT_OPT_ASYNC_DIROPS;
585 fsopt->flags |= CEPH_MOUNT_OPT_NOPAGECACHE;
587 fsopt->flags &= ~CEPH_MOUNT_OPT_NOPAGECACHE;
591 fsopt->flags &= ~CEPH_MOUNT_OPT_SPARSEREAD;
593 fsopt->flags |= CEPH_MOUNT_OPT_SPARSEREAD;
597 fscrypt_free_dummy_policy(&fsopt->dummy_enc_policy);
599 &fsopt->dummy_enc_policy);
691 struct ceph_mount_options *fsopt = fsc->mount_options;
707 if (fsopt->flags & CEPH_MOUNT_OPT_DIRSTAT)
709 if ((fsopt->flags & CEPH_MOUNT_OPT_RBYTES))
711 if (fsopt->flags & CEPH_MOUNT_OPT_NOASYNCREADDIR)
713 if ((fsopt->flags & CEPH_MOUNT_OPT_DCACHE) == 0)
715 if (fsopt->flags & CEPH_MOUNT_OPT_INO32)
717 if (fsopt->flags & CEPH_MOUNT_OPT_FSCACHE) {
718 seq_show_option(m, "fsc", fsopt->fscache_uniq);
720 if (fsopt->flags & CEPH_MOUNT_OPT_NOPOOLPERM)
722 if (fsopt->flags & CEPH_MOUNT_OPT_NOQUOTADF)
732 if ((fsopt->flags & CEPH_MOUNT_OPT_NOCOPYFROM) == 0)
736 if (fsopt->mds_namespace && !fsopt->new_dev_syntax)
737 seq_show_option(m, "mds_namespace", fsopt->mds_namespace);
739 if (fsopt->mon_addr)
740 seq_printf(m, ",mon_addr=%s", fsopt->mon_addr);
742 if (fsopt->flags & CEPH_MOUNT_OPT_CLEANRECOVER)
745 if (!(fsopt->flags & CEPH_MOUNT_OPT_ASYNC_DIROPS))
747 if (fsopt->flags & CEPH_MOUNT_OPT_NOPAGECACHE)
749 if (fsopt->flags & CEPH_MOUNT_OPT_SPARSEREAD)
754 if (fsopt->wsize != CEPH_MAX_WRITE_SIZE)
755 seq_printf(m, ",wsize=%u", fsopt->wsize);
756 if (fsopt->rsize != CEPH_MAX_READ_SIZE)
757 seq_printf(m, ",rsize=%u", fsopt->rsize);
758 if (fsopt->rasize != CEPH_RASIZE_DEFAULT)
759 seq_printf(m, ",rasize=%u", fsopt->rasize);
760 if (fsopt->congestion_kb != default_congestion_kb())
761 seq_printf(m, ",write_congestion_kb=%u", fsopt->congestion_kb);
762 if (fsopt->caps_max)
763 seq_printf(m, ",caps_max=%d", fsopt->caps_max);
764 if (fsopt->caps_wanted_delay_min != CEPH_CAPS_WANTED_DELAY_MIN_DEFAULT)
766 fsopt->caps_wanted_delay_min);
767 if (fsopt->caps_wanted_delay_max != CEPH_CAPS_WANTED_DELAY_MAX_DEFAULT)
769 fsopt->caps_wanted_delay_max);
770 if (fsopt->max_readdir != CEPH_MAX_READDIR_DEFAULT)
771 seq_printf(m, ",readdir_max_entries=%u", fsopt->max_readdir);
772 if (fsopt->max_readdir_bytes != CEPH_MAX_READDIR_BYTES_DEFAULT)
773 seq_printf(m, ",readdir_max_bytes=%u", fsopt->max_readdir_bytes);
774 if (strcmp(fsopt->snapdir_name, CEPH_SNAPDIRNAME_DEFAULT))
775 seq_show_option(m, "snapdirname", fsopt->snapdir_name);
804 * Success or not, this function consumes @fsopt and @opt.
806 static struct ceph_fs_client *create_fs_client(struct ceph_mount_options *fsopt,
828 if (!fsopt->mds_namespace) {
836 fsc->mount_options = fsopt;
875 destroy_mount_options(fsopt);
1096 struct ceph_mount_options *fsopt)
1100 if (!fscrypt_is_dummy_policy_set(&fsopt->dummy_enc_policy))
1106 if (fscrypt_dummy_policies_equal(&fsopt->dummy_enc_policy,
1113 /* Also make sure fsopt doesn't contain a conflicting value. */
1115 if (fscrypt_dummy_policies_equal(&fsopt->dummy_enc_policy,
1122 fsc->fsc_dummy_enc_policy = fsopt->dummy_enc_policy;
1123 memset(&fsopt->dummy_enc_policy, 0, sizeof(fsopt->dummy_enc_policy));
1131 struct ceph_mount_options *fsopt)
1233 struct ceph_mount_options *fsopt = new->mount_options;
1240 if (compare_mount_options(fsopt, opt, fsc)) {
1293 struct ceph_mount_options *fsopt = pctx->opts;
1305 if (fsopt->new_dev_syntax && !fsopt->mon_addr)
1386 struct ceph_mount_options *fsopt = pctx->opts;
1390 err = ceph_apply_test_dummy_encryption(sb, fc, fsopt);
1394 if (fsopt->flags & CEPH_MOUNT_OPT_ASYNC_DIROPS)
1399 if (fsopt->flags & CEPH_MOUNT_OPT_SPARSEREAD)
1404 if (strcmp_null(fsc->mount_options->mon_addr, fsopt->mon_addr)) {
1406 fsc->mount_options->mon_addr = fsopt->mon_addr;
1407 fsopt->mon_addr = NULL;
1429 struct ceph_mount_options *fsopt;
1443 fsopt = pctx->opts;
1444 fsopt->flags = CEPH_MOUNT_OPT_DEFAULT;
1446 fsopt->wsize = CEPH_MAX_WRITE_SIZE;
1447 fsopt->rsize = CEPH_MAX_READ_SIZE;
1448 fsopt->rasize = CEPH_RASIZE_DEFAULT;
1449 fsopt->snapdir_name = kstrdup(CEPH_SNAPDIRNAME_DEFAULT, GFP_KERNEL);
1450 if (!fsopt->snapdir_name)
1453 fsopt->caps_wanted_delay_min = CEPH_CAPS_WANTED_DELAY_MIN_DEFAULT;
1454 fsopt->caps_wanted_delay_max = CEPH_CAPS_WANTED_DELAY_MAX_DEFAULT;
1455 fsopt->max_readdir = CEPH_MAX_READDIR_DEFAULT;
1456 fsopt->max_readdir_bytes = CEPH_MAX_READDIR_BYTES_DEFAULT;
1457 fsopt->congestion_kb = default_congestion_kb();