দিয়ে শুরু হওয়া প্রক্রিয়াগুলির জন্য বিভিন্ন আচরণের জন্য বাধ্য করা হয়েছে তিন বছরেরও বেশি সময় ধরে প্রধান লাইনে থাকা লিনাক্স কার্নেলের মধ্যে একটি কুৎসিত হ্যাক বলা হয়েছে। একটি বগি X.Org সার্ভার/xf86-video-modesetting DDX এর কারণে, লিনাক্স কার্নেল”X”দিয়ে একটি প্রক্রিয়া শুরু হয় কিনা এবং এর ফলে পারমাণবিক মোড-সেটিং সমর্থন নিষ্ক্রিয় করে কিনা তার উপর ভিন্ন আচরণ চাপিয়েছে।

লিনাক্স নিরাপত্তা গবেষক জেসন ডোনেনফেল্ড (যিনি ওয়্যারগার্ড নিয়ে আসার জন্যও সুপরিচিত), কার্নেলের মধ্যে এই কুৎসিত কোড হ্যাকটিতে হোঁচট খেয়েছেন।

ডোনেনফেল্ড এই সপ্তাহান্তে কার্নেল মেইলিং তালিকাতে মন্তব্য করেছেন a>:

এটি 26b1d3b527e7 (“drm/atomic: এক্স থেকে পারমাণবিক খেলনা দূরে নিয়ে যাও”), একটি রুটকিটের মতো ক্লাজ যা সাধারণ উদ্দেশ্য কার্নেলের ভিতরে কোন ব্যবসা নেই। এটি ডিবাগিং হ্যাকের ধরন যা আমি ক্ষণিকের জন্য ব্যবহার করব কিন্তু কখনই কমিট করব না, বা এক ধরণের বাচ্চা-প্রথম-প্রক্রিয়া-হাইডার ম্যালওয়্যার কৌশল।

ব্যাকস্টোরি হল যে কিছু ইউজারস্পেস কোড–xorg-সার্ভার—এ একটি মোডসেটিং ডিডিএক্স আছে যেটি আসলে সঠিকভাবে কোড করা হয়নি। কেউ আর X11 বজায় রাখতে চায় না, বগি কোড ঠিক করার পরিবর্তে, X11 স্পর্শ না করার জন্য কার্নেল সামঞ্জস্য করা হয়েছিল। একটি অস্বস্তিকর, কিন্তু যথেষ্ট ন্যায্য: যদি কার্নেল কিছু userpace API সমর্থন করতে না চায়, তাহলে সঠিক কাজটি হল একটি সুন্দর ফলব্যাকের ব্যবস্থা করা যেখানে ইউজারস্পেস মনে করে যে এটি একটি পরিচালনাযোগ্য উপায়ে উপলব্ধ নয়।

তবে, *উপায়* যেটা করে সেটা হল শুধুমাত্র `বর্তমান->কম[0]==’X’` চেক করা, এবং শুধুমাত্র সেই ক্ষেত্রেই এটি নিষ্ক্রিয় করা। সুতরাং এর মানে হল এটি শুধুমাত্র কার্নেলের একটি বিষয় যা একটি নির্দিষ্ট ইউজারস্পেস API সমর্থন করতে চায় না, বরং এটি কার্নেল xorg-সার্ভার সমর্থন করতে চায় না, তাত্ত্বিকভাবে, কিন্তু বাস্তবে দেখা যাচ্ছে, এটি সমস্ত প্রক্রিয়া যা’X’দিয়ে শুরু করুন।

কারেন্ট->কম এর সাথে এই ধরনের গেম খেলা স্পষ্টতই ভুল, এবং এটা খুবই মর্মান্তিক যে এটি কখনও প্রতিশ্রুতিবদ্ধ।

The কমিট করুন এই কার্নেলের সাথে”X”প্রথম অক্ষর চেক সেপ্টেম্বর 2019 এ আবার করা হয়েছিল। সেই সময়ে সেই Linux কার্নেল কমিটের যুক্তি ছিল:

-মোডেসেটিং ডিডিএক্স-এ পারমাণবিক কীভাবে কাজ করে সে সম্পর্কে সম্পূর্ণ ভাঙ্গা ধারণা রয়েছে:
-পুরানো সংযোগকারীগুলিকে নিষ্ক্রিয় করে না, ধরে নিই যে তারা উত্তরাধিকার সেটসিআরটিসি-এর মতো স্বয়ংক্রিয়ভাবে নিষ্ক্রিয় হয়ে যায়
-ধরে নেয় ASYNC_FLIP এর মাধ্যমে তারযুক্ত পারমাণবিক ioctl
জন্য-শুধুমাত্র TEST_ONLY

কে একটিও কল নয় [অন্য কথায়] বাস্তবায়ন হল লিগ্যাসি ioctls থেকে পারমাণবিকের 1:1 অনুবাদ, যা একটি) ভাঙা খ) অর্থহীন।

আমাদের i915 এবং amdgpu-DC উভয় ক্ষেত্রেই বাগ রয়েছে যেখানে এটি আমাদেরকে ঝরঝরে বৈশিষ্ট্যগুলি সক্ষম করতে বাধা দেয়।

কেউ যদি কখনো X-এর পরমাণুর বিষয়ে চিন্তা করে তবে আমরা সহজেই চকচকে খেলনাগুলি ফিরে পেতে X-এর জন্য একটি নতুন পারমাণবিক স্তর (req->মান==2) যোগ করতে পারি।

যেহেতু-মোডেসেটিং-এর এই ভাঙা সংস্করণগুলি শিপিং করা হয়েছে, তাই এই বাঁধন থেকে বেরিয়ে আসার অন্য কোনও উপায় নেই৷

“ভাল”খবর হল তারপর থেকে 2019 সালে ব্যবহারকারী-স্থানের দিকে xf86-ভিডিও-মোডেসেটিং কোডটি এগিয়ে গিয়েছিল এবং ডিফল্টরূপে পারমাণবিক সমর্থন অক্ষম করেছে। তাই প্রযুক্তিগতভাবে যদি গত তিন বছরের মধ্যে একটি আপডেট করা X.Org স্ট্যাক চালানো হয়, তাহলে এই কার্নেল হ্যাকটির আর প্রয়োজন নেই কারণ ব্যবহারকারী-স্পেস তখনই পরমাণু API এড়িয়ে যাচ্ছে।

আমরা দেখব যে লিনাস টরভাল্ডস এই হ্যাকটি অপসারণ করার সাথে ঠিক আছে কিনা কারণ এটি তার”ইউজার-স্পেস না ভাঙার”নীতির বিরুদ্ধে যায় তারপর যদি একটি পুরানো X.Org সার্ভার স্ট্যাকের সাথে লেগে থাকে এবং সিস্টেমটি রিগ্রেস করে। ভবিষ্যত কার্নেল সংস্করণের সাথে চালাতে চাই। আমরা দেখতে পাব কিন্তু আশ্চর্যজনকভাবে এই নোংরা কোডের সমালোচনা করতে তিন বছর লেগেছে।

Categories: IT Info