Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 459060

Summary: sy-kernel/gentoo-sources-3.7.x & 3.8 4200_fbcondecor-0.9.6.patch errors
Product: Gentoo Linux Reporter: Robert Cabrera <robcab666>
Component: [OLD] Core systemAssignee: Gentoo Kernel Bug Wranglers and Kernel Maintainers <kernel>
Status: RESOLVED FIXED    
Severity: normal    
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: fixed 4200_fbcondecor-0.9.6.patch
fixed for vanilla 3.8 kernel
fixed 4200_fbcondecor-0.9.6.patch for 3.8 kernel
diff.patch between the original and my modified patch
diff.patch between 3.6 kernel and my modified patch

Description Robert Cabrera 2013-02-24 18:51:13 UTC
The current 4200_fbcondecor-0.9.6.patch is flawed, as it generates many error messages. The patch in its current form works in allowing frame buffer decorations, but has many offsets and uses "fuzz" in several places.

Jeremy had the right idea as to why the old patch was failing with 3.7.x kernels. As he correctly stated, the responsibilities that were previously handled by /include/linux/fb.h alone have now been split into 2 files, with /include/uapi/linux/fb.h now responsible for half of the code.

However, he split the original patch in the wrong place. Furthermore, there was also a minor difference in the 'driver/Makefile'. 

If one applies the current 4200_fbcondecor-0.9.6.patch to a "vanilla" or "gentoo" source kernel the following errors messages are generated (In this case I apply to "vanilla" 3.7.9):

patch -p1 <~/3.7/4200_fbcondecor-0.9.6.patch --dry-run
checking file Documentation/fb/00-INDEX
checking file Documentation/fb/fbcondecor.txt
checking file drivers/Makefile
Hunk #1 succeeded at 15 with fuzz 1 (offset 4 lines).
Hunk #2 succeeded at 41 (offset 8 lines).
checking file drivers/video/Kconfig
Hunk #1 succeeded at 1229 (offset -12 lines).
checking file drivers/video/console/Kconfig
checking file drivers/video/console/Makefile
checking file drivers/video/console/bitblit.c
checking file drivers/video/console/cfbcondecor.c
checking file drivers/video/console/fbcon.c
Hunk #6 succeeded at 466 (offset 7 lines).
Hunk #7 succeeded at 491 (offset 7 lines).
Hunk #8 succeeded at 553 (offset 7 lines).
Hunk #9 succeeded at 946 (offset 7 lines).
Hunk #10 succeeded at 1010 (offset 7 lines).
Hunk #11 succeeded at 1045 (offset 7 lines).
Hunk #12 succeeded at 1255 (offset 7 lines).
Hunk #13 succeeded at 1279 (offset 7 lines).
Hunk #14 succeeded at 1303 (offset 7 lines).
Hunk #15 succeeded at 1419 (offset 7 lines).
Hunk #16 succeeded at 1438 (offset 7 lines).
Hunk #17 succeeded at 1505 (offset 7 lines).
Hunk #18 succeeded at 1829 (offset 7 lines).
Hunk #19 succeeded at 1922 (offset 7 lines).
Hunk #20 succeeded at 2016 (offset 7 lines).
Hunk #21 succeeded at 2034 (offset 7 lines).
Hunk #22 succeeded at 2072 (offset 7 lines).
Hunk #23 succeeded at 2130 (offset 7 lines).
Hunk #24 succeeded at 2149 (offset 7 lines).
Hunk #25 succeeded at 2186 (offset 7 lines).
Hunk #26 succeeded at 2219 (offset 7 lines).
Hunk #27 succeeded at 2262 (offset 7 lines).
Hunk #28 succeeded at 2322 (offset 7 lines).
Hunk #29 succeeded at 2381 (offset 7 lines).
Hunk #30 succeeded at 2516 (offset 7 lines).
Hunk #31 succeeded at 2539 (offset 7 lines).
Hunk #32 succeeded at 2569 (offset 7 lines).
Hunk #33 succeeded at 2668 (offset 7 lines).
Hunk #34 succeeded at 2713 (offset 7 lines).
Hunk #35 succeeded at 2743 (offset 7 lines).
Hunk #36 succeeded at 3011 (offset 7 lines).
Hunk #37 succeeded at 3063 (offset 7 lines).
Hunk #38 succeeded at 3675 (offset 7 lines).
Hunk #39 succeeded at 3729 (offset 7 lines).
checking file drivers/video/console/fbcondecor.c
checking file drivers/video/console/fbcondecor.h
checking file drivers/video/fbcmap.c
checking file drivers/video/fbmem.c
Hunk #1 succeeded at 1231 (offset 9 lines).
checking file include/linux/console_decor.h
checking file include/linux/console_struct.h
checking file include/uapi/linux/fb.h
Hunk #1 succeeded at 8 (offset -3 lines).
Hunk #2 succeeded at 53 (offset -5 lines).
Hunk #3 succeeded at 323 (offset -5 lines).
checking file include/linux/fb.h
Hunk #1 succeeded at 217 with fuzz 2 (offset -155 lines).
Hunk #2 succeeded at 515 (offset -394 lines).
checking file kernel/sysctl.c
Hunk #1 succeeded at 145 (offset 3 lines).
Hunk #2 succeeded at 252 (offset 10 lines).
Hunk #3 succeeded at 1063 (offset 12 lines).
Hunk #4 succeeded at 1507 (offset 10 lines).
Hunk #5 succeeded at 1845 (offset 30 lines).
Hunk #6 succeeded at 1939 (offset 30 lines).
Hunk #7 succeeded at 2298 (offset 62 lines).
Hunk #8 succeeded at 2320 (offset 62 lines).
Hunk #9 succeeded at 2343 (offset 62 lines).

I'm not a programmer, I'm a truck driver. However, using kdiff I was able to investigate and correct the errors this patch was causing. The many offsets as we all know are just minor issues, however, I was very concerned about the files that required "fuzz' to succeed.

This new patch I'm submitting applies cleanly with no errors to the "vanilla" 3.7.9 kernel and with only minor 'offsets' in 'kernel/sysctl' with the "vanilla" 3.8.0 kernel.

I hope this helps

Ciao

Reproducible: Always
Comment 1 Robert Cabrera 2013-02-24 18:53:20 UTC
Created attachment 340002 [details, diff]
fixed 4200_fbcondecor-0.9.6.patch
Comment 2 Robert Cabrera 2013-02-24 19:26:03 UTC
I should have said above in my original post that this new patch applies with no errors to the "vanilla" 3.7.9 kernel and with only minor 'offsets' in 'kernel/sysctl.c' to either the "vanilla" 3.8.0 or "gentoo-sources" 3.8.0 kernel (of course without the previous fbcondecor patch applied).

The output with my patch above applied to a "vanilla" 3.7.9 kernel results:
patch -p1 <~/3.7/4200_fbcondecor-0.9.6.patch --dry-run
checking file Documentation/fb/00-INDEX
checking file Documentation/fb/fbcondecor.txt
checking file drivers/Makefile
checking file drivers/video/Kconfig
checking file drivers/video/console/Kconfig
checking file drivers/video/console/Makefile
checking file drivers/video/console/bitblit.c
checking file drivers/video/console/cfbcondecor.c
checking file drivers/video/console/fbcon.c
checking file drivers/video/console/fbcondecor.c
checking file drivers/video/console/fbcondecor.h
checking file drivers/video/fbcmap.c
checking file drivers/video/fbmem.c
checking file include/linux/console_decor.h
checking file include/linux/console_struct.h
checking file include/uapi/linux/fb.h
checking file include/linux/fb.h
checking file kernel/sysctl.c

The output of my patch above applied to both a "vanilla" 3.8.0 and unpatched "gentoo-sources" kernel results:
patch -p1 <~/3.7/4200_fbcondecor-0.9.6.patch --dry-run
checking file Documentation/fb/00-INDEX
checking file Documentation/fb/fbcondecor.txt
checking file drivers/Makefile
checking file drivers/video/Kconfig
checking file drivers/video/console/Kconfig
checking file drivers/video/console/Makefile
checking file drivers/video/console/bitblit.c
checking file drivers/video/console/cfbcondecor.c
checking file drivers/video/console/fbcon.c
checking file drivers/video/console/fbcondecor.c
checking file drivers/video/console/fbcondecor.h
checking file drivers/video/fbcmap.c
checking file drivers/video/fbmem.c
checking file include/linux/console_decor.h
checking file include/linux/console_struct.h
checking file include/uapi/linux/fb.h
checking file include/linux/fb.h
checking file kernel/sysctl.c
Hunk #3 succeeded at 1104 (offset 41 lines).
Hunk #4 succeeded at 1548 (offset 41 lines).
Hunk #5 succeeded at 1886 (offset 41 lines).
Hunk #6 succeeded at 1980 (offset 41 lines).
Hunk #7 succeeded at 2339 (offset 41 lines).
Hunk #8 succeeded at 2361 (offset 41 lines).
Hunk #9 succeeded at 2384 (offset 41 lines).

I hoped this helps.

Ciao
Comment 3 Robert Cabrera 2013-02-24 23:34:09 UTC
Created attachment 340030 [details]
fixed for vanilla 3.8 kernel

added revised patch that applies cleanly to vanilla and gentoo 3.8 kernel
Comment 4 Robert Cabrera 2013-02-24 23:37:47 UTC
Created attachment 340032 [details, diff]
fixed 4200_fbcondecor-0.9.6.patch for 3.8 kernel

Uploaded previous patch as a txt instead of patch by mistake.
Comment 5 Robert Cabrera 2013-02-24 23:43:51 UTC
results of revised patch with 3.8 gentoo or vanilla kernels:

patch -p1 <~/3.7/4200_fbcondecor-0.9.6.patch --dry-run
checking file Documentation/fb/00-INDEX
checking file Documentation/fb/fbcondecor.txt
checking file drivers/Makefile
checking file drivers/video/Kconfig
checking file drivers/video/console/Kconfig
checking file drivers/video/console/Makefile
checking file drivers/video/console/bitblit.c
checking file drivers/video/console/cfbcondecor.c
checking file drivers/video/console/fbcon.c
checking file drivers/video/console/fbcondecor.c
checking file drivers/video/console/fbcondecor.h
checking file drivers/video/fbcmap.c
checking file drivers/video/fbmem.c                                                                                 
checking file include/linux/console_decor.h
checking file include/linux/console_struct.h
checking file include/uapi/linux/fb.h
checking file include/linux/fb.h
checking file kernel/sysctl.c
Comment 6 Jeroen Roovers (RETIRED) gentoo-dev 2013-02-26 17:42:14 UTC
Please post your `emerge --info' output in a comment.
Comment 7 Robert Cabrera 2013-02-26 21:03:05 UTC
(In reply to comment #6)
> Please post your `emerge --info' output in a comment.

I'll post my emerge --info if you'd like, however this is irrelevant because I roll my own kernels. Before I add any patch to my kernel, I test it using the 'patch' command as per my examples above, to see how cleanly they apply. If I see that "fuzz" was required, then I go to the source to see why "fuzz" was necessary then compare against the patch and edit as needed to make them apply cleanly.

In this case, the first bit of "fuzz" at hunk #1 of the makefile is because makefile changed and I modified the patch accordingly.

The second instance of "fuzz" is because the current patch applies changes to the wrong file. As Jeremy correctly noted when he submitted the original patch, kernel-3.7 splits what had previously been '/include/linux/fb.h' into '/include/linux/fb.h' and '/include/uapi/linux/fb.h'. The current patch applies a modification to a section that doesn't exist in '/include/linux/fb.h'. Instead that section resides in '/include/uapi/linux/fb.h'

I examined and compared '/include/linux/fb.h' from 3.6 and both '/include/linux/fb.h' and '/include/uapi/linux/fb.h' from 3.7 in a three pane window using kdiff3. There I noticed that '/include/uapi/linux/fb.h' is the nearly word for word identical to the first portion of the previous '/include/linux/fb.h' and that the current '/include/linux/fb.h' is nearly word for word identical the the last portion of the previous '/include/linux/fb.h'.

In fact, if the current '/include/uapi/linux/fb.h' were joined with the current '/include/linux/fb.h' it would equal '/include/linux/fb.h' from 3.6.

By editing the patch so that the hunk in question applies to the correct file I was able to eliminate the error. Then for the 3.8 patch I just edited line numbers so that it patches cleanly, without offsets. 

Most of the time I use a kernel based on the pf-sources that I add the "gentoo patchset" including the "extras" because for "everyday" use, I like the combination of tuxonice for my laptop with frame buffer decorations during boot-up and at the console, the CK patchset with the BF scheduler, and the BFQ IO scheduler.

However, I record and edit music as a hobby and use my own RT kernel that uses the "RT patches" and the "gentoo patcheset". But the RT kernels currently in the portage tree are behind what is currently available. So I have an ebuild in my local layman that applies the latest RT patches to the bare kernel sources.

I try to keep both kernels in sync with each other. That is, I don't update kernels sources until both the pf and RT patches are available for the same major revision. Example, I won't update to 3.8 kernel-sources until there are pf and RT patches available for both. I try out both kernels extensively for a couple of weeks before deleting the older kernels and then I rebuild entire my system using the linux-headers that correspond to that major revision. Finally, I recompile both kernels against my newly updated system.

My emerge --info:
Portage 2.2.0_alpha163 (default/linux/amd64/13.0/desktop/kde, gcc-4.7.2, glibc-2.17, 3.7.5-pf x86_64)                                                                                                      
=================================================================                                                                                                                                          
System uname: Linux-3.7.5-pf-x86_64-Intel-R-_Core-TM-2_CPU_T7200_@_2.00GHz-with-gentoo-2.2                                                                                                                 
KiB Mem:     3337744 total,    513616 free                                                                                                                                                                 
KiB Swap:    4200960 total,   4135992 free                                                                                                                                                                 
Timestamp of tree: Sun, 24 Feb 2013 22:15:01 +0000                                                                                                                                                         
ld GNU ld (GNU Binutils) 2.23.1                                                                                                                                                                            
app-shells/bash:          4.2_p42                                                                                                                                                                          
dev-java/java-config:     2.1.12-r1                                                                                                                                                                        
dev-lang/python:          2.7.3-r3, 3.2.3-r2                                                                                                                                                               
dev-util/cmake:           2.8.10.2-r1                                                                                                                                                                      
dev-util/pkgconfig:       0.28                                                                                                                                                                             
sys-apps/baselayout:      2.2                                                                                                                                                                              
sys-apps/openrc:          0.11.8                                                                                                                                                                           
sys-apps/sandbox:         2.6                                                                                                                                                                              
sys-devel/autoconf:       2.13, 2.69                                                                                                                                                                       
sys-devel/automake:       1.11.6, 1.13.1                                                                                                                                                                   
sys-devel/binutils:       2.23.1                                                                                                                                                                           
sys-devel/gcc:            4.7.2                                                                                                                                                                            
sys-devel/gcc-config:     1.8                                                                                                                                                                              
sys-devel/libtool:        2.4.2                                                                                                                                                                            
sys-devel/make:           3.82-r4                                                                                                                                                                          
sys-kernel/linux-headers: 3.7 (virtual/os-headers)                                                                                                                                                         
sys-libs/glibc:           2.17                                                                                                                                                                             
Repositories: gentoo sunrise sabayon my_local_overlay                                                                                                                                                      
Installed sets: @nicefonts, @toolchain, @xorgupdate
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=native"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/polkit-1/actions /usr/share/themes/oxygen-gtk/gtk-2.0 /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo"
CXXFLAGS="-O2 -pipe -march=native"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--jobs=2 --with-bdeps=y --keep-going --complete-graph --load-average=1.5"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs candy collision-protect config-protect-if-modified distlocks ebuild-locks fail-clean fixlafiles merge-sync multilib-strict news parallel-fetch parallel-install preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS="-O2 -pipe -march=native"
GENTOO_MIRRORS="http://gentoo.netnitco.net http://gentoo.osuosl.org/ http://gentoo.mirrors.tds.net/gentoo http://mirror.csclub.uwaterloo.ca/gentoo-distfiles/ http://gentoo.wetzlmayr.com/ http://osmirrors.cerias.purdue.edu/pub/gentoo/ http://www.cyberuse.com/gentoo/ http://gentoo.mirrors.hoobly.com/ ftp://gentoo.imj.fr/pub/gentoo/ http://130.59.10.35/ftp/mirror/gentoo/"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j2 -l1.5 -s"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/sunrise /var/lib/layman/sabayon /usr/local/portage"
SYNC="rsync://rsync.us.gentoo.org/gentoo-portage"
USE="X a52 aac aacplus aacs aalib acl acpi alsa amd64 amr avahi berkdb bidi bluetooth bluray branding bzip2 cairo cdda cddb cdio cdparanoia cdr cli consolekit cracklib crypt cups curl cvs cxx dbus declarative device-mapper dirac djvu dri dts dv dvd dvdr emboss encode exif faac fam ffmpeg firefox flac fontconfig fortran gdbm gif git gphoto2 gtk iconv idn ieee1394 imagemagick ipv6 java jbig joystick jpeg jpeg2k kde kipi lame lastfm lcms ldap libass libnotify libsamplerate live lua lzma lzo mad matroska mime mjpeg mms mmx mmxext mng modplug modules mp3 mp4 mpeg mudflap multilib musepack musicbrainz ncurses netlink nls nptl nsplugin ntp ogg openal openexr opengl openmp pam pango pcre pdf phonon plasma png policykit postproc ppds qalculate qt3support qt4 quicktime readline samba scanner schroedinger sdl semantic-desktop session smp sndfile sox speex spell sse sse2 sse3 ssl ssse3 startup-notification subversion svg symlink taglib tcpd telepathy theora tiff truetype twolame udev udisks unicode upower usb vcd vcdx vlm vnc vorbis vpx wavpack wicd wifi wmf wxwidgets x264 xa xcb xcomposite xinerama xml xscreensaver xv xvid xvmc zeroconf zlib" ABI_X86="64" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" GRUB_PLATFORMS="pc" INPUT_DEVICES="evdev keyboard mouse synaptics joystick" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en en_US" PHP_TARGETS="php5-3" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby18 ruby19" SANE_BACKENDS="epson epson2" USERLAND="GNU" VIDEO_CARDS="nvidia nv" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 8 Robert Cabrera 2013-02-26 21:08:06 UTC
Created attachment 340220 [details, diff]
diff.patch between the original and my modified patch

I created and uploaded a diff.patch between Jeremy's original patch and the one I made for the 3.8 kernel, so you can clearly see what changes I made to the original.

I hope this helps

Ciao
Comment 9 Robert Cabrera 2013-02-26 21:54:37 UTC
Created attachment 340224 [details, diff]
diff.patch between 3.6 kernel and my modified patch

Uploaded patch with differences between 3.6 kernel patch and my modified patch.

I hope this helps

Ciao
Comment 10 Robert Cabrera 2013-02-26 22:07:29 UTC
(In reply to comment #9)
> Created attachment 340224 [details, diff] [details, diff]
> diff.patch between 3.6 kernel and my modified patch
> 
> Uploaded patch with differences between 3.6 kernel patch and my modified
> patch.
> 
> I hope this helps
> 
> Ciao

This should read differences between the 4200.patch from the 3.6 kernel and my modified patch.
Comment 11 Jeroen Roovers (RETIRED) gentoo-dev 2013-02-26 23:30:38 UTC
(In reply to comment #7)
> (In reply to comment #6)
> > Please post your `emerge --info' output in a comment.
> 
> I'll post my emerge --info if you'd like, however this is irrelevant because
> I roll my own kernels.

What does "roll my own kernels" actually mean? The fbcondecor patch is applied on every install of sys-kernel/gentoo-sources, and you are the first person to complain.

Which version of sys-devel/patch do you have installed?
Comment 12 Tom Wijsman (TomWij) (RETIRED) gentoo-dev 2013-02-27 08:27:08 UTC
(In reply to comment #11)
> The fbcondecor patch is applied on every install of sys-kernel/gentoo-sources, and you are the first person to complain.

The fbcondecor has been broken before (bug #452574) and as it is unmaintained it appears to be broken again now, 3.7 moved some files around (eg. uapi) that break file paths in patches.
Comment 13 Robert Cabrera 2013-02-27 18:52:42 UTC
(In reply to comment #11)
> (In reply to comment #7)
> > (In reply to comment #6)
> > > Please post your `emerge --info' output in a comment.
> > 
> > I'll post my emerge --info if you'd like, however this is irrelevant because
> > I roll my own kernels.
> 
> What does "roll my own kernels" actually mean? The fbcondecor patch is
> applied on every install of sys-kernel/gentoo-sources, and you are the first
> person to complain.
> 
> Which version of sys-devel/patch do you have installed?

Sometimes I forget that (In reply to comment #11)
> (In reply to comment #7)
> > (In reply to comment #6)
> > > Please post your `emerge --info' output in a comment.
> > 
> > I'll post my emerge --info if you'd like, however this is irrelevant because
> > I roll my own kernels.
> 
> What does "roll my own kernels" actually mean? The fbcondecor patch is
> applied on every install of sys-kernel/gentoo-sources, and you are the first
> person to complain.
> 
> Which version of sys-devel/patch do you have installed?

@Jeroen Roovers,

Let me apologize for being unclear and using slang. I'm American and sometimes forget that for most here English is not their native language.

In my previous statement, "rolling my own kernel" is slang for my making my own kernel from customized sources. The term "rolling my own" or "rolling your own" means that one is does it themselves, it's not "off the shelf", customized. As in rolling their own cigarettes as opposed to buying pre-rolled manufactured in a box. This is from where the term arrives.

In this case, I'm applying the Gentoo patches (including the fbcondecor.patch) to kernel sources that don't have them included already. In this fashion I'm using customized kernel sources, so I'm "rolling my own".

The version of sys-devel/patch I'm using is not relevant here. There is no problem with the patch program. The problem is with the 4200_fbcondecor-0.9.6.patch and I have posted detailed examples of where the patch is failing and solutions for both 3.7 and 3.8 kernel trees. Please read my previous posts in this thread and the issue should become clearly apparent to you.

The reason no one else has complained is because portage only complains about patches when they fail to apply causing an emerge to fail. In this case the patch is succeeding but doing so with "fuzz", and in one instance it is patching with "fuzz" the wrong file.

I notice the error because, as previously mentioned, I test all patches that I wish to apply against the unpatched "vanilla" kernel sources. Then I test against the pf-sources and finally the RT-sources. I do so using the patch command which gives me feedback that portage is not capable of doing. Only after testing and confirming to my own satisfaction that the patch is applying cleanly do I build my kernel.

All you have to do to test and confirm for yourself what I've been discussing in this thread, is to apply the current 4200_fbcondecor-0.9.6.patch to an unpatched source. Then you'll get the same errors that I did. Furthermore, if you apply the patch(es) that I've submitted you'll see no errors.

The first patch applies cleanly to a 3.7 kernel, the second to a 3.8 kernel.

I hope they will be included in the tree.

I hope this helps clear things up.

Ciao
Comment 14 Tom Wijsman (TomWij) (RETIRED) gentoo-dev 2013-03-02 20:59:16 UTC
*gentoo-sources-3.8.1 (01 Mar 2013)
*gentoo-sources-3.7.10 (01 Mar 2013)

  01 Mar 2013; Tom Wijsman <TomWij@gentoo.org> +gentoo-sources-3.7.10.ebuild,
  +gentoo-sources-3.8.1.ebuild:
  Linux patches 3.7.10 and 3.8.1. Updated fbcondecor-0.9.6 to properly work with
  the 3.7 and 3.8 kernel branches according to bug #459060 thanks to Robert
  Cabrera. Modified kcopy patch according to bug #458426 thanks to Yvan Royon,
  since that was focused on 3.7 I have made that apply cleanly in 3.8 as well.