Btrfs: section mismatch warnings
authorChristian Hesse <list@eworm.de>
Tue, 11 Dec 2007 14:25:06 +0000 (09:25 -0500)
committerChris Mason <chris.mason@oracle.com>
Thu, 25 Sep 2008 15:03:58 +0000 (11:03 -0400)
--Boundary-00=_CcOWHFYK4T+JwSj
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Hello everybody,

compiling btrfs into the kernel results in section mismatch warnings. __exit
functions are called where they are not allowed to. The attached patch fixes
this for me. Not sure if it is correct though.

Signed-off-by: Christian Hesse <mail@earthworm.de>
--
Regards,
Chris

--Boundary-00=_CcOWHFYK4T+JwSj
Content-Type: text/x-diff; charset="iso-8859-1";
name="btrfs-section_mismatches.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="btrfs-section_mismatches.patch"

Signed-off-by: Chris Mason <chris.mason@oracle.com>
fs/btrfs/extent_map.c
fs/btrfs/extent_map.h
fs/btrfs/transaction.c

index 06e437723dc367940619a258a405413d1190b463..8326a18413ff002bcbdfa864cdce5e9b47b7e01c 100644 (file)
@@ -69,7 +69,7 @@ free_map_cache:
        return -ENOMEM;
 }
 
-void __exit extent_map_exit(void)
+void extent_map_exit(void)
 {
        struct extent_state *state;
 
index 2ffc0c76338cbd8636e297092e38d8d8aeb0174d..6e572d3e892473683b90e99f713dc9977a41bbe1 100644 (file)
@@ -112,7 +112,7 @@ void free_extent_map(struct extent_map *em);
 int extent_read_full_page(struct extent_map_tree *tree, struct page *page,
                          get_extent_t *get_extent);
 int __init extent_map_init(void);
-void __exit extent_map_exit(void);
+void extent_map_exit(void);
 
 u64 count_range_bits(struct extent_map_tree *tree,
                     u64 *start, u64 max_bytes, unsigned long bits);
index 4af1c0dab7f8baa1c8c47f0d9588c57e4bc7aeb8..0229e69bd2ff91fd0b9b39f5c6cf7804c2115e64 100644 (file)
@@ -666,7 +666,7 @@ void __init btrfs_init_transaction_sys(void)
        trans_wq = create_workqueue("btrfs");
 }
 
-void __exit btrfs_exit_transaction_sys(void)
+void btrfs_exit_transaction_sys(void)
 {
        destroy_workqueue(trans_wq);
 }