Bug 2236 - syslinux-native fails with linux 3.3
Summary: syslinux-native fails with linux 3.3
Status: RESOLVED FIXED
Alias: None
Product: Meta-yocto
Classification: Build System, Metadata & Runtime
Component: meta-yocto (show other bugs)
Version: 1.1.1
Hardware: x86 Multiple
: High critical
Target Milestone: 1.1.2
Assignee: Darren Hart
QA Contact:
URL:
Whiteboard: (1.2) Done
: 2269 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-04-03 21:26 UTC by Ross Burton
Modified: 2012-05-30 15:51 UTC (History)
5 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: ---


Attachments
Backport from syslinux-4.06-pre3 (1.65 KB, patch)
2012-04-04 15:05 UTC, Darren Hart
no flags Details | Diff
Backport from syslinux-4.06-pre3 V2 (41.54 KB, patch)
2012-04-04 16:07 UTC, Darren Hart
no flags Details | Diff
Backport from syslinux-4.06-pre3 V3 (38.35 KB, patch)
2012-04-04 17:18 UTC, Darren Hart
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ross Burton 2012-04-03 21:26:01 UTC
When building syslinux-native from the edison branch on Fedora 16 with kernel 3.3:

| In file included from ../libinstaller/linuxioctl.h:22:0,
|                  from ../libinstaller/syslxcom.c:33:
| /usr/include/linux/ext2_fs.h:178:41: error: unknown type name 'umode_t'

https://bugzilla.kernel.org/show_bug.cgi?id=42986 is a bug against the kernel for this that implies that HPA has updated syslinux.
Comment 1 Darren Hart 2012-04-03 21:31:53 UTC
No update in syslinux yet. We can wait for an update or we can hack in a patch with the couple of constants syslinux needs. Checking with HPA if a fix is imminent.
Comment 2 Darren Hart 2012-04-03 21:35:13 UTC
This will also impact master.
Comment 3 Darren Hart 2012-04-04 15:05:53 UTC
Created attachment 437 [details]
Backport from syslinux-4.06-pre3

Ross, can you please give this patch a try?
Comment 4 Ross Burton 2012-04-04 15:10:48 UTC
You forgot the actual patch file :)
Comment 5 Darren Hart 2012-04-04 15:26:41 UTC
(In reply to comment #4)
> You forgot the actual patch file :)

Click on [details]" in Comment 3.
Comment 6 Ross Burton 2012-04-04 15:29:01 UTC
I mean the patch to the .bb file is fine, but that refers to file://libinstaller-Avoid-using-linux-ext2_fs.h.patch that isn't in the patch.
Comment 7 Darren Hart 2012-04-04 16:07:05 UTC
Created attachment 438 [details]
Backport from syslinux-4.06-pre3 V2

This time with the actual patch to syslinux included.
Comment 8 Darren Hart 2012-04-04 16:07:39 UTC
Sorry Ross, my patch against master was complete, but I somehow dropped the syslinux patch in the application to edison. Weird.
Comment 9 Ross Burton 2012-04-04 16:30:35 UTC
That second patch is messed up, the syslinux patch file is a copy of a whole git commit.
Comment 10 Darren Hart 2012-04-04 16:35:13 UTC
That's the output of "git format-patch -1" and it's a perfectly valid patch. Have you tried applying it?
Comment 11 Ross Burton 2012-04-04 16:39:12 UTC
I applied it with git am and it failed because the .bb referred to a patch file that didn't exist.  See how the patch creates /meta/recipes-devtools/syslinux/files/syslinux-Avoid-using-linux.ext2_fs.h-if-possible.patch
 but then the .bb chunk uses file://libinstaller-Avoid-using-linux-ext2_fs.h.patch.
Comment 12 Darren Hart 2012-04-04 16:43:12 UTC
Oh for crying out loud. So sorry Ross. This is what I get for trying to do too many things at once and just testing myself. Tossing this on my f16-64 VM now after having done a full yum update. Will point you to a branch that is known to work for me.
Comment 13 Ross Burton 2012-04-04 16:46:27 UTC
No problem, it looked like a git command accidentally gone wrong. Don't rush!  :)
Comment 14 Darren Hart 2012-04-04 17:18:07 UTC
Created attachment 439 [details]
Backport from syslinux-4.06-pre3 V3

This patch has been tested on f16-64 running 3.3.0-8. I noticed that /usr/include/linux/ext2_fs.h existed, so I moved it and reran the test. It was successful. Ross, _now_ would kindly try the patch :-)

You can also just checkout the dvhart/bug2236 branch from the poky-contrib repo:

$ git remote add contrib git://git.yoctoproject.org/poky-contrib.git
$ git remote update contrib
$ git checkout contrib/dvhart/bug2236

Or you can cherry-pick the patch if you have local changes:

$ git cherry-pick 8e55c8921d64bf87f45f37be81aae2d3a91dff61
Comment 15 Ross Burton 2012-04-04 19:52:09 UTC
Worked!  Thanks Darren.
Comment 16 Darren Hart 2012-04-10 15:25:51 UTC
*** Bug 2269 has been marked as a duplicate of this bug. ***
Comment 17 Darren Hart 2012-04-13 14:45:27 UTC
Fixed in master: d103dae12b75c9c18f5cc164facc7fe52a37e667
Comment 18 Ross Burton 2012-05-30 15:51:28 UTC
For anyone else who discovers this, it's in the queue for the next edison point release: http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=josh/edison&id=d28709774ebb8c3b118c39b383c6cc1e60f3dddf