551-ubifs-fix-default-compression-selection.patch 800 B

1234567891011121314151617181920212223242526272829
  1. --- a/fs/ubifs/sb.c
  2. +++ b/fs/ubifs/sb.c
  3. @@ -63,6 +63,17 @@
  4. /* Default time granularity in nanoseconds */
  5. #define DEFAULT_TIME_GRAN 1000000000
  6. +static int get_default_compressor(void)
  7. +{
  8. + if (ubifs_compr_present(UBIFS_COMPR_LZO))
  9. + return UBIFS_COMPR_LZO;
  10. +
  11. + if (ubifs_compr_present(UBIFS_COMPR_ZLIB))
  12. + return UBIFS_COMPR_ZLIB;
  13. +
  14. + return UBIFS_COMPR_NONE;
  15. +}
  16. +
  17. /**
  18. * create_default_filesystem - format empty UBI volume.
  19. * @c: UBIFS file-system description object
  20. @@ -183,7 +194,7 @@ static int create_default_filesystem(str
  21. if (c->mount_opts.override_compr)
  22. sup->default_compr = cpu_to_le16(c->mount_opts.compr_type);
  23. else
  24. - sup->default_compr = cpu_to_le16(UBIFS_COMPR_LZO);
  25. + sup->default_compr = cpu_to_le16(get_default_compressor());
  26. generate_random_uuid(sup->uuid);