Re: DriverDisc v3 integration

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Tue, 1 Dec 2009, Martin Sivak wrote:

Hi,

there is a tarball of patches against individual files attached to this email. This set of patches adds new driverdisc format support as well as the automatic driverdisc pickup (known as dlabel in RHEL5) to the current master branch.

Internally this is supposed to work like this:

- the new format is documented in the docs/ directory

- when unpacking
  - whole RPMs go to /tmp/DD-number/
  - firmware files go to /tmp/DD/lib/firmware (in overwriting mode)
  - modules go to /tmp/DD/lib/modules (in overwriting mode)

- during DD loading
  - depmod and modprobe are set to prefer the /tmp/DD location
  - when modprobe runs in DD mode, it picks modules from /tmp/DD, the only exceptions are modules needed to satisfy dependencies
  - probeDevices (udev trigger) is started after each driver disc (with modprobe in DD mode)

- at the end, modprobe is set to preference mode only and probeDevices is ran again

- during Yum install phase
  - the code lists all modules loaded into kernel and tried to find those residing in DD directory (/tmp/DD)
  - modules which were loaded from that directory are translated to package names (file dependencies) and added to Yum transaction

Overall, this code should ensure all features from rhel5 are present in rhel6. It also adds the multiple driverdiscs capability. some issues are still to be solved (e.g. updating specific modules, which are needed for the DD to function).

There was also proposal for automatic updates.img pickup from driverdiscs, but there two main issues remaining:
- versioning, we do not want to be updating anaconda files with older version
- arch specific stuff, especially isys

I'm waiting for your comments. Just be aware of the fact that this must be present in rhel6, so I'm interested only in "how to improve" messages over messages complaining about the feature being unnecessary/useless.


I would like to review it, but could you send it as a series of patches by
task rather than by file?  It would make it easier to follow and comment on.

First glance through the code, here are issues I have:

1) Inconsistent Python style.  Indentation, use of tabs, etc.  I would comment
on specific examples if patches were emailed to the list.

2) The driverdisk.txt file needs to be formatted correctly for an 80 column
terminal.

3) Inconsistent style in code introduced in loader.  If you're going to use
tabs, do that.  If you're going to use spaces, do that.  But don't mix the
two.  Personally, I would prefer spaces for everything and we don't have to
work with tabstops.  Anaconda has been moving in the direction of spaces in
the code, not tabs.

4) A lot of code added to the loader that I question the value of, plus wonder
what sort of difficulties we will run in to later on during RHEL-6's lifespan.
The cpio code for instance.  Why?  Could we just include the cpio program and
exec that from loader?  If we must have code in the loader, why not use
libarchive?

5) The rpm extraction code introduced is also worrysome.  If it's based on
rpm2cpio, could we just include that program in the initrd and use it directly
rather than maintaining our own rpm extraction code?

6) The modulesWithPaths() function introduced in isys assumes a lot and
handles no exceptions.  The modPaths assignment line is difficult to read.

7) The /tmp/DD/... paths throughout the code would probably be better as a
constant defined once and lengths used in the code changed to compute at
runtime rather than hardcoded.

That was a quick run through.  I'd like to comment further, but I'll wait for
you to send task-based patches to the list.

- -- David Cantrell <dcantrell@xxxxxxxxxx>
Red Hat / Honolulu, HI

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAksVbBEACgkQ5hsjjIy1Vkm3kgCguOmjxLThPMZBsVKzeJDs091O
4kwAoLs+N4mYUn57CtiQoymWleRMR6tM
=kl8W
-----END PGP SIGNATURE-----
_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

[Index of Archives]     [Kickstart]     [Fedora Users]     [Fedora Legacy List]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]
  Powered by Linux