]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - fs/ubifs/key.h
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4
[karo-tx-linux.git] / fs / ubifs / key.h
index efb3430a2581c4b723cafc6f846ed7b5841ed933..0f530c684f0ba13c99c1424c6614d54f0f3ae23b 100644 (file)
@@ -228,23 +228,6 @@ static inline void xent_key_init(const struct ubifs_info *c,
        key->u32[1] = hash | (UBIFS_XENT_KEY << UBIFS_S_KEY_HASH_BITS);
 }
 
-/**
- * xent_key_init_hash - initialize extended attribute entry key without
- *                      re-calculating hash function.
- * @c: UBIFS file-system description object
- * @key: key to initialize
- * @inum: host inode number
- * @hash: extended attribute entry name hash
- */
-static inline void xent_key_init_hash(const struct ubifs_info *c,
-                                     union ubifs_key *key, ino_t inum,
-                                     uint32_t hash)
-{
-       ubifs_assert(!(hash & ~UBIFS_S_KEY_HASH_MASK));
-       key->u32[0] = inum;
-       key->u32[1] = hash | (UBIFS_XENT_KEY << UBIFS_S_KEY_HASH_BITS);
-}
-
 /**
  * xent_key_init_flash - initialize on-flash extended attribute entry key.
  * @c: UBIFS file-system description object
@@ -295,22 +278,15 @@ static inline void data_key_init(const struct ubifs_info *c,
 }
 
 /**
- * data_key_init_flash - initialize on-flash data key.
+ * highest_data_key - get the highest possible data key for an inode.
  * @c: UBIFS file-system description object
- * @k: key to initialize
+ * @key: key to initialize
  * @inum: inode number
- * @block: block number
  */
-static inline void data_key_init_flash(const struct ubifs_info *c, void *k,
-                                      ino_t inum, unsigned int block)
+static inline void highest_data_key(const struct ubifs_info *c,
+                                  union ubifs_key *key, ino_t inum)
 {
-       union ubifs_key *key = k;
-
-       ubifs_assert(!(block & ~UBIFS_S_KEY_BLOCK_MASK));
-       key->j32[0] = cpu_to_le32(inum);
-       key->j32[1] = cpu_to_le32(block |
-                                 (UBIFS_DATA_KEY << UBIFS_S_KEY_BLOCK_BITS));
-       memset(k + 8, 0, UBIFS_MAX_KEY_LEN - 8);
+       data_key_init(c, key, inum, UBIFS_S_KEY_BLOCK_MASK);
 }
 
 /**
@@ -381,8 +357,8 @@ static inline ino_t key_inum_flash(const struct ubifs_info *c, const void *k)
  * @c: UBIFS file-system description object
  * @key: the key to get hash from
  */
-static inline int key_hash(const struct ubifs_info *c,
-                          const union ubifs_key *key)
+static inline uint32_t key_hash(const struct ubifs_info *c,
+                               const union ubifs_key *key)
 {
        return key->u32[1] & UBIFS_S_KEY_HASH_MASK;
 }
@@ -392,7 +368,7 @@ static inline int key_hash(const struct ubifs_info *c,
  * @c: UBIFS file-system description object
  * @k: the key to get hash from
  */
-static inline int key_hash_flash(const struct ubifs_info *c, const void *k)
+static inline uint32_t key_hash_flash(const struct ubifs_info *c, const void *k)
 {
        const union ubifs_key *key = k;
 
@@ -554,4 +530,5 @@ static inline unsigned long long key_max_inode_size(const struct ubifs_info *c)
                return 0;
        }
 }
+
 #endif /* !__UBIFS_KEY_H__ */