সংক্ষিপ্ত প্রশ্ন:
আমি কীভাবে intel_iommu
লিনাক্স কার্নেলের সেটিংসটি চালু করতে পারি ? আমি গ্রাব 2 বুটলোডার ব্যবহার করে একটি ডেবিয়ান হোস্ট চালাই। আমি যে ডকুমেন্টেশন দেখেছি /boot/grub/menu.lst
সেগুলি সম্পাদনা করতে বলেছে , যা কেবল গ্রাব 1.x এর জন্য প্রাসঙ্গিক বলে মনে হয়, কারণ আমার কাছে এই ফাইলটি নেই।
এটি আমার বোঝার (এবং শেষ বিকল্পটি আমি ভাবতে পারি) এই বুট বিকল্পটি পরিবর্তনের ফলে নিম্নলিখিত ত্রুটি বার্তায় মুক্তি পেতে পারে /var/log/kern.log
vboxpci: No IOMMU domain (attach)
দীর্ঘ প্রশ্ন:
কোনও অতিথি ওএসকে গ্রাফিক্স কার্ডে সরাসরি অ্যাক্সেস দেওয়া
আমি সম্প্রতি উপলব্ধি করেছি যে ভার্চুয়ালবক্সে অতিথি ওএসের চলার জন্য পিসিআই-এক্সপ্রেস ডিভাইসটি দিয়ে যাওয়া সম্ভব। কুল, ভাবলাম! আমি দুটি এনভিআইডিএ কোয়াড্রো এফএক্স গ্রাফিক্স কার্ড পেয়েছি (এস এল এল সেতুর সংযোগ স্থানে রয়েছে, যা আমি আশা করি যে দুঃখের কারণ নয়) এবং অতিথি ওএসকে ২ য় গ্রাফিক্স কার্ড উত্সর্গ করতে চাই, যাতে আমি ওপেনজিএল বৈশিষ্ট্যগুলি এর মধ্যে ব্যবহার করতে পারি ফটোশপ এবং অন্যান্য।
এনভিআইডিএ এই "এস এল এল মাল্টি-ওএস " কনফিগারেশনটি বাজারজাত করে , যা মূলত আমি যুগ যুগ ধরে সেট আপ করতে চেয়েছিলাম, তবে আমি যখন ভার্চুয়ালাইজেশন সফ্টওয়্যার (সমান্তরাল ওয়ার্কস্টেশন চূড়ান্ত) এর উপর কোনও অর্থ ব্যয় করতে চাই না, তখন আমি ছিলাম ভার্চুয়ালবক্স এখন বেশ কয়েক বছর ধরে বেশ সুখে ব্যবহার করছে।
হোস্ট সিস্টেম
আমি বেশ উচ্চ-প্রান্তের ওয়ার্কস্টেশন সরঞ্জামগুলিতে (আসুস পি 6 টি 7 ডাব্লুএস সুপার কম্পিউটার কম্পিউটার মোও / ইনটেল আইসি 1010 চিপসেট এবং জিয়ন ডাব্লু 3680 সিপিইউ) লিনাক্স-3.5.0-19 চালাচ্ছি এবং কার্নেলের আইওএমএমইউ সমর্থন চালু করতে চাই , নিজেরাই এটি সংকলন না করেই পছন্দ করুন।
BIOS- র
BIOS সেটিংসে আমার ভিটি-এক্স এবং ভিটি-ডি সমর্থন সক্ষম রয়েছে। যদিও আমি আইওএমএমইউয়ের উল্লেখ উল্লেখ করে কিছু দেখতে পাইনি।
পিসিআই ডিভাইস সংযুক্ত করা হচ্ছে
এটি আনন্দদায়ক আশ্চর্যজনক সহজ ছিল! অফিসিয়াল ভার্চুয়ালবক্স ডকুমেন্টেশন এখানে । আমি যা করেছি, যা আমি কম অস্পষ্ট দেখতে পেয়েছি তা হ'ল nvidia-settings
, মাধ্যমিক গ্রাফিক্স কার্ডটি নির্বাচন করা এবং বাস আইডি নোট করা (আমার ক্ষেত্রে "পিসিআই: 5: 0: 0")। তারপরে, হোস্টের কমান্ড লাইন থেকে:
VBoxManage modifyvm "Windows Guest" --pciattach 05:00.0
(আমি যখন এটি প্রথম চালিয়েছি তখন একটি ত্রুটি হয়েছিল কারণ ভার্চুয়ালবক্স একটি পিআইআইএক্স চিপসেট অনুকরণ করছে; এতে বলা হয়েছে যে পিসিআই পাস-থ্রুটি কেবল আইসিএইচ 9 চিপসেটের সাথে কাজ করে So প্রয়োজনীয় নতুন ড্রাইভারগুলি ইনস্টল করতে later পরে একটি রিবুট করুন এবং সবকিছু ঠিকঠাক কাজ করছিল, তাই আমি অতিথিকে বন্ধ করে দিয়েছিলাম এবং আবার কমান্ডটি চালিয়েছি))
কোনও আউটপুট ছিল না এবং প্রায় অবিলম্বে আমাকে কমান্ড লাইনে ফিরিয়ে দেওয়া হয়েছিল।
অতিথির কাছ থেকে হোস্ট জিপিইউ ব্যবহার করা
অতিথিকে সক্রিয় করার আগে, প্রথমে আমি হোস্ট মেশিনটি রিবুট করেছিলাম, ভার্চুয়ালবক্স-ডিকেএমএসের সাহায্যে কার্নেলের মধ্যে অপ্রকাশিত কিছু হওয়ার প্রয়োজন আছে। যেহেতু আমি পূর্ববর্তী কমান্ডটি sudo
সুবিধাগুলি ছাড়াই চালিয়েছি, সন্দেহ আছে যে কোনও পরিবর্তন হয়েছে কিনা ।
আমি যখন পরবর্তী অতিথিটি শুরু করলাম তখন উইন্ডোজ আপডেট তার কাজটি শুরু করে এবং স্বয়ংক্রিয়ভাবে সঠিক এনভিআইডিআইএ ড্রাইভার সনাক্ত এবং ইনস্টল করে। এখন পর্যন্ত সব দেখতে ভাল লাগছে। যদিও আমি ডিভাইসটি ব্যবহার করতে পারার আগে আমাকে অতিথিকে রিবুট করতে হয়েছিল ...
সমস্যা
এখন যেহেতু গ্রাফিক্স কার্ড ড্রাইভার গেস্ট এবং পিসিআই ডিভাইসে সংযুক্ত রয়েছে, আমি উইন্ডোজ ডেস্কটপে প্রবেশ করতে পারছি না। আমি উইন্ডোজ লগইন স্ক্রিনে পৌঁছেছি, তারপরে লগ ইন করার পরে, স্ক্রিনটি হ'ল "ওয়েলকাম" বলছে, তার পাশের নীল বৃত্তটি হওয়া উচিত।
মধ্যে /var/log/kern.log
, শেষ বার্তা প্রিন্ট করা হয়:
vboxpci: vboxPciOsDevInit: dev=500
vboxpci: detected device: 10de:05ff at 05:00.0, driver pci-stub
vboxpci: vboxPciOsDevInit: dev=500 pdev=ffff88061bea0000
pci-stub 0000:05:00.0: irq 76 for MSI/MSI-X
vboxpci: enabled MSI
500: linux vboxPciOsDevGetRegionInfo: reg=0
got mmio region: fa000000:16777216
500: linux vboxPciOsDevGetRegionInfo: reg=1
got mmio region: d0000000:268435456
500: linux vboxPciOsDevGetRegionInfo: reg=3
got mmio region: f8000000:33554432
500: linux vboxPciOsDevGetRegionInfo: reg=5
got pio region: 8c00:128
500: linux vboxPciOsDevGetRegionInfo: reg=6
got mmio region: fb980000:524288
got PCI IRQ: 76
device eth0 entered promiscuous mode
power state: 0
vboxpci: No IOMMU domain (attach)
কোন ধারনা কিভাবে এটা ঠিক করতে হবে?
হালনাগাদ:
আমি এখন কার্নেলটি বুট করার সাথে পেয়েছি intel_iommu=on
, তবে জিনিসগুলি এখনও পুরোপুরি কাজ করছে না .. হোস্টটিকে রিবুট করার পরে, অতিথিটি শুরু হয়, ঠিক আছে লগইন করে এবং এর কোনওটি শুরু করার আগে সবকিছু যেমন মনে হয় তেমনই মনে হয়। আমার ২ য় গ্রাফিক্স কার্ড কিছুই আউটপুট দিচ্ছে না।
ডিভাইস ম্যানেজারে, কোয়াড্রো এফএক্স ডিভাইসের পাশেই একটি বিস্ময়বোধক চিহ্ন রয়েছে এবং ডিভাইসের বৈশিষ্ট্যগুলিতে 12 এর একটি ত্রুটি কোড রয়েছে, "এই ডিভাইসটি যথেষ্ট নিখরচায় সংস্থান খুঁজে পাচ্ছে না" এই বার্তায়। টেকনেট.মাইক্রোসফট.কম-এ আরও বর্ণনা ।
হোস্ট কার্নেল লগে এটি আশাব্যঞ্জক দেখায়: -
vboxpci: detected device: 10de:05ff at 05:00.0, driver pci-stub
vboxpci: vboxPciOsDevInit: dev=500 pdev=ffff88061baa0000
pci-stub 0000:05:00.0: irq 76 for MSI/MSI-X
vboxpci: enabled MSI
500: linux vboxPciOsDevGetRegionInfo: reg=0
got mmio region: fa000000:16777216
500: linux vboxPciOsDevGetRegionInfo: reg=1
got mmio region: d0000000:268435456
500: linux vboxPciOsDevGetRegionInfo: reg=3
got mmio region: f8000000:33554432
500: linux vboxPciOsDevGetRegionInfo: reg=5
got pio region: 8c00:128
500: linux vboxPciOsDevGetRegionInfo: reg=6
got mmio region: fb980000:524288
got PCI IRQ: 76
created IOMMU domain ffff88058377c9a0
device eth0 entered promiscuous mode
power state: 0
vboxpci: iommu_attach_device() success
আমি যদি দ্বিতীয়বার অতিথিকে ওএস শুরু করি, হোস্টটিকে রিবুট না করে, প্রদর্শনটি "স্বাগত" পর্যায়ে আবারও হিমশীতল হয়। এটি অবশ্যই লগ-ইন পর্যায়ে শেষ করেছে যদিও আমি কোনও শাটডাউন না করেই মেশিনটি বন্ধ করতে উইন্ডোজ শর্টকাট ব্যবহার করতে পারি ..
এখন আমি এক ধরণের ধারণা ছাড়াই ... এই কাজটি করার জন্য কোনও পরামর্শ? আমি যে আর কোনও তথ্য সরবরাহ করতে পারি?
UPDATE2:
dmesg
আরও কিছু আকর্ষণীয় ত্রুটি রয়েছে তবে আমি তাদের সম্পর্কে আমি কী করতে পারি তা জানি না:
IOMMU 0 0xfbfff000: using Queued invalidation
IOMMU 1 0xfbffe000: using Queued invalidation
------------[ cut here ]------------
WARNING: at /build/buildd/linux-3.5.0/drivers/iommu/intel-iommu.c:4254 init_dmars+0x39b/0x74f()
Hardware name: System Product Name
Your BIOS is broken; DMA routed to ISOCH DMAR unit but no TLB space.
BIOS vendor: American Megatrends Inc.; Ver: 0811 ; Product Version: System Version
...
Your BIOS is broken; RMRR ends before it starts!
CONFIG_CMDLINE_LINUX=intel_iommu=on
হয়েছে /etc/default/grub
। এখন অতিথি বুট হয়ে গেছে, তবে গ্রাফিক্স কার্ডটি সনাক্ত করতে পারে না ...
intel_iommu=soft
কোনও বৈধ কার্নেল বিকল্প বলে মনে হচ্ছে না, এবং আমি এটি ব্যবহার করার পরে এটি আবার ফিরে গেছে intel_iommu=on
.. www.kernel.org থেকে আপনার কাছে থাকতে পারে iommu=soft
, তবে আমি এর জন্য কোনও ডকুমেন্টেশন পাচ্ছি না .. আপনি কি জানেন এটি কি করে?
iommu=soft
। এটি হার্ডওয়্যার আইওএমএমইউ নিষ্ক্রিয় করে (যা আমার সিস্টেমে অসংখ্য ডিএমএ ত্রুটি ঘটায়) এবং এর পরিবর্তে একটি আইওএমএমইউ ব্যবহার করে। পুরানো থ্রেডের লিঙ্কটি এখানে: সমস্ত কার্নেল প্যাকেজগুলির জন্য iommu = নরম ব্যবহারের পরামর্শ
intel_iommu=igfx_off
...
intel_iommu=soft
। আপনি পাস করার চেষ্টা করতে পারেনintel_iommu=on
।