Lines Matching defs:dev
34 int get_sysfs_path(struct device_info *dev, const char *attr,
44 if (stat(dev->path, &statbuf) < 0)
47 snprintf(str, sizeof(str), "/sys/dev/block/%d:%d",
55 "/sys/dev/block/%s", buf);
75 * e.g.: /sys/dev/block/.../sda/sda1 -> /sys/dev/block/.../sda
92 struct device_info *dev = c.devices + i;
98 res = get_sysfs_path(dev, "queue/zoned", str, sizeof(str));
101 dev->zoned_model = F2FS_ZONED_NONE;
116 dev->zoned_model = F2FS_ZONED_NONE;
134 dev->zoned_model = F2FS_ZONED_NONE;
137 dev->zoned_model = F2FS_ZONED_HA;
140 dev->zoned_model = F2FS_ZONED_HM;
149 uint32_t f2fs_get_zone_chunk_sectors(struct device_info *dev)
156 res = get_sysfs_path(dev, "queue/chunk_sectors", str, sizeof(str));
180 struct device_info *dev = c.devices + i;
184 dev->zone_blocks = 0;
186 sectors = f2fs_get_zone_chunk_sectors(dev);
190 dev->zone_size = sectors << SECTOR_SHIFT;
191 dev->zone_blocks = sectors >> (F2FS_BLKSIZE_BITS - SECTOR_SHIFT);
192 sectors = dev->zone_size / c.sector_size;
198 dev->nr_zones = dev->total_sectors / sectors;
199 if (dev->total_sectors % sectors)
200 dev->nr_zones++;
242 struct device_info *dev = c.devices + j;
246 uint64_t total_sectors = (dev->total_sectors * c.sector_size)
264 ret = ioctl(dev->fd, BLKREPORTZONE, rep);
295 struct device_info *dev = c.devices + j;
310 dev->zone_cap_blocks = malloc(dev->nr_zones * sizeof(size_t));
311 if (!dev->zone_cap_blocks) {
315 memset(dev->zone_cap_blocks, 0, (dev->nr_zones * sizeof(size_t)));
317 dev->nr_rnd_zones = 0;
319 total_sectors = (dev->total_sectors * c.sector_size) >> 9;
329 ret = ioctl(dev->fd, BLKREPORTZONE, rep);
348 dev->nr_rnd_zones++;
361 dev->zone_cap_blocks[n] =
381 dev->zone_cap_blocks[n] =
395 (unsigned long long)dev->total_sectors);
400 if (n != dev->nr_zones) {
402 dev->nr_zones, n);
414 if (j == 0 && dev->zoned_model == F2FS_ZONED_HM &&
415 !dev->nr_rnd_zones) {
427 struct device_info *dev = c.devices + i;
437 ret = ioctl(dev->fd, BLKRESETZONE, &range);
448 struct device_info *dev = c.devices + j;
464 total_sectors = (dev->total_sectors * c.sector_size) >> 9;
473 ret = ioctl(dev->fd, BLKREPORTZONE, rep);
490 ret = ioctl(dev->fd, BLKRESETZONE, &range);
557 struct device_info *dev = c.devices + i;
560 dev->zoned_model = F2FS_ZONED_NONE;
566 struct device_info *dev = c.devices + i;
569 dev->nr_zones = 0;
570 dev->zone_blocks = 0;
571 dev->zoned_model = F2FS_ZONED_NONE;