लिनक्स कर्नेल को पेंटियम 4 पर 'क्लॉकसोर्स टीएससी पर स्विच करना' पर लटका हुआ है


11

हार्डवेयर: डेल डायमेंशन 4500S : i845G, पेंटियम 4, स्टॉक + 2 जीबी रैम और लेटेस्ट (लगभग 2002) BIOS अपडेट।

मैं स्रोत से लिनक्स सिस्टम का निर्माण कर रहा हूं, अब तक यह पुस्तक द्वारा एलएफएस 7.0 है। पहले बनाया गया कर्नेल मैं ठीक काम करता है, लेकिन इसमें बहुत सारे फ़्लफ़ और ब्लोट होते हैं, इसलिए मैं अब अपने लक्ष्य हार्डवेयर के लिए कर्नेल को अनुकूलित कर रहा हूं (ऊपर देखें)।

मेरा नवीनतम विन्यास प्रयास, और कई परीक्षण और त्रुटि भिन्नताएं, लगातार प्रिंट पर "घड़सोर tsc के लिए स्विचिंग" कथन पर लटकी हुई हैं। मेरा "अच्छा" कर्नेल कभी भी एक मुद्दा नहीं रहा है ... यह संस्करण 3.1.0 btw है। दोनों एक ही स्रोत पेड़, कोई पैच, से बनाई जा रही हैं make mrproper, make menuconfig, आदि, तो जाहिर है मैं तो बस कुछ महत्वपूर्ण याद कर रहा हूँ CONFIG_XXXझंडा।

मैं अब एक दिन के लिए इस समस्या को घूर रहा हूं, और मैंने कर्नेल का निर्माण किया है जो जानता है कि कितनी बार, लेकिन कोई फायदा नहीं हुआ।

एक चीज़ जो मुझे दिलचस्प लगती है वह है मुझे मिलने वाले अच्छे कर्नेल के साथ:

# cat /sys/devices/system/clocksource/clocksource0/current_clocksource
tsc

इसके अलावा, यह जानना उपयोगी हो सकता है ...

# cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc acpi_pm

मैं विभिन्न विकल्पों के साथ बिल्ड कॉन्फ़िगरेशन का प्रयास कर रहा हूं, लेकिन इस समय मुझे कोई भी विवरण याद नहीं है, इसलिए कृपया न पूछें। अपनी खोज से मैंने कई कर्नेल मापदंडों को पाया और परीक्षण किया है, जैसे clocksource=pitऔर notsc, लेकिन ये सभी भी विफल होते हैं। फिर से, मैं चाहता हूं कि मैंने हर उस चीज को लिख दिया जो मैंने अब तक की कोशिश की है, दृष्टिहीनता ...

फोरम के अधिकांश उदाहरण 2.x कर्नेल के लिए हैं और बूट विकल्पों के कुछ भिन्नता के साथ हल किए गए थे, लेकिन मेरा अच्छा कर्नेल केवल उपयोग करता है root=/dev/sdaX ro। इसलिए मुझे पता है कि मैं इस हार्डवेयर और कर्नेल 3.1.0 संयोजन के साथ सुनहरा हूं अगर मुझे सही बिल्ड कॉन्फ़िगरेशन मिल सकता है।

इसके अलावा, वहां के अधिकांश लोग जो एक समान मुद्दा पोस्ट कर चुके हैं उनका कहना है कि कुछ मिनटों के बाद सिस्टम लोड होता रहेगा और सब कुछ पेचीदा हो जाएगा। मैंने इसे रात को खाना पकाने के लिए पर्याप्त समय से बेकार कर दिया है और यह अभी भी लोडिंग को फिर से शुरू नहीं किया है।

मैं उम्मीद कर रहा हूं कि आप में से कोई एक गुरु इसे पढ़ेगा और कहेगा "अरे हाँ मैंने अभी अपने P4 डायनासोर पर CONFIG_XXX = y सेट किया है और इसने बहुत अच्छा काम किया है।" :)

मुझे पता है कि आपको मेरी कोशिश करने या जाँचने की आवश्यकता है, मुझे परिणाम पोस्ट करने में खुशी होगी।


@tripleee मैं उस जानकारी को कहां देख सकता हूं ... करीबी वोट के पीछे का कारण?
rfmodulator

शायद आप नहीं कर सकते, आपकी प्रतिष्ठा पर्याप्त नहीं हो सकती। किसी भी तरह, चूंकि यह प्रोग्रामिंग से संबंधित नहीं है, इसलिए इसे स्थानांतरित करने के लिए समझ में आता है, लेकिन यह सब कुछ अधिक करीबी वोट हैं। मुझे भी जोड़ देंगे।
ट्रिपल

मैं Pentium 4 के साथ नए कर्नेल के साथ इसी तरह के मुद्दों का सामना कर रहा हूं। अगर मैं हाइपरथ्रेडिंग को अक्षम करता हूं तो सब कुछ काम करता है। दो रातों की डिबगिंग का खर्च उठाया, विवरणों के बारे में अभी तक निश्चित नहीं है।
कोरोबा

@choroba nohtमेरे लिए ऐसा नहीं करता है। यदि आपके पास अन्य विचार हैं तो मुझे बताएं।
rfmodulator

वास्तव में, मुझे BIOS स्तर पर ht को स्विच करना था, या निर्दिष्ट करना था acpi=off
कोरोबा

जवाबों:


8

त्वरित खोज से इस समस्या के कई संभावित कारण प्रतीत होते हैं, और यह इस तथ्य की ओर इशारा करता है कि घड़ी-स्रोत के लिए आपके नए कर्नेल का डिफ़ॉल्ट आपके मदरबोर्ड के लिए गलत है।

एक सलाह जो कुछ के लिए काम करती थी वह थी उपयोग clocksource=hpetया clocksource=acpi_pm

किसी अन्य थ्रेड में , किसी ने इसे ठीक किया clocksource=jiffies, दूसरे ने कोशिश करने की सलाह दी noapicया nolapicकिसी और ने BIOS में एसपीआई बंद करने की सलाह दी , और फिर भी दूसरे ने Synaptics टचपैड को दोषी ठहराया और Xorg.conf को हटाकर अपनी समस्या को ठीक किया।

एक कर्नेल बिल्डर ने fbcondecor के बिना initrd को फिर से जमा करके अपनी समस्या को ठीक किया।

आशा है कि यह मदद करता है, क्योंकि ऐसा लगता है कि इस समस्या के कई कारण हो सकते हैं।


आपके उत्तर के लिए धन्यवाद, हालांकि मैं कर्नेल बिल्ड कॉन्फ़िगरेशन विकल्पों की मांग कर रहा हूं जो बूट समय पर लटकाएंगे (या रोकेंगे) जो मैं देख रहा हूं, आसपास कोई काम नहीं। मैं प्रासंगिक बूट मानकों (के सभी की कोशिश की है clocksource=, no*, आदि) है कि विभिन्न मंच धागे में उल्लेख किया गया है, कोई प्रभाव के साथ। मैंने अपने वास्तविक मुद्दे को कम करने के प्रयास में ये प्रदर्शन किए। मैं पहले से ही एक कर्नेल कि जूते पूरी तरह से किसी भी विशेष मानकों (एक तरफ से बिना है root=और ro,) एक ही स्रोत पेड़ से बनाया है, लेकिन इस कर्नेल अधिक चीजें हैं जो मैं की जरूरत नहीं है शामिल हैं उन लोगों की तुलना कि मुझे क्या करना ...
rfmodulator

... सिवाय इसके कि एक प्रमुख CONFIG_झंडा जो मेरे मुद्दे को हल करेगा।
rfmodulator

क्या यह संभव है कि आपकी समस्या यह है कि आपने बहुत सारे कर्नेल विकल्प बंद कर दिए हैं?
१३

यकीनन। :) यही वह उत्तर है जिसकी मुझे तलाश है, मैंने जो अक्षम किया है वह वास्तव में आवश्यक है। मैंने ऐसा कई बार किया है जिसके परिणाम में कोई बदलाव नहीं हुआ है।
rfmodulator

मैं एक जादू शब्द के साथ आपकी मदद नहीं कर सकता। ऐसा लगता है कि आपका वर्तमान क्लॉकसोर्स acpi_pm है, लेकिन कर्नेल कॉन्फ़िग के साथ पता लगाने के लिए आपको कर्नेल के स्रोतों में तल्लीन करने की आवश्यकता होगी, जो आपने खो दिया है। दूसरा विकल्प उस कॉन्फ़िगरेशन पर वापस लौटना है जिसने काम किया और वेतन वृद्धि में विकल्पों को बंद कर दिया ताकि समस्या का पता लगाया जा सके। आपको "खुश" करने के लिए मैं यह भी कह सकता हूं कि यह एक विकल्प नहीं हो सकता है, लेकिन कई, एक संघर्ष या एक गैर-व्यवहार्य विन्यास संयोजन या गैर-दस्तावेज निर्भरता का अर्थ है।
harrymc

0

मुझे यहाँ ठीक वैसी ही समस्या मिली और एक बहुत पढ़ा। @harrymc ने बहुत अच्छा सारांश दिया।

मैं अपने शोध से सीखी हुई 2 चीजें जोड़ूंगा:

  • समस्या आपके लिनक्स कर्नेल से आती है जो आपके प्रोसेसर को संभालना नहीं जानता है क्योंकि यह पता नहीं लगा सकता है कि आपकी प्रसंस्करण घड़ी क्या है। आप कर्नेल बूट लॉग की जाँच करके इसका अवलोकन कर सकते हैं। ऐसा लगता है कि कर्नेल आपकी प्रसंस्करण घड़ी को मापने की कोशिश कर रहा है (मेरे लिए यह "2997.1333" जैसा था, लेकिन हर बूट "2997.1445", "2997.1379", ...) में बदल रहा है।

  • बहुत सी चीजों की कोशिश करने के बाद, मैं आखिरकार यहां पहुंच गया और BIOS के बारे में पता लगाया। मेरा GYGABITE UEFI है। मैंने पैरामीटर "ऑप्टिमाइज़्ड डिफ़ॉल्ट सेटिंग्स" पर वापस सेट किया और "इंटेल वर्चुअलाइजेशन टेक्नोलॉजी" को "सक्षम" करने के लिए सेट किया।

अब, मेरे लिए सब कुछ सामान्य हो गया है! आशा है कि यह मदद करता है।


0

मुझसे कुछ सेंट, निश्चित नहीं है कि यह एक सामान्य बात है या नहीं, लेकिन मैं BIOS में 'उच्च परिशुद्धता टाइमर' को अक्षम करके उबंटू काम करने में सक्षम था। मेरा mb गीगाबाइट z77x-d3h है


ओपी की प्रणाली उच्च परिशुद्धता इवेंट टाइमर का समर्थन नहीं करती है। यह 2005 में पेश किया गया था, और मूल पोस्टर की प्रणाली कई वर्षों से पूर्ववर्ती है।
क्रिसइंमोंटॉन

-2

मैंने निम्न कर्नेलमीटर को जोड़कर समस्या को ठीक किया:

noapic

5
सुपर उपयोगकर्ता में आपका स्वागत है। क्या आप यह बताकर अपने उत्तर का विस्तार कर सकते हैं कि इससे ओपी की समस्या का समाधान कैसे होता है?
मैं कहता हूं कि मोनिका

कोई संतरी, बस कर्नेल मापदंडों के साथ खेला जाता है।
किरोए
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.