यह प्रश्न लिनक्स कर्नेल 4.10 के बारे में है।लोड करने योग्य कर्नेल मॉड्यूल को पेड़ के रूप में चिह्नित करना
लोड हो रहा है एक बाहर के पेड़ लाइन किमी गिरी का कारण बनता है एक चेतावनी मुद्रित करने के लिए:
module: loading out-of-tree module taints kernel.
यह module.c में इस चेक से उठाती है: if (!get_modinfo(info, "intree")) {
पढ़ना get_modinfo
यह seams कि "intree ".ko
फ़ाइल के अंदर सिर्फ ए जादू-स्ट्रिंग livnig है।
एक यादृच्छिक लाइन किमी मैं अपने सिस्टम में पाया पर readelf
चल रहा है इस से पता चलता:
readelf -a imon.ko | grep intree 161: 00000000000006c0 9 OBJECT LOCAL DEFAULT 13 __UNIQUE_ID_intree1
जबकि intree
की तलाश में एक सरल, कस्टम hello_world लाइन किमी में देता कोई परिणाम नहीं।
क्या यह वास्तव में मामला है?
कुछ मॉड्यूल कैसे पेड़ के रूप में चिह्नित हैं? क्या यह मॉड्यूल (जैसे MODULE_LICENCE) में मैक्रो जोड़कर किया जाता है, या मॉड्यूल को किसी विशिष्ट तरीके से या कुछ और बनाकर किया जाता है?
आप पेड़ के रूप में बाहर के पेड़ मॉड्यूल को क्यों चिह्नित करना चाहते हैं? यह सब करने जा रहा है कर्नेल डेवलपर्स परेशान है। – duskwuff