mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	btrfs: make device scan less noisy
Print the message only when the device is seen for the first time. Signed-off-by: David Sterba <dsterba@suse.cz> Signed-off-by: Chris Mason <clm@fb.com>
This commit is contained in:
		
							parent
							
								
									ed55b6ac07
								
							
						
					
					
						commit
						60999ca4b4
					
				
					 1 changed files with 24 additions and 11 deletions
				
			
		| 
						 | 
				
			
			@ -448,6 +448,14 @@ static void pending_bios_fn(struct btrfs_work *work)
 | 
			
		|||
	run_scheduled_bios(device);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Add new device to list of registered devices
 | 
			
		||||
 *
 | 
			
		||||
 * Returns:
 | 
			
		||||
 * 1   - first time device is seen
 | 
			
		||||
 * 0   - device already known
 | 
			
		||||
 * < 0 - error
 | 
			
		||||
 */
 | 
			
		||||
static noinline int device_list_add(const char *path,
 | 
			
		||||
			   struct btrfs_super_block *disk_super,
 | 
			
		||||
			   u64 devid, struct btrfs_fs_devices **fs_devices_ret)
 | 
			
		||||
| 
						 | 
				
			
			@ -455,6 +463,7 @@ static noinline int device_list_add(const char *path,
 | 
			
		|||
	struct btrfs_device *device;
 | 
			
		||||
	struct btrfs_fs_devices *fs_devices;
 | 
			
		||||
	struct rcu_string *name;
 | 
			
		||||
	int ret = 0;
 | 
			
		||||
	u64 found_transid = btrfs_super_generation(disk_super);
 | 
			
		||||
 | 
			
		||||
	fs_devices = find_fsid(disk_super->fsid);
 | 
			
		||||
| 
						 | 
				
			
			@ -495,6 +504,7 @@ static noinline int device_list_add(const char *path,
 | 
			
		|||
		fs_devices->num_devices++;
 | 
			
		||||
		mutex_unlock(&fs_devices->device_list_mutex);
 | 
			
		||||
 | 
			
		||||
		ret = 1;
 | 
			
		||||
		device->fs_devices = fs_devices;
 | 
			
		||||
	} else if (!device->name || strcmp(device->name->str, path)) {
 | 
			
		||||
		name = rcu_string_strdup(path, GFP_NOFS);
 | 
			
		||||
| 
						 | 
				
			
			@ -513,7 +523,8 @@ static noinline int device_list_add(const char *path,
 | 
			
		|||
		fs_devices->latest_trans = found_transid;
 | 
			
		||||
	}
 | 
			
		||||
	*fs_devices_ret = fs_devices;
 | 
			
		||||
	return 0;
 | 
			
		||||
 | 
			
		||||
	return ret;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static struct btrfs_fs_devices *clone_fs_devices(struct btrfs_fs_devices *orig)
 | 
			
		||||
| 
						 | 
				
			
			@ -910,17 +921,19 @@ int btrfs_scan_one_device(const char *path, fmode_t flags, void *holder,
 | 
			
		|||
	transid = btrfs_super_generation(disk_super);
 | 
			
		||||
	total_devices = btrfs_super_num_devices(disk_super);
 | 
			
		||||
 | 
			
		||||
	if (disk_super->label[0]) {
 | 
			
		||||
		if (disk_super->label[BTRFS_LABEL_SIZE - 1])
 | 
			
		||||
			disk_super->label[BTRFS_LABEL_SIZE - 1] = '\0';
 | 
			
		||||
		printk(KERN_INFO "BTRFS: device label %s ", disk_super->label);
 | 
			
		||||
	} else {
 | 
			
		||||
		printk(KERN_INFO "BTRFS: device fsid %pU ", disk_super->fsid);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	printk(KERN_CONT "devid %llu transid %llu %s\n", devid, transid, path);
 | 
			
		||||
 | 
			
		||||
	ret = device_list_add(path, disk_super, devid, fs_devices_ret);
 | 
			
		||||
	if (ret > 0) {
 | 
			
		||||
		if (disk_super->label[0]) {
 | 
			
		||||
			if (disk_super->label[BTRFS_LABEL_SIZE - 1])
 | 
			
		||||
				disk_super->label[BTRFS_LABEL_SIZE - 1] = '\0';
 | 
			
		||||
			printk(KERN_INFO "BTRFS: device label %s ", disk_super->label);
 | 
			
		||||
		} else {
 | 
			
		||||
			printk(KERN_INFO "BTRFS: device fsid %pU ", disk_super->fsid);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		printk(KERN_CONT "devid %llu transid %llu %s\n", devid, transid, path);
 | 
			
		||||
		ret = 0;
 | 
			
		||||
	}
 | 
			
		||||
	if (!ret && fs_devices_ret)
 | 
			
		||||
		(*fs_devices_ret)->total_devices = total_devices;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue