[SRU] change of /bin/sh to dash in edgy breaks drbd0.7-module-source build

Bug #68481 reported by Monty Taylor
26
Affects Status Importance Assigned to Milestone
drbd0.7 (Ubuntu)
Fix Released
Undecided
Unassigned
Edgy
Won't Fix
Undecided
Unassigned

Bug Description

The Makefiles for the drbd kernel modules depend on some Bash-isms. So when you try to build them using make-kpkg, they fail because dash is not bash.

Adding SHELL=/bin/bash into the Makefiles fixes the build.

Tags: patch
Revision history for this message
Ralf Gross (ubuntu-ralfgross) wrote :

I can confirm that this problem exists. I was not able to build the drbd module with ubuntu 6.10 out of the box. Adding SHELL=/bin/bash fixed the problem. This bug did not exist in 6.06.

Revision history for this message
Tessa (unit3) wrote :

I'm having this problem as well building against the xen-server kernel on i386, only I don't see where to add SHELL=/bin/bash to fix it. Can one of you post the build steps you used to correct the problem?

Revision history for this message
Ralf Gross (ubuntu-ralfgross) wrote :

I did the following (might not be the most elegant way..)

apt-get install drbd0.7-module-source
m-a a-i drbd0.7-module-source

Now you have the source under /usr/src/modules/drbd. Just editing the two Makefiles /usr/src/modules/drbd/Makefile and /usr/src/modules/drbd/drbd/Makefile does not work, because the m-a unpacks the tar file again.

Thus I edited the two Makefiles and added a SHELL=/bin/bash line somewhere at the top, removed the /usr/src/drbd0.7.tar.gz file, created a new drbd0.7.tar.gz with the changed Makefiles 'tar cvzf drbd0.7.tar.gz /usr/src/modules/drbd/'

After that 'm-a a-i drbd0.7-module-source' works as expected.

I'm not very familiar with the module-assist command, I'm sure there is a more elegant way to do this.

Revision history for this message
.:. brainsik (brainsik) wrote :

This patch shows how to fix the bashisms in the Makefile.

Revision history for this message
.:. brainsik (brainsik) wrote :

I propose this be an SRU.

The bug renders this package unusable since you can't actually build the module. It does not appear to be fixed in feisty. I attached a patch to remove the bashisms causing the broken behaviour.

Revision history for this message
David Rasch (rasch) wrote :

these same problems break the drbd8-module-source package also, the patch is almost identical.

Revision history for this message
Colin Watson (cjwatson) wrote :

Universe component, so -> motu-sru rather than ubuntu-sru.

Daniel T Chen (crimsun)
Changed in drbd0.7:
status: Unconfirmed → Confirmed
Revision history for this message
StefanPotyra (sistpoty) wrote :

@brainsik: can you please provide a complete debdiff (following https://wiki.ubuntu.com/MOTU/SRU)?

Thanks.

Revision history for this message
.:. brainsik (brainsik) wrote :

attaching debdiff

Revision history for this message
Reinhard Tartler (siretart) wrote :

2 points:
- the version number does not seem to follow our SRU policy
- the changelog entry does only describe the cause, but not the problem and not how it was solved.

Revision history for this message
.:. brainsik (brainsik) wrote :

new debdiff

* changed the change description.
* incremented the version NMU style (adding .1) and appended ~prop1 per the MOTU/SRU page.

Revision history for this message
Daniel T Chen (crimsun) wrote :

Looks sane (Note the misspelling in the changelog entry), +1.

Revision history for this message
.:. brainsik (brainsik) wrote :

new debdiff
* fixed spelling :-)

Revision history for this message
Daniel T Chen (crimsun) wrote :

Looks sane, +1.

Revision history for this message
StefanPotyra (sistpoty) wrote :

hm... looks like there are more bashisms in the Makefile, however none that would imo break things.
Maybe setting the shell to /bin/bash might be a saner approach.
(you can do this with SHELL=/bin/bash at the beginning of the Makefile).

also, the feisty version is not fixed yet, but I'll upload a fix in a minute.

Revision history for this message
StefanPotyra (sistpoty) wrote :

feisty->fix released, just in case anyone wonders.

Revision history for this message
Emmet Hikory (persia) wrote :

Setting the primary task to "Fix Released" based on last comment. Edgy appears to remain open.

Changed in drbd0.7:
status: New → Fix Released
Changed in drbd0.7:
assignee: nobody → imbrandon
status: Confirmed → In Progress
Revision history for this message
Martin Pitt (pitti) wrote :

I rejected the current upload to edgy-proposed. Please drop the ~proposed1 version suffix and reupload (the rest is fine).

Revision history for this message
.:. brainsik (brainsik) wrote :

I've been very disappointed with the speed at which patches are dealt with. When I submitted the debdiff above -- 10 months ago -- it was correct [1]. Because my original patch was ignored, enough time has passed that policy has changed and it has become incorrect.

The fix is for "edgy" which is two releases behind my current Ubuntu environment and I don't have time to learn/install pbuilder right now. I fix packages because we use them at my workplace. I've taken the time to learn to build correct debdiff files specifically so I can share them on Launchpad and, more importantly, with other Ubuntu users.

We keep our own apt repository of fixed packages and at this point I sometimes report bugs / upload patches and sometimes don't. It doesn't appear to be worth my time and effort to report / upload files. The reports are generally ignored and stagnate until the release is so old it's mostly irrelevant [2].

I'm not going to fix and reupload this.

.:. brainsik

p.s. The fix you want is to a single word in the changelog version. It probably took the same amount of time to reject the package and post a comment as it would have taken to edit the patch and accept the package.

[1] https://wiki.ubuntu.com/MOTU/SRU?action=recall&rev=31

[2] E.g, "edgy" users have either already gotten around this bug (since the package is unusable as-is) or have moved on to a later release, it's unlikely someone will build a new "edgy" machine for the first time and deploy it live, and on the off-chance someone is doing a chain of upgrades, such as dapper -> gutsy, there's little need to build this module at the "edgy" step (just do it at the final step, "gutsy").

Revision history for this message
Emmet Hikory (persia) wrote :

brainsik,
    Apologies for your perception of the poor experience with this bug. The fix was applied for feisty on 10th February 2007 (see https://launchpad.net/ubuntu/feisty/+source/drbd0.7/0.7.21-4ubuntu1), and has been included in all newer releases. Thank you very much for your patch to address this.

    Separately, more recent discussion in this bug has been only about the application of the patch to Edgy, which task is currently assigned to Brandon, who would be the person responsible for fixing the debdiff. The efforts to organise and streamline the processes around stable release updates to universe

    Please do continue to submit patches, by preference for application in the next release. While it does often take a while for these to be adopted, especially for prior releases, they do improve the quality of the software for future releases: this problem did not exist in Feisty and does not exist in Gutsy in large part due to your patch.

Revision history for this message
Luca Falavigna (dktrkranz) wrote :

Edgy will reach End Of Life status on April 26, so there is no time to release this SRU this in time.

Changed in drbd0.7:
assignee: imbrandon → nobody
status: In Progress → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.