At some point here I'm going to bump libnl to version 3 in rawhide. The
libnl 1.1 we use today is way out of date and we want version 3 for the
enhanced capabilities like bonding, bridging, vlan, etc. This *does*
mean an API break, so packages will need to be updated for libnl3. The
majority of the changes are simply function renames and changed
structure names. There's no porting guide that I'm aware of but I and
others working on NetworkManager have spent time porting from libnl1.1
to libnl3 this cycle so we can point you in the right direction.
One of my packages, pptp, suffers occasional segfaults as reported in
http://bugzilla.redhat.com/749455. However, whilst investigating this,
it seems to be the case that simply rebuilding the package using no
optimization (-O0) as opposed to the default -O2 is enough to stop this
This raises two questions (at least!):
1. Is it reasonable for me to flout the packaging guidelines by
rebuilding with -O0 until this is resolved?
2. How to determine what the actual problem is, e.g. a problem with the
way the code is written leading to unsafe optimizations, or a gcc bug?
I have been looking into replacing Fedora's obsolete version of libpng
(1.2.x release series) with something more modern. The possible choices
are the 1.4.x and 1.5.x release series. The 1.5.x series adds some more
features that 1.4.x did not have, but it also poses significantly more
migration problems. The reason is that 1.5.x no longer exposes the
contents of the library's internal "png_info" struct. Direct access
to fields of png_info has been deprecated for a long time, in favor of
using accessor functions, but up through 1.4 you can get away with it.
I did test rebuilds in mock of all rawhide packages that are reported to
be dependent on libpng. Out of 964 packages with dependencies on libpng,
Packages that rebuilt successfully with 1.5 658
Packages that FTBFS for non-libpng reasons 186
Packages that rebuilt with 1.4, but not 1.5 74
Packages that need help even with 1.4 46
(The non-libpng failures seem to mostly be due to the recent upgrade to
glib 2.0. Some of those probably have libpng issues as well, but didn't
get far enough in their builds to expose them.)
About half of the "need help anyway" group may just need their
BuildRequires to be rebuilt first --- it looked like they had no
source-code dependency, but were just absorbing "-lpng12" from library
link flags reported by other packages. I built each package independently
rather than trying to chain the builds, so this wasn't catered for.
The vast majority of the 74 packages that would need extra work if we move
to libpng 1.5 are trying to access the png_info struct directly, and so
would need patches to use the accessor functions instead. This is work
that should be done and upstreamed anyway, but if we move to 1.4 we would
not have to do it Right Now. It looks like it would be a fairly large
amount of work, too --- I count 1164 "incomplete type" failures in the
build logs for those packages, and it's quite likely there are more in
source files that the build runs didn't get to. On the other hand, if we
move to 1.4 there will not be any pressing reason for these fixes to get
made, and so I'm not sure that we'll be any better off when we try to move
to 1.5 later. Another point is that we'd have to build these same 964
packages over again if we plan a two-stage upgrade.
Any opinions on which way to jump?
In either case, as per the discussion at
I plan to provide the 1.2.x libpng shared library (and only the library,
not its devel support files) in a libpng-compat subpackage for the time
being. So existing programs that depend on 1.2.x will continue to work,
but it won't be possible to rebuild a package that has source-level
dependencies on 1.2.x until those are fixed. I think this is enough
to avoid needing a special build tag for staging the rebuilds.
regards, tom lane
is there something missing in recent F15-Kernels?
i prepare this machine for play wireless-ap and what is much more
worse currently in our company is running a openvpn-server with F14
using brdige-utils which should be upgraded soon to F15
[root@srv-rhsoft:~]$ /usr/sbin/brctl addbr br0
add bridge failed: Package not installed
[root@srv-rhsoft:~]$ uname -r
18.104.22.168-1.fc15.x86_64 #1 SMP Tue Nov 22 08:56:55 UTC 2011
> I get the error "br_add_bridge: Package not installed" when trying to add a bridge, why is that?
> This happens if you don't have bridging support compiled into your kernel, or the module isn't loaded.
> Read the section about the host kernel.
So in the recent proven tester discussion, and in various other threads,
I've oft stated that the limits of the current Bodhi karma system are a
significant problem, and the planned Bodhi 2.0 karma system has to
potentially to significantly improve our update testing process. But it
occurred to me that I haven't really laid out why in much detail, and
those who aren't as involved with the process as we in QA are might not
have a really clear vision of why this is so important.
So, I thought I'd lay it out in the form of a glorious vision of the
future! Note: I have zero UI design skills. This UI as described would
suck. But the idea is that there would be a decent UI which *represents
all the described choices*.
In the Great Bodhi Of The Future, for any given update, a tester will
not simply have a comment box and a drop-down for -1, 0 or +1. They will
* The list of test cases associated with the package, with a PASS / FAIL
choice for each
* Checkboxes for 'This update does / does not break critical path
functionality' (with a link out to the critpath definition)
* A checkbox for 'I installed this update and continued to use my system
as normal and did not note any regressions'
* Any custom choices the package maintainer opts to provide, via some
kind of interface to Bodhi
This is the kind of flexibility that would make karma massively more
useful. The tighter definition of what feedback actually *means*
provides far more information to the maintainer, and enables us to
automate certain outcomes much more aggressively.
For me, one the principal benefits of such a system would be that we
could make the 'This update breaks critical path functionality' checkbox
an absolutely red flashing light, wailing siren emergency button. I
mean, you hit that thing and trucks roll from Fedora HQ, metaphorically
speaking. It would have a confirmation page which clearly described the
impact of asserting that an update broke critpath, so we could be
confident that it didn't get falsely triggered very often. I'd suggest
1. Any update that is marked as 'critpath breaking' by a FAS-registered
tester would be blocked from going any further in the update process
without manual intervention (no autopushes at all)
2. Any update marked as 'critpath breaking' by a proven tester would be
blocked from being pushed stable at all - automatically or manually -
until the PT modified the feedback or it was overridden by someone with
appropriately godlike powers (TBD, but probably not just the maintainer)
3. Any update marked as 'critpath breaking' should probably get
announced on at least test-announce and/or devel-announce
4. Any update marked as 'critpath breaking' *after it has already been
pushed* would similarly trigger a major response: notify maintainer very
hard, notify lists, generally do stuff to make sure it gets immediate
We would also obviously be able to offer maintainers more nuanced
options for autopushing updates - require a certain number of passes on
a certain set of test cases, for instance.
To go a bit into the theory, the really nasty limitation of the current
system is we simply have very little easily consumable indication of
what the karma provided on an update *means*. A +1 can mean anything
from 'I booted and nothing exploded' to 'I tested every line of this
code, then did it backwards standing on my head'. A -1 can mean 'I
booted this update and then my cat got sick, I think there's a
connection!', 'this update breaks $REALLY OBSCURE FEATURE Z', or 'this
update exploded my monitor'. We just _don't know_. You can get the
information from comments, usually, but that's obviously a complete
non-starter for any kind of programmatized or automated action based on
the feedback. In particular, we currently can't do anything dramatic
based on negative feedback because of the uncertainty around exactly
what it means. We do have a few policies about when to file negative
feedback, but even this only very slightly mitigates the problem - we
can't say 'only file negative feedback if the update breaks critpath',
that's just not feasible. So we can't identify the 'really really
negative' feedback and respond appropriate drastically to it without
causing lots of pain through false positives (or rather, false
With a more advanced feedback system we can identify the really big
problems and be much more aggressive about handling them, without
over-reacting to smaller problems. We could, correspondingly, be a bit
less strict about how much *positive* feedback you need to push an
update, if we can be a bit more confident that we'll definitely identify
the really bad problems through negative feedback.
Fedora QA Community Monkey
IRC: adamw | Twitter: AdamW_Fedora | identi.ca: adamwfedora
Just installing Fedora 16 on a new system. We set up a RAID1 with mdadm for /.
On boot, we're finding that if there is a RAID inconsistency, dracut
is waiting for mdadm reconstruction to complete before booting the
system. This means that after a power outage or other condition that
would cause a reconstruction to become necessary, we have to wait
several hours for the system to come online again.
My understanding is that this reconstruction is a background task, is
there really a need for this to hold up boot?
This behaviour comes from
0064-90mdraid-wait-for-md-devices-to-become-clean.patch in the
I've been creating rpm packages for Fermi Linux for over 10 years, and
Scientific Linux 8 years, but I never had time to do anything for Fedora
and EPEL. Now that I'm not with Scientific Linux, I've got the time.
I'd like to help with the OpenShift client packages for Fedora and EPEL.
So I'm going to sign up to be a co-maintainer for rubygem-rhc, and
rubygem-json-pure (a new dependancy for rhc).
so I was trying to fix xorg-x11-docs, which uses fop which uses java, which means I've no idea.
The main error is below so I suspect the problem is that some apache/avalon framework jar file is build with the 1.7 jdk but the buildroot installed the 1.6 jdk. Should something have its dependency bumped?
usr/bin/xmlto: line 316: local: can only be used in a function
/usr/bin/xmlto: line 316: local: can only be used in a function
Making portrait pages on A4 paper (210mmx297mm)
java virtual machine used: /usr/lib/jvm/jre/bin/java
classpath used: /usr/share/java/commons-io.jar:/usr/share/java/batik-all.jar:/usr/share/java/avalon-framework-api.jar:/usr/share/java/avalon-framework-impl.jar:/usr/share/java/xmlgraphics-commons.jar:/usr/share/java/commons-logging.jar:/usr/share/java/fop.jar:
main class used: org.apache.fop.cli.Main
arguments used: -fo /tmp/xmlto.1D9adG/fonts.proc -ps /builddir/build/BUILD/xorg-docs-1.6/general/fonts/fonts.ps
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/avalon/framework/configuration/ConfigurationException : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.security.AccessController.doPrivileged(Native Method)
make: *** [fonts.ps] Error 1
make: Leaving directory `/builddir/build/BUILD/xorg-docs-1.6/general/fonts'
make: *** [all-recursive] Error 1
make: Leaving directory `/builddir/build/BUILD/xorg-docs-1.6/general'
Hi - is an iscsi root device a supported configuration setup with F16 and
systemd? I asked on #systemd, and got pointed here.
We're using dracut to boot diskless systems with root devices on iscsi. This
works fine for booting using Fedora 16 and systemd.
Unfortunately, on shutdown the system hangs. It stops the network interface
before mounting the root device read-only or stopping the iscsi service
(leaving the fedora iscsi target in a confused state too). On Fedora 14,
this worked fine with the old fashioned init system.
In the old init system you used to be able to put a "_netdev" flag in fstab,
which would fix this problem. This doesn't seem to work now.
Is this a simple bug or a bigger issue?
I could imagine we could write some sort of evil systemd service which would
run busybox (perhaps copied to tmpfs) to kill processes, remount root, kill
off iscsi and run halt or reboot depending on the run level, before the
network was stopped. That would be an awful hack (if it even worked).