Tilera默认情况下是不支持netfilter和网桥功能的,需要重新编译内核。由于网桥和netfilter(除netfilter架构外)都是以Linux内核模块的方式使用,所以在配置内核时走了一些弯路,例如将网桥和netfilter相关的代码统统编译进linux内核,并将该内核烧写到tilera平台上,但是最终测试网桥和netfilter都不能使用。
经过多次的内核配置、编译最终确定了linux网桥和netfilter需要被编译为内核模块的部分。内核编译完成后,使用tile-monitor生成tilera bootrom文件,并将其烧写到tilera平台上。并将上位机编译生成的linux源码树下kernel目录下的内核模块拷贝到tilera 的/lib/modules/linux-kernel-version/目录下,同时使用depmod(depmod -A)命令产生内核模块之间的依赖关系文件如modules.dep等文件,此步骤很重要以为网桥的用户空间工具btctl和netfilter的用户空间工具iptables都是通过搜索/lib/modules/linux-kernel-version/目录下的模块依赖关系完成模块加载的。
经测试tilera平台上的网桥和netfilter可以正常使用。