Thomas Vander Stichele wrote:
Hi,
>While I'm far from an expert, the headers needed to build 3rd party
>modules are now packaged with the kernel proper (that's one reason
>it's taking so long to install a new kernel nowadays).
Looks to me like the main reason it's taking so long is because kernel
post scripts run "hardlink" which is not documented and has no help
output. But judging by the name, the arguments it takes, and where it's
run, I'd bet good money on conjecturing that it is a script that given a
path or set of paths figures out all the files are the same, then
hardlinks one to the other, thus saving space.
Personally I don't think the benefit of saving space outweighs the
tremendous amount of time this takes, and I can't imagine it having very
much benefit if the kernel version and release of the files being
evualuated aren't exactly the same. Just my idea though.
I discussed this with Arjan during FC2 test development because I was
very annoyed by the amount of time needed for hardlink. I wondered if
we could run hardlink with "&" so that it runs in the background,
allowing rpm to finish the transaction much sooner. I also asked if
hardlink can be run as a low priority background maintenance job like
prelink. Both were rejected because there is no guarantee that hardlink
will be finished when rpm touches it again, and some difficulty related
to free disk space calculation.
Now I think that removing hardlink from rpm %post and running it like
prelink would be the best solution, but I am perhaps forgetting some
past discussed details.
Warren Togami
wtogami(a)redhat.com