- CLASSERT(LUSTRE_SEQ_MAX_WIDTH < 0xffffull);
-
- if (fid_is_igif(fid) ||
- seq > 0xffffffull || oid > 0xffff || fid_ver(fid) != 0) {
- fid_cpu_to_be(befider, fid);
- recsize = sizeof *befider;
- } else {
- unsigned char *small_befider;
-
- small_befider = (char *)befider;
-
- small_befider[0] = seq >> 16;
- small_befider[1] = seq >> 8;
- small_befider[2] = seq;
-
- small_befider[3] = oid >> 8;
- small_befider[4] = oid;
-
- recsize = 5;
- }
- memcpy(pack->fp_area, befider, recsize);
- pack->fp_len = recsize + 1;
-}
-EXPORT_SYMBOL(fid_pack);
-
-int fid_unpack(const struct lu_fid_pack *pack, struct lu_fid *fid)
-{
- int result;
-
- result = 0;
- switch (pack->fp_len) {
- case sizeof *fid + 1:
- memcpy(fid, pack->fp_area, sizeof *fid);
- fid_be_to_cpu(fid, fid);
- break;
- case 6: {
- const unsigned char *area;
-
- area = pack->fp_area;
- fid->f_seq = (area[0] << 16) | (area[1] << 8) | area[2];
- fid->f_oid = (area[3] << 8) | area[4];
- fid->f_ver = 0;
- break;
- }
- default:
- CERROR("Unexpected packed fid size: %d\n", pack->fp_len);
- result = -EIO;
- }
- return result;
-}
-EXPORT_SYMBOL(fid_unpack);
+ for (i = 0, populated = 0; i < s->ls_hash_size; i++)
+ populated += !cfs_hlist_empty(&s->ls_hash[i]);
+
+ return snprintf(page, count, "%d %d %d/%d %d %d %d %d %d %d %d\n",
+ s->ls_total,
+ s->ls_busy,
+ populated,
+ s->ls_hash_size,
+ s->ls_stats.s_created,
+ s->ls_stats.s_cache_hit,
+ s->ls_stats.s_cache_miss,
+ s->ls_stats.s_cache_check,
+ s->ls_stats.s_cache_race,
+ s->ls_stats.s_cache_death_race,
+ s->ls_stats.s_lru_purged);
+}
+EXPORT_SYMBOL(lu_site_stats_print);