Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 452574 - >=sys-kernel/gentoo-sources-3.7 - Updated fbcondecor patch for kernels 3.7 and higher.
Summary: >=sys-kernel/gentoo-sources-3.7 - Updated fbcondecor patch for kernels 3.7 an...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: Normal enhancement with 1 vote (vote)
Assignee: Gentoo Kernel Bug Wranglers and Kernel Maintainers
URL:
Whiteboard:
Keywords: PATCH
Depends on:
Blocks:
 
Reported: 2013-01-16 17:09 UTC by jeremy
Modified: 2013-02-24 20:57 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
working patch for kernels 3.7 and higher (4200_fbcondecor-0.9.6.patch,68.07 KB, patch)
2013-01-16 17:09 UTC, jeremy
Details | Diff
4200_fbcondecor-0.9.6.patch.diff (4200_fbcondecor-0.9.6.patch.diff,863 bytes, patch)
2013-01-16 17:10 UTC, jeremy
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description jeremy 2013-01-16 17:09:28 UTC
Created attachment 335844 [details, diff]
working patch for kernels 3.7 and higher

Ive attached a modified patch. This will only work on kernels 3.7 or higher.

What happened was they slightly changed the include/linux/fb.h file.

On kernels 3.7 and above the code that used to reside solely in include/linux/fb.h has split up and some of it was moved to include/uapi/linux/fb.h

Which was why the previous patch was failing. 

both include/linux/fb.h and include/uapi/linux/fb.h need patched. Which this patch does. I just changed a few lines in the patch to route the correct blocks of code to these files.
Comment 1 jeremy 2013-01-16 17:10:10 UTC
Created attachment 335846 [details, diff]
4200_fbcondecor-0.9.6.patch.diff
Comment 2 Mike Pagano gentoo-dev 2013-01-16 20:50:21 UTC
Thanks! 

I will test this.
Comment 3 Mike Pagano gentoo-dev 2013-01-18 13:49:05 UTC
released in 3.7.3-gentoo.  Thanks, again, Jeremey
Comment 4 Robert Cabrera 2013-02-24 19:36:51 UTC
This 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.

I opened a new bug report for this bug 459060. The patch I'm submitting there applies cleanly with no errors to the "vanilla" 3.7.9 kernel and with only minor 'offsets' in 'kernel/sysctl' using the "vanilla" 3.8.0 kernel (and the exact same minor 'offsets' with gentoo-sources-3.8.0 with the previous patch not applied).

I hope this helps.

Ciao
Comment 5 Robert Cabrera 2013-02-24 20:57:46 UTC
It should read 'kernel/sysctl.c' above.

Thanks