linear.h 576 B

12345678910111213141516171819202122232425262728293031
  1. #ifndef _LINEAR_H
  2. #define _LINEAR_H
  3. #include <linux/raid/md.h>
  4. struct dev_info {
  5. mdk_rdev_t *rdev;
  6. sector_t num_sectors;
  7. sector_t start_sector;
  8. };
  9. typedef struct dev_info dev_info_t;
  10. struct linear_private_data
  11. {
  12. struct linear_private_data *prev; /* earlier version */
  13. dev_info_t **hash_table;
  14. sector_t spacing;
  15. sector_t array_sectors;
  16. int sector_shift; /* shift before dividing
  17. * by spacing
  18. */
  19. dev_info_t disks[0];
  20. };
  21. typedef struct linear_private_data linear_conf_t;
  22. #define mddev_to_conf(mddev) ((linear_conf_t *) mddev->private)
  23. #endif