| .. | .. |
|---|
| 69 | 69 | } |
|---|
| 70 | 70 | sbi->map_sectors = ((need_map_size - 1) >> |
|---|
| 71 | 71 | (sb->s_blocksize_bits)) + 1; |
|---|
| 72 | | - sbi->vol_amap = kmalloc_array(sbi->map_sectors, |
|---|
| 72 | + sbi->vol_amap = kvmalloc_array(sbi->map_sectors, |
|---|
| 73 | 73 | sizeof(struct buffer_head *), GFP_KERNEL); |
|---|
| 74 | 74 | if (!sbi->vol_amap) |
|---|
| 75 | 75 | return -ENOMEM; |
|---|
| .. | .. |
|---|
| 84 | 84 | while (j < i) |
|---|
| 85 | 85 | brelse(sbi->vol_amap[j++]); |
|---|
| 86 | 86 | |
|---|
| 87 | | - kfree(sbi->vol_amap); |
|---|
| 87 | + kvfree(sbi->vol_amap); |
|---|
| 88 | 88 | sbi->vol_amap = NULL; |
|---|
| 89 | 89 | return -EIO; |
|---|
| 90 | 90 | } |
|---|
| .. | .. |
|---|
| 138 | 138 | for (i = 0; i < sbi->map_sectors; i++) |
|---|
| 139 | 139 | __brelse(sbi->vol_amap[i]); |
|---|
| 140 | 140 | |
|---|
| 141 | | - kfree(sbi->vol_amap); |
|---|
| 141 | + kvfree(sbi->vol_amap); |
|---|
| 142 | 142 | } |
|---|
| 143 | 143 | |
|---|
| 144 | 144 | int exfat_set_bitmap(struct inode *inode, unsigned int clu, bool sync) |
|---|