History

md: move most content from md.h to md_k.h

The extern function definitions are kernel-internal definitions, so they belong in md_k.h The MD_*_VERSION values could reasonably go in a number of places, but md_u.h seems most reasonable. This leaves almost nothing in md.h. It will go soon.

NeilBrown committed 17 years ago

Commit 92022951 parent 8b2b5c23 files · +40 −40Browse files

Unified · Split

3 files
  1. include/linux/raid/md.h +0 −40
  2. include/linux/raid/md_k.h +22 −0
  3. include/linux/raid/md_u.h +18 −0
include/linux/raid/md.h+0−40
@@ -34,46 +34,6 @@ · 33 unmodified lines
34 34
35#ifdef CONFIG_MD35#ifdef CONFIG_MD
36 36
37/*
38 * Different major versions are not compatible.
39 * Different minor versions are only downward compatible.
40 * Different patchlevel versions are downward and upward compatible.
41 */
42#define MD_MAJOR_VERSION 0
43#define MD_MINOR_VERSION 90
44/*
45 * MD_PATCHLEVEL_VERSION indicates kernel functionality.
46 * >=1 means different superblock formats are selectable using SET_ARRAY_INFO
47 * and major_version/minor_version accordingly
48 * >=2 means that Internal bitmaps are supported by setting MD_SB_BITMAP_PRESENT
49 * in the super status byte
50 * >=3 means that bitmap superblock version 4 is supported, which uses
51 * little-ending representation rather than host-endian
52 */
53#define MD_PATCHLEVEL_VERSION 3
54
55extern int register_md_personality(struct mdk_personality *p);
56extern int unregister_md_personality(struct mdk_personality *p);
57extern mdk_thread_t * md_register_thread(void (*run) (mddev_t *mddev),
58 mddev_t *mddev, const char *name);
59extern void md_unregister_thread(mdk_thread_t *thread);
60extern void md_wakeup_thread(mdk_thread_t *thread);
61extern void md_check_recovery(mddev_t *mddev);
62extern void md_write_start(mddev_t *mddev, struct bio *bi);
63extern void md_write_end(mddev_t *mddev);
64extern void md_done_sync(mddev_t *mddev, int blocks, int ok);
65extern void md_error(mddev_t *mddev, mdk_rdev_t *rdev);
66
67extern void md_super_write(mddev_t *mddev, mdk_rdev_t *rdev,
68 sector_t sector, int size, struct page *page);
69extern void md_super_wait(mddev_t *mddev);
70extern int sync_page_io(struct block_device *bdev, sector_t sector, int size,
71 struct page *page, int rw);
72extern void md_do_sync(mddev_t *mddev);
73extern void md_new_event(mddev_t *mddev);
74extern int md_allow_write(mddev_t *mddev);
75extern void md_wait_for_blocked_rdev(mdk_rdev_t *rdev, mddev_t *mddev);
76
77#endif /* CONFIG_MD */37#endif /* CONFIG_MD */
78#endif 38#endif
79 39
include/linux/raid/md_k.h+22−0
@@ -390,3 +390,25 @@ static inline void safe_put_page(struct page *p) · 389 unmodified lines
390#endif /* CONFIG_BLOCK */390#endif /* CONFIG_BLOCK */
391#endif391#endif
392 392
393
394extern int register_md_personality(struct mdk_personality *p);
395extern int unregister_md_personality(struct mdk_personality *p);
396extern mdk_thread_t * md_register_thread(void (*run) (mddev_t *mddev),
397 mddev_t *mddev, const char *name);
398extern void md_unregister_thread(mdk_thread_t *thread);
399extern void md_wakeup_thread(mdk_thread_t *thread);
400extern void md_check_recovery(mddev_t *mddev);
401extern void md_write_start(mddev_t *mddev, struct bio *bi);
402extern void md_write_end(mddev_t *mddev);
403extern void md_done_sync(mddev_t *mddev, int blocks, int ok);
404extern void md_error(mddev_t *mddev, mdk_rdev_t *rdev);
405
406extern void md_super_write(mddev_t *mddev, mdk_rdev_t *rdev,
407 sector_t sector, int size, struct page *page);
408extern void md_super_wait(mddev_t *mddev);
409extern int sync_page_io(struct block_device *bdev, sector_t sector, int size,
410 struct page *page, int rw);
411extern void md_do_sync(mddev_t *mddev);
412extern void md_new_event(mddev_t *mddev);
413extern int md_allow_write(mddev_t *mddev);
414extern void md_wait_for_blocked_rdev(mdk_rdev_t *rdev, mddev_t *mddev);
include/linux/raid/md_u.h+18−0
@@ -15,6 +15,24 @@ · 14 unmodified lines
15#ifndef _MD_U_H15#ifndef _MD_U_H
16#define _MD_U_H16#define _MD_U_H
17 17
18/*
19 * Different major versions are not compatible.
20 * Different minor versions are only downward compatible.
21 * Different patchlevel versions are downward and upward compatible.
22 */
23#define MD_MAJOR_VERSION 0
24#define MD_MINOR_VERSION 90
25/*
26 * MD_PATCHLEVEL_VERSION indicates kernel functionality.
27 * >=1 means different superblock formats are selectable using SET_ARRAY_INFO
28 * and major_version/minor_version accordingly
29 * >=2 means that Internal bitmaps are supported by setting MD_SB_BITMAP_PRESENT
30 * in the super status byte
31 * >=3 means that bitmap superblock version 4 is supported, which uses
32 * little-ending representation rather than host-endian
33 */
34#define MD_PATCHLEVEL_VERSION 3
35
18/* ioctls */36/* ioctls */
19 37
20/* status */38/* status */