+static int osd_prepare_key(struct osd_object *o, __u64 *dst,
+ const struct dt_key *src)
+{
+ int size;
+
+ LASSERT(dst);
+ LASSERT(src);
+
+ /* align keysize to 64bit */
+ size = (o->oo_keysize + sizeof(__u64) - 1) / sizeof(__u64);
+ size *= sizeof(__u64);
+
+ LASSERT(size <= MAXNAMELEN);
+
+ if (unlikely(size > o->oo_keysize))
+ memset(dst + o->oo_keysize, 0, size - o->oo_keysize);
+ memcpy(dst, (const char *)src, o->oo_keysize);
+
+ return size;
+}
+