Re: ce_stage(..) == 2?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



cg <chengang31@xxxxxxxxx> writes:

> I  saw some code like:
> attr.c(365): if (ce_stage(istate->cache[i]) == 2)
> ...
> rerere.c(352):  if (ce_stage(e2) == 2
> ...
>
> but there is no 0x200 in cache.h(158):
> #define CE_NAMEMASK  (0x0fff)
> #define CE_STAGEMASK (0x3000)
> #define CE_EXTENDED  (0x4000)
> #define CE_VALID     (0x8000)
> #define CE_STAGESHIFT 12
>
> so what does "2" mean?

#define ce_stage(ce) ((CE_STAGEMASK & (ce)->ce_flags) >> CE_STAGESHIFT)

0x3000 shifted 12 places is a mask for two bits, as you can have cache
entries at stage 0 (normal), or stage 1/2/3.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]