osd_types.h 1020 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. /*
  2. * osd_types.h - Types and constants which are not part of the protocol.
  3. *
  4. * Copyright (C) 2008 Panasas Inc. All rights reserved.
  5. *
  6. * Authors:
  7. * Boaz Harrosh <ooo@electrozaur.com>
  8. * Benny Halevy <bhalevy@panasas.com>
  9. *
  10. * This program is free software; you can redistribute it and/or modify
  11. * it under the terms of the GNU General Public License version 2
  12. *
  13. * Contains types and constants that are implementation specific and are
  14. * used by more than one part of the osd library.
  15. * (Eg initiator/target/security_manager/...)
  16. */
  17. #ifndef __OSD_TYPES_H__
  18. #define __OSD_TYPES_H__
  19. struct osd_systemid {
  20. u8 data[OSD_SYSTEMID_LEN];
  21. };
  22. typedef u64 __bitwise osd_id;
  23. struct osd_obj_id {
  24. osd_id partition;
  25. osd_id id;
  26. };
  27. static const struct __weak osd_obj_id osd_root_object = {0, 0};
  28. struct osd_attr {
  29. u32 attr_page;
  30. u32 attr_id;
  31. u16 len; /* byte count of operand */
  32. void *val_ptr; /* in network order */
  33. };
  34. struct osd_sg_entry {
  35. u64 offset;
  36. u64 len;
  37. };
  38. #endif /* ndef __OSD_TYPES_H__ */