Skip to content
  • Harald Hoyer's avatar
    Revert f_type fixups · 4826f0b7
    Harald Hoyer authored
    This reverts commit a858b64d.
    This reverts commit aea275c4.
    This reverts commit fc6e6d24.
    This reverts commit c4073a27.
    This reverts commit cddf1480.
    This reverts commit 8c68a701.
    
    The constants are now casted to __SWORD_TYPE, which should resolve the
    compiler warnings about signed vs unsigned.
    
    After talking to Kay, we concluded:
    
    This should be fixed in the kernel, not worked around in userspace tools.
    
    Architectures cannot use int and expect magic constants lager than INT_MAX
    to work correctly. The kernel header needs to be fixed.
    
    Even coreutils cannot handle it:
      #define RAMFS_MAGIC  0x858458f6
      # stat -f -c%t /
      ffffffff858458f6
    
      #define BTRFS_SUPER_MAGIC 0x9123683E
      # stat -f -c%t /mnt
      ffffffff9123683e
    
    Although I found the perfect working macro to fix the thing :)
    
            __extension__ ({                                                \
                            bool _ret = false;                              \
                            switch(f) { case c: _ret=true; };               \
                            ( _ret );                                       \
                    })
    4826f0b7