/ Proc / cpuinfo এর "বাগগুলি" বিভাগটি আসলে কী দেখায়?


23

একটি ডেবিয়ান প্রসারিত করুন এবং একটি বর্তমান কার্নেল সঙ্গে পরীক্ষামূলক / বাস্টার সিস্টেম এবং ইনস্টল মাইক্রো-উপর আমি এখনও মন্দা ও ভূত মধ্যে বাগ হিসেবে তালিকাভুক্ত করা দেখতে /proc/cpuinfo

তবে spectre-meltdown-checkerশো চালানো দুর্বল নয়।

তাই আমি হতাশ করছি কি /proc/cpuinfoপ্রদর্শনী করে। এই সিপিইউর জন্য কেবল এই দুর্বলতা এবং প্যাচ সিস্টেম থাকা সত্ত্বেও কি সর্বদা তালিকাভুক্ত করা হবে?

উত্তর:


22

"বাগ" ক্ষেত্রের অভিপ্রায়টি /proc/cpuinfoকমিট বার্তায় বর্ণিত হয়েছে যা এটি পরিচয় করিয়ে দিয়েছে :

x86/cpufeature: এতে বাগ পতাকা যুক্ত করুন /proc/cpuinfo

ফ্ল্যাগগুলি ডাম্প করে যা বোঝায় যে আমরা চিহ্নিত সিপিইউতে বাগ ওয়ার্কারআউন্ডগুলি প্রয়োগ করেছি এবং বৈশিষ্ট্যযুক্ত পতাকাগুলির অনুরূপ।

সুবিধাটি হ'ল সেগুলি সিপিইউ বৈশিষ্ট্যগুলির মতো সময়ের সাথে জমে না।

পূর্বে, কার্নেল সনাক্ত করা হার্ডওয়্যার বাগগুলি পৃথক বৈশিষ্ট্য হিসাবে তালিকাভুক্ত করা হত ( যেমন কুখ্যাত F00F বাগ, যার 32-বিট x86 সিস্টেমে নিজস্ব f00f_bugপ্রবেশ রয়েছে /proc/cpuinfo)। "বাগ" এন্ট্রিটি x86 সিপিইউ ফ্ল্যাগের মতো একই স্টাইলে একক বৈশিষ্ট্যে এগিয়ে যাওয়ার জন্য এটিকে চালু করার জন্য প্রবর্তিত হয়েছিল ।

প্রবেশদ্বার অনুশীলনে কী বোঝা যায়, আপনি বার্তায় দেখতে পাচ্ছেন, গ্যারান্টিযুক্ত সমস্ত হ'ল কার্নেলটি একটি হার্ডওয়ার বাগ সনাক্ত করেছে । সমস্যাগুলি মোকাবেলা করা হয়েছে কিনা তা নির্ধারণ করার /procজন্য আপনাকে অন্য কোথাও (বুট বার্তা, বা নির্দিষ্ট এন্ট্রি বা /sysফাইল যেমন ফাইলগুলি /sys/devices/system/cpu/vulnerabilities/) দেখতে হবে।

"বাগ" এন্ট্রিগুলির কার্যকারিতা দুটি উপায়েই সীমাবদ্ধ। প্রথমটি হ'ল সত্য negativeণাত্মক অজানা থেকে আলাদা করা যায় না: যদি ক্ষেত্রটি "cpu_meltdown" নির্দিষ্ট করে না, আপনি জানতে পারবেন না (কেবল ক্ষেত্র থেকে) এর অর্থ হল যে কার্নেলটি মেল্টডাউন সম্পর্কে জানেন না, বা আপনার সিপিইউ মেল্টডাউন দ্বারা প্রভাবিত নয়। দ্বিতীয়টি হ'ল সনাক্তকরণটি খুব সরল হতে পারে; এটি সাবধানতার দিক থেকে ভুল করে, সুতরাং এটি হতে পারে যে আপনার সিপিইউ যখন এটি না হয় তখন অরক্ষিত থাকে report যেহেতু "সনাক্তকরণ" সারণিচালিত, এর নির্ভুলতা আপনি যে কার্নেলটি চালাচ্ছেন তার উপর নির্ভর করে।

মেল্টডাউন এবং স্পেকটার বাগের ক্ষেত্রে, সনাক্তকরণ প্রক্রিয়া যা নীচে /proc/cpuinfo কাজ করে মানগুলিকে ফিড করে x86 এ:

  • যদি সিপিইউ কোনও অনুমান না করে (486-শ্রেণি, কিছু পেন্টিয়াম-শ্রেণি, কিছু কিছু পরমাণু), এটি মেল্টডাউন বা স্পেকটার দ্বারা প্রভাবিত হিসাবে চিহ্নিত করা হয়নি;
  • সমস্ত অবশিষ্ট সিপিইউ স্পেক্টর ভেরিয়েন্টগুলি 1 এবং 2 দ্বারা প্রভাবিত হিসাবে চিহ্নিত করা হয়েছে (মাইক্রোকোড পুনর্বিবেচনা ইত্যাদি নির্বিশেষে);
  • যদি সিপিইউ অনুমানযোগ্য স্টোর বাইপাসের জন্য সংবেদনশীল হিসাবে তালিকাভুক্ত না হয় , যদি এর মাইক্রোকোড এসএসবি হ্রাস করার দাবি না করে, এবং সিপিইউ যদি এসএসবি হ্রাস করার দাবি না করে তবে এটি এসএসবি দ্বারা প্রভাবিত হিসাবে চিহ্নিত করা হয়েছে;
  • যদি সিপিইউ মেল্টডাউন (এএমডি) -এর জন্য সংবেদনশীল না হিসাবে তালিকাভুক্ত না হয় এবং যদি এর মাইক্রোকোড মেল্টডাউন প্রশমিত করার দাবি না করে তবে এটি মেল্টডাউন দ্বারা প্রভাবিত হিসাবে চিহ্নিত করা হয়েছে।

2
স্পেক্টর এবং মেল্টডাউনয়ের ক্ষেত্রে তারা এমনকি সনাক্ত করা যায় নি তবে কেবল ধরে নেওয়া হয়েছে । আমার একটি অর্ডার অর্ডার x86 রয়েছে যা কোনওটি দ্বারা প্রভাবিত হয় না, তবে কার্নেল কেবলমাত্র হার্ডকডযুক্ত নিয়মের কারণেই জানায় যে "মাইক্রোকোড প্যাচ ব্যতীত এক্স এর চেয়ে পুরানো যে কোনও ইন্টেল সিপিইউ মেল্টডাউনের পক্ষে ঝুঁকিপূর্ণ"।
আর ..

2
@ আর .. আপনার সিপিইউ কার্নেলের মধ্যে থাকা অর্ডার টেবিলগুলিতে অন্তর্ভুক্ত? ( সর্বশেষতম টেবিলগুলি দেখতে এখানে "সিপিইউ_না_স্পেশুলেশন" সন্ধান করুন )) "বাগগুলি" এন্ট্রি রাইটিংয়ের ক্ষেত্রে এটি অন্যতম সমস্যা। মেল্টডাউন, স্পেক্টর এবং কো।, এর নির্ভুলতা সত্যিকারের উপর নির্ভর করে যে আপনার কার্নেলটি কীভাবে সাম্প্রতিক হয়েছে যেহেতু তাদের "সনাক্তকরণ" টেবিল-চালিত।
স্টিফেন কিট

না, এটি একটি সেন্টারটন বনেল এবং এটি সেখান থেকে অনুপস্থিত। আমি প্যাচ জমা দেওয়ার বিষয়ে দেখব।
আর ..

বুট চলাকালীন যখন কার্নেল লোড করার পরে মাইক্রোকোড আপডেটগুলি প্রয়োগ করা হয়েছিল তখনও এটি সঠিক কিনা তা কি কেউ জানেন?
বাচসৌ

12

মেল্টডাউন / স্পেক্টর দুর্বলতাগুলি সিপিইউ চিপসেট ডিজাইন / আর্কিটেকচারে রয়েছে এবং নতুন ভবিষ্যতের হার্ডওয়্যার কেনার সংক্ষিপ্ততা, প্যাচগুলি দীর্ঘমেয়াদে সুরক্ষার একটি দুর্দান্ত মায়া । ত্রুটিগুলি কাজে লাগানোর নতুন পদ্ধতিগুলি সময়ের সাথে সাথে বর্তমান প্যাচগুলিকে বাইপাস করতে সক্ষম হতে পারে।

সংক্ষেপে, বর্তমান সফ্টওয়্যার প্যাচগুলি / মাইক্রোকোডগুলি স্পেক্টর / মেল্টডাউন পরিবারের শোষণের পরিবারের পরিচিত পদ্ধতিগুলির বিরুদ্ধে সমস্যাগুলি প্রশমিত করে, তবে অন্তর্নিহিত সিপিইউ ডিজাইন সমস্যাগুলি সমাধান করে না যা তাদের প্রথম স্থানে অনুমতি দেয়। সিপিইউগুলির আক্রান্ত (বেশ কয়েকটি প্রজন্ম) দীর্ঘমেয়াদে (এবং সম্ভবত কখনই হবে না) দুর্বল হওয়া বন্ধ করে দেয় না।

তবে, @ গিলস সঠিকভাবে বলেছে যে সতর্কবার্তাটি বোঝার অর্থ এই নয় যে বর্তমানের পরিচিত শোষণগুলি স্পেক্টর / মেল্টডাউন পদ্ধতিগুলি কাজ করবে; প্যাচগুলি ইনস্টল করা থাকলে তারা কাজ করবে না।

প্রশ্নে উল্লিখিত ক্ষেত্রে, কার্নেলটি কেবল স্পেকটার / মেল্টডাউন দ্বারা প্রভাবিত হিসাবে পরিচিত সিপিইউ মডেলগুলি পরীক্ষা করছে (এখনকার জন্য সমস্ত x86 সিপিইউ যদি আমরা কেবল x86 সম্পর্কে কথা বলি), এবং cpu-insecureতবুও ত্রুটি বিভাগে তালিকাভুক্ত করা হচ্ছে / লাইন ইন /proc/cpuinfo

আপনার পরীক্ষা করুন /proc/cpuinfo। এটিতে cpu_insecure থাকবে যদি আপনার কার্নেলের কেপিটিআই প্যাচ থাকে

আমি খুঁজে পেয়েছি যে কেপিটিআই প্যাচটিতে এই টুকরা কোড রয়েছে:

   /* Assume for now that ALL x86 CPUs are insecure */
   setup_force_cpu_bug(X86_BUG_CPU_INSECURE);

এবং কার্নেল আপডেটের পরে, আপনি পাবেন:

bugs      : cpu_insecure

গীত। স্পেক্টর / মেল্টডাউন "বাগগুলি" শোষণের জন্য একটি নতুন পদ্ধতির জন্য ইতিমধ্যে একটি রাউন্ড আপডেট ছিল। এটি সম্ভবত শেষ সময় হবে না।


2
উদাহরণস্বরূপ আপনি যদি কিছু সময়ের জন্য এইচডব্লিউ কেনা বন্ধ করতে পারেন তবে নতুন প্রজন্মের সিপিইউগুলির জন্য অপেক্ষা করুন। আমার স্ফটিক বল আমাকে বলুন যে আমাদের মাঝারি মেয়াদে চিনাবাদামের জন্য প্রচুর ২ য় হ্যান্ড সার্ভার বিক্রয় হবে।
রুই এফ রিবেইরো

সিপিইউ বাগগুলি /proc/cpuinfoকোনও সফ্টওয়্যার প্যাচ দ্বারা সম্পূর্ণরূপে প্রশমিত হওয়া সত্ত্বেও তালিকাভুক্ত থাকে। তাদের উপস্থিতির অর্থ এই নয় যে আপনার সিস্টেমটি সেই নির্দিষ্ট বাগের পক্ষে ঝুঁকিপূর্ণ।
গিলস'স 17-15

@ গিলস মঞ্জুর হয়েছে, আপনি পরিচিত শোষণ প্রয়োগ করতে সক্ষম হবেন না। তবে আমরা ইতিমধ্যে প্যাচগুলির প্রথম প্রজন্মকে ঘিরে ইতিমধ্যে এক দফায় দফায় দফায় কাজ করেছি, এবং আমি সেখানে প্রচুর বাণিজ্যিক স্বার্থের কথা বলার উদ্যোগ নেব কারণ এটি একটি মৌলিক নকশার ত্রুটি যা একটি বড় সিপিইউ পুনরায় নকশাকে বাধ্য করবে sile
রুই এফ রিবেইরো

1
স্পেক্টর / মেল্টডাউন-টাইপ শোষণের ক্ষেত্রে এটি সত্য, তারা মৌলিক নকশার বিষয় যা প্রদান অব্যাহত রাখে। তবে আপনি লিখেছেন যে এটি bugsলাইন শোগুলির ক্ষেত্রে সত্য এবং এটি কেবল ভুল। বেশিরভাগ সিপিইউ ডিজাইনের বাগগুলিতে একটি সম্পূর্ণ সফ্টওয়্যার কাজ রয়েছে যার জন্য কেবল সামান্য পারফরম্যান্স খরচ হয়। যদি কার্নেলটি কার্যবিধিতে প্রয়োগ করে, তবে বাগটি নিরীহ।
গিলস

1
@ রুই ওহ, আমি মনে করি যে আমি নিজেকে যথেষ্ট পরিষ্কারভাবে প্রকাশ করিনি - আমার অর্থ এই যে নিবন্ধটি তার নিজস্ব শিরোনাম জিজ্ঞাসিত প্রশ্নের উত্তর দেয়নি, এটি নয় যে এটি এই প্রশ্নের উত্তর দেয় না ;-)। (যেমন হিসাবে, নিবন্ধটির শিরোনাম "শিল্প-ভাঙ্গা স্পেকটার বাগটি কীভাবে সাত মাস ধরে গোপন ছিল", তবে নিবন্ধটি কীভাবে আইএমওর ব্যাখ্যা দেয় তা নয় ))
স্টিফেন কিট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.