On Sun, Jul 23, 2006 at 10:32:06PM +0300, Ville Skyttä wrote: > > rpm -U/-i will nuke or overwrite kernel modules of the running > > kernel in a uname-r-less scheme. > > rpm -U behaves just as documented and just like with all other packages, > including the kernels, ie. upgrades them. Yes, I'm aware of the nuances > that might make some say it's not the same. Whatever, if you don't want > that behaviour, don't use -U. kernel packages don't have > uname-r-in-name either, and people are perfectly capable of upgrading > their kernels with the rpm CLI. > > Ditto, rpm -i behaves like for all other packages, it doesn't nuke or > overwrite anything. Use --oldpackage in addition if you wish to deal > with modules for old kernels. Just pick Thorsten's example where rpm -U will nuke the kernel module from another unrelated kernel and rpm -i will overwrite (coinstall over) the kernel module of the latest kernel. To give the example again (for simplicity EVR is a single integer): kernel-a with module foo-1 has kmod-foo-1-a kernel-b with module foo-1 has kmod-foo-1-b (BTW this by itself already needs special support in all depsolvers to allow for multiple installs. smart for one cannot glob this, so you need to mention each kernel module in its config.) Now an update module foo-2 brings in kmod-foo-2-b in the repo. This *should* replace kmod-foo-1-b, but leave kmod-foo-1-a alone. o rpm -i fails as it simply (partly) *overwrites* kmod-foo-1-b o rpm -U faile as it *nukes* kmod-foo-1-a This will be the typical situation upon each kernel module upgrade. And w/o special handling in *each* depsolver depsolvers will automagically fail defaulting to nuking. So, the fact remains: W/o uname-r-in-name you generate a very messy situation with compilcated special handling to avoid breakage and you cannot avoid breakage on rpm CLI level. In contrast the kmdl scheme guarantees that old kernel modules will not be nuked and neither will anything be overwritten - in fact on rpm CLI level kmdls behave as a normal package - always use rpm -U. The only drawback of kmdl is that depsolvers don't coinstall for newly installed kernels. But this depsolver support is far more uncritical if missing and also easier to implement (like a 9-liner in bash). -- Axel.Thimm at ATrpms.net
Attachment:
pgp40oNKs53vR.pgp
Description: PGP signature
-- Fedora-packaging mailing list Fedora-packaging@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/fedora-packaging