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) {
+		pr_err("remove_device_files: NULL super_block\n");
+		return -EINVAL;
+	}
+	if (sb->s_root == NULL) {
+		pr_err("remove_device_files: NULL s_root in super_block\n");
+		return -EINVAL;
+	}
 	dir = lookup_one_len_unlocked(unit, sb->s_root, strlen(unit));
