I have home server with 3ware raid controller Model = 9650SE-16ML which works for many years on Xeon , later on desktop intel CPU but now I purchased Ryzen 3600 for it and Aorus B450 M motherboard and was welcomed by initramfs and no block devices.
Found this issue https://bugzilla.kernel.org/show_bug.cgi?id=202425
which states that from kernel 4.11 The commit is: 60db3a4d8cc9073cf56264785197ba75ee1caca4 (“PCI: Enable PCIe Extended Tags if supported”) this is broken.
I confirmed by installing kernel 4.9 and it is running atm . Solution is to maintain own kernel with +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_3WARE, 0x1004, quirk_no_ext_tags);
But I am not sure how to do that , need to maintain pve kernel for proxmox.
Hey, looks like the right section, just a super specific issue that not many people might have encountered.
Might want to bump in a couple of days, but might be that not many people have encountered the issue
Well nothing in one place , had to read official documentation on patching, then separate threads on pve-kernel for dependencies .
That would be the end for this issue but since pve-kernel is missing also a lot of ryzen 3000 performance patches , had to read on those .
But if you only want to know how to patch kernel then short would be :
Install dependencies for kernel build.
Clone the kernel repo git://git.proxmox.com/git/pve-kernel.git
Prepare patch so that you create a diff file between original in repo and yours . for me file in question was “drivers/pci/quirks.c” and either put it in patches folder if in Makefile you have something like set -e; cd ${BUILD_DIR}/${KERNEL_SRC}; for patch in ${PVE_PATCHES}; do echo "applying PVE patch '$$patch'" && patch -p1 < ../../$${patch}; done
or do manual patch -p1 < ../path-to-patch-diff/patch