diff
 static int remove_device_files(struct super_block *sb,
 			       struct qib_devdata *dd)
 {
 	struct dentry *dir;
 	char unit[10];
 
 	snprintf(unit, sizeof(unit), "%u", dd->unit);
+	if (sb == NULL || sb->s_root == NULL) {
+		return -EINVAL;
+	}
 	dir = lookup_one_len_unlocked(unit, sb->s_root, strlen(unit));
