diff options
-rw-r--r-- | MAINTAINERS | 2 | ||||
-rw-r--r-- | block/partitions/ldm.c | 11 | ||||
-rw-r--r-- | fs/ntfs/attrib.c | 6 | ||||
-rw-r--r-- | fs/ntfs/mft.c | 6 | ||||
-rw-r--r-- | fs/ntfs/super.c | 4 |
5 files changed, 12 insertions, 17 deletions
diff --git a/MAINTAINERS b/MAINTAINERS index 7fe9bb245bd3..0a96e80d4515 100644 --- a/MAINTAINERS +++ b/MAINTAINERS | |||
@@ -4685,7 +4685,7 @@ NTFS FILESYSTEM | |||
4685 | M: Anton Altaparmakov <anton@tuxera.com> | 4685 | M: Anton Altaparmakov <anton@tuxera.com> |
4686 | L: linux-ntfs-dev@lists.sourceforge.net | 4686 | L: linux-ntfs-dev@lists.sourceforge.net |
4687 | W: http://www.tuxera.com/ | 4687 | W: http://www.tuxera.com/ |
4688 | T: git git://git.kernel.org/pub/scm/linux/kernel/git/aia21/ntfs-2.6.git | 4688 | T: git git://git.kernel.org/pub/scm/linux/kernel/git/aia21/ntfs.git |
4689 | S: Supported | 4689 | S: Supported |
4690 | F: Documentation/filesystems/ntfs.txt | 4690 | F: Documentation/filesystems/ntfs.txt |
4691 | F: fs/ntfs/ | 4691 | F: fs/ntfs/ |
diff --git a/block/partitions/ldm.c b/block/partitions/ldm.c index bd8ae788f689..e507cfbd044e 100644 --- a/block/partitions/ldm.c +++ b/block/partitions/ldm.c | |||
@@ -2,7 +2,7 @@ | |||
2 | * ldm - Support for Windows Logical Disk Manager (Dynamic Disks) | 2 | * ldm - Support for Windows Logical Disk Manager (Dynamic Disks) |
3 | * | 3 | * |
4 | * Copyright (C) 2001,2002 Richard Russon <ldm@flatcap.org> | 4 | * Copyright (C) 2001,2002 Richard Russon <ldm@flatcap.org> |
5 | * Copyright (c) 2001-2007 Anton Altaparmakov | 5 | * Copyright (c) 2001-2012 Anton Altaparmakov |
6 | * Copyright (C) 2001,2002 Jakob Kemi <jakob.kemi@telia.com> | 6 | * Copyright (C) 2001,2002 Jakob Kemi <jakob.kemi@telia.com> |
7 | * | 7 | * |
8 | * Documentation is available at http://www.linux-ntfs.org/doku.php?id=downloads | 8 | * Documentation is available at http://www.linux-ntfs.org/doku.php?id=downloads |
@@ -1341,20 +1341,17 @@ found: | |||
1341 | ldm_error("REC value (%d) exceeds NUM value (%d)", rec, f->num); | 1341 | ldm_error("REC value (%d) exceeds NUM value (%d)", rec, f->num); |
1342 | return false; | 1342 | return false; |
1343 | } | 1343 | } |
1344 | |||
1345 | if (f->map & (1 << rec)) { | 1344 | if (f->map & (1 << rec)) { |
1346 | ldm_error ("Duplicate VBLK, part %d.", rec); | 1345 | ldm_error ("Duplicate VBLK, part %d.", rec); |
1347 | f->map &= 0x7F; /* Mark the group as broken */ | 1346 | f->map &= 0x7F; /* Mark the group as broken */ |
1348 | return false; | 1347 | return false; |
1349 | } | 1348 | } |
1350 | |||
1351 | f->map |= (1 << rec); | 1349 | f->map |= (1 << rec); |
1352 | 1350 | if (!rec) | |
1351 | memcpy(f->data, data, VBLK_SIZE_HEAD); | ||
1353 | data += VBLK_SIZE_HEAD; | 1352 | data += VBLK_SIZE_HEAD; |
1354 | size -= VBLK_SIZE_HEAD; | 1353 | size -= VBLK_SIZE_HEAD; |
1355 | 1354 | memcpy(f->data + VBLK_SIZE_HEAD + rec * size, data, size); | |
1356 | memcpy (f->data+rec*(size-VBLK_SIZE_HEAD)+VBLK_SIZE_HEAD, data, size); | ||
1357 | |||
1358 | return true; | 1355 | return true; |
1359 | } | 1356 | } |
1360 | 1357 | ||
diff --git a/fs/ntfs/attrib.c b/fs/ntfs/attrib.c index f14fde2b03d6..e0281992ddc3 100644 --- a/fs/ntfs/attrib.c +++ b/fs/ntfs/attrib.c | |||
@@ -1,7 +1,7 @@ | |||
1 | /** | 1 | /** |
2 | * attrib.c - NTFS attribute operations. Part of the Linux-NTFS project. | 2 | * attrib.c - NTFS attribute operations. Part of the Linux-NTFS project. |
3 | * | 3 | * |
4 | * Copyright (c) 2001-2007 Anton Altaparmakov | 4 | * Copyright (c) 2001-2012 Anton Altaparmakov and Tuxera Inc. |
5 | * Copyright (c) 2002 Richard Russon | 5 | * Copyright (c) 2002 Richard Russon |
6 | * | 6 | * |
7 | * This program/include file is free software; you can redistribute it and/or | 7 | * This program/include file is free software; you can redistribute it and/or |
@@ -345,10 +345,10 @@ LCN ntfs_attr_vcn_to_lcn_nolock(ntfs_inode *ni, const VCN vcn, | |||
345 | unsigned long flags; | 345 | unsigned long flags; |
346 | bool is_retry = false; | 346 | bool is_retry = false; |
347 | 347 | ||
348 | BUG_ON(!ni); | ||
348 | ntfs_debug("Entering for i_ino 0x%lx, vcn 0x%llx, %s_locked.", | 349 | ntfs_debug("Entering for i_ino 0x%lx, vcn 0x%llx, %s_locked.", |
349 | ni->mft_no, (unsigned long long)vcn, | 350 | ni->mft_no, (unsigned long long)vcn, |
350 | write_locked ? "write" : "read"); | 351 | write_locked ? "write" : "read"); |
351 | BUG_ON(!ni); | ||
352 | BUG_ON(!NInoNonResident(ni)); | 352 | BUG_ON(!NInoNonResident(ni)); |
353 | BUG_ON(vcn < 0); | 353 | BUG_ON(vcn < 0); |
354 | if (!ni->runlist.rl) { | 354 | if (!ni->runlist.rl) { |
@@ -469,9 +469,9 @@ runlist_element *ntfs_attr_find_vcn_nolock(ntfs_inode *ni, const VCN vcn, | |||
469 | int err = 0; | 469 | int err = 0; |
470 | bool is_retry = false; | 470 | bool is_retry = false; |
471 | 471 | ||
472 | BUG_ON(!ni); | ||
472 | ntfs_debug("Entering for i_ino 0x%lx, vcn 0x%llx, with%s ctx.", | 473 | ntfs_debug("Entering for i_ino 0x%lx, vcn 0x%llx, with%s ctx.", |
473 | ni->mft_no, (unsigned long long)vcn, ctx ? "" : "out"); | 474 | ni->mft_no, (unsigned long long)vcn, ctx ? "" : "out"); |
474 | BUG_ON(!ni); | ||
475 | BUG_ON(!NInoNonResident(ni)); | 475 | BUG_ON(!NInoNonResident(ni)); |
476 | BUG_ON(vcn < 0); | 476 | BUG_ON(vcn < 0); |
477 | if (!ni->runlist.rl) { | 477 | if (!ni->runlist.rl) { |
diff --git a/fs/ntfs/mft.c b/fs/ntfs/mft.c index 382857f9c7db..3014a36a255b 100644 --- a/fs/ntfs/mft.c +++ b/fs/ntfs/mft.c | |||
@@ -1,7 +1,7 @@ | |||
1 | /** | 1 | /** |
2 | * mft.c - NTFS kernel mft record operations. Part of the Linux-NTFS project. | 2 | * mft.c - NTFS kernel mft record operations. Part of the Linux-NTFS project. |
3 | * | 3 | * |
4 | * Copyright (c) 2001-2011 Anton Altaparmakov and Tuxera Inc. | 4 | * Copyright (c) 2001-2012 Anton Altaparmakov and Tuxera Inc. |
5 | * Copyright (c) 2002 Richard Russon | 5 | * Copyright (c) 2002 Richard Russon |
6 | * | 6 | * |
7 | * This program/include file is free software; you can redistribute it and/or | 7 | * This program/include file is free software; you can redistribute it and/or |
@@ -1367,7 +1367,7 @@ static int ntfs_mft_bitmap_extend_allocation_nolock(ntfs_volume *vol) | |||
1367 | ntfs_error(vol->sb, "Failed to merge runlists for mft " | 1367 | ntfs_error(vol->sb, "Failed to merge runlists for mft " |
1368 | "bitmap."); | 1368 | "bitmap."); |
1369 | if (ntfs_cluster_free_from_rl(vol, rl2)) { | 1369 | if (ntfs_cluster_free_from_rl(vol, rl2)) { |
1370 | ntfs_error(vol->sb, "Failed to dealocate " | 1370 | ntfs_error(vol->sb, "Failed to deallocate " |
1371 | "allocated cluster.%s", es); | 1371 | "allocated cluster.%s", es); |
1372 | NVolSetErrors(vol); | 1372 | NVolSetErrors(vol); |
1373 | } | 1373 | } |
@@ -1805,7 +1805,7 @@ static int ntfs_mft_data_extend_allocation_nolock(ntfs_volume *vol) | |||
1805 | ntfs_error(vol->sb, "Failed to merge runlists for mft data " | 1805 | ntfs_error(vol->sb, "Failed to merge runlists for mft data " |
1806 | "attribute."); | 1806 | "attribute."); |
1807 | if (ntfs_cluster_free_from_rl(vol, rl2)) { | 1807 | if (ntfs_cluster_free_from_rl(vol, rl2)) { |
1808 | ntfs_error(vol->sb, "Failed to dealocate clusters " | 1808 | ntfs_error(vol->sb, "Failed to deallocate clusters " |
1809 | "from the mft data attribute.%s", es); | 1809 | "from the mft data attribute.%s", es); |
1810 | NVolSetErrors(vol); | 1810 | NVolSetErrors(vol); |
1811 | } | 1811 | } |
diff --git a/fs/ntfs/super.c b/fs/ntfs/super.c index 5a4a8af5c406..f907611cca73 100644 --- a/fs/ntfs/super.c +++ b/fs/ntfs/super.c | |||
@@ -1,7 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * super.c - NTFS kernel super block handling. Part of the Linux-NTFS project. | 2 | * super.c - NTFS kernel super block handling. Part of the Linux-NTFS project. |
3 | * | 3 | * |
4 | * Copyright (c) 2001-2011 Anton Altaparmakov and Tuxera Inc. | 4 | * Copyright (c) 2001-2012 Anton Altaparmakov and Tuxera Inc. |
5 | * Copyright (c) 2001,2002 Richard Russon | 5 | * Copyright (c) 2001,2002 Richard Russon |
6 | * | 6 | * |
7 | * This program/include file is free software; you can redistribute it and/or | 7 | * This program/include file is free software; you can redistribute it and/or |
@@ -1239,7 +1239,6 @@ static int check_windows_hibernation_status(ntfs_volume *vol) | |||
1239 | { | 1239 | { |
1240 | MFT_REF mref; | 1240 | MFT_REF mref; |
1241 | struct inode *vi; | 1241 | struct inode *vi; |
1242 | ntfs_inode *ni; | ||
1243 | struct page *page; | 1242 | struct page *page; |
1244 | u32 *kaddr, *kend; | 1243 | u32 *kaddr, *kend; |
1245 | ntfs_name *name = NULL; | 1244 | ntfs_name *name = NULL; |
@@ -1290,7 +1289,6 @@ static int check_windows_hibernation_status(ntfs_volume *vol) | |||
1290 | "is not the system volume.", i_size_read(vi)); | 1289 | "is not the system volume.", i_size_read(vi)); |
1291 | goto iput_out; | 1290 | goto iput_out; |
1292 | } | 1291 | } |
1293 | ni = NTFS_I(vi); | ||
1294 | page = ntfs_map_page(vi->i_mapping, 0); | 1292 | page = ntfs_map_page(vi->i_mapping, 0); |
1295 | if (IS_ERR(page)) { | 1293 | if (IS_ERR(page)) { |
1296 | ntfs_error(vol->sb, "Failed to read from hiberfil.sys."); | 1294 | ntfs_error(vol->sb, "Failed to read from hiberfil.sys."); |