diff options
Diffstat (limited to 'fs/udf')
-rw-r--r-- | fs/udf/balloc.c | 22 |
1 files changed, 8 insertions, 14 deletions
diff --git a/fs/udf/balloc.c b/fs/udf/balloc.c index 94d876a6d19a..58be702cb42d 100644 --- a/fs/udf/balloc.c +++ b/fs/udf/balloc.c | |||
@@ -840,23 +840,17 @@ void udf_free_blocks(struct super_block *sb, struct inode *inode, | |||
840 | struct udf_part_map *map = &UDF_SB(sb)->s_partmaps[partition]; | 840 | struct udf_part_map *map = &UDF_SB(sb)->s_partmaps[partition]; |
841 | 841 | ||
842 | if (map->s_partition_flags & UDF_PART_FLAG_UNALLOC_BITMAP) { | 842 | if (map->s_partition_flags & UDF_PART_FLAG_UNALLOC_BITMAP) { |
843 | return udf_bitmap_free_blocks(sb, inode, | 843 | udf_bitmap_free_blocks(sb, inode, map->s_uspace.s_bitmap, |
844 | map->s_uspace.s_bitmap, | 844 | bloc, offset, count); |
845 | bloc, offset, count); | ||
846 | } else if (map->s_partition_flags & UDF_PART_FLAG_UNALLOC_TABLE) { | 845 | } else if (map->s_partition_flags & UDF_PART_FLAG_UNALLOC_TABLE) { |
847 | return udf_table_free_blocks(sb, inode, | 846 | udf_table_free_blocks(sb, inode, map->s_uspace.s_table, |
848 | map->s_uspace.s_table, | 847 | bloc, offset, count); |
849 | bloc, offset, count); | ||
850 | } else if (map->s_partition_flags & UDF_PART_FLAG_FREED_BITMAP) { | 848 | } else if (map->s_partition_flags & UDF_PART_FLAG_FREED_BITMAP) { |
851 | return udf_bitmap_free_blocks(sb, inode, | 849 | udf_bitmap_free_blocks(sb, inode, map->s_fspace.s_bitmap, |
852 | map->s_fspace.s_bitmap, | 850 | bloc, offset, count); |
853 | bloc, offset, count); | ||
854 | } else if (map->s_partition_flags & UDF_PART_FLAG_FREED_TABLE) { | 851 | } else if (map->s_partition_flags & UDF_PART_FLAG_FREED_TABLE) { |
855 | return udf_table_free_blocks(sb, inode, | 852 | udf_table_free_blocks(sb, inode, map->s_fspace.s_table, |
856 | map->s_fspace.s_table, | 853 | bloc, offset, count); |
857 | bloc, offset, count); | ||
858 | } else { | ||
859 | return; | ||
860 | } | 854 | } |
861 | } | 855 | } |
862 | 856 | ||