嗨,我正在浏览 Linux 内核代码,我在结构中遇到了以下行
unsigned long private[0] ____cacheline_aligned;
它在 struct mmc_host 中定义。它的用法如下:
host = mmc_priv(mmc);
static inline void *mmc_priv(struct mmc_host *host)
{
return (void *)host->private;
}
我无法找到它的初始化位置,因为它不在 mmc_alloc_host() 函数中。
请参阅以下代码链接。它被定义为 struct mmc_host 中的最后一个变量。
http://www.cs.fsu.edu/~baker/devices/lxr/http/source/linux/include/linux/mmc/host.h