Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 60620 - kernels patching and bandwidth
Summary: kernels patching and bandwidth
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Gentoo Kernel Bug Wranglers and Kernel Maintainers
URL:
Whiteboard:
Keywords:
: 84821 (view as bug list)
Depends on:
Blocks:
 
Reported: 2004-08-16 17:55 UTC by David Cozatt
Modified: 2005-03-17 11:39 UTC (History)
2 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Cozatt 2004-08-16 17:55:56 UTC
emerge -Uuvp world says gentoo-dev-sources must be upgraded. 
It immediately downloads the full sources plus patches. Nice.
Now the problem is it could have looked in distfiles and seen that 2.6.7 was already there; then downloaded patch-2.6.8.bz2 (or gz) and saved 
-2.6.8-full  36 M
-patch       3.5 M  

about 32 MB of bandwidth. So then some change for nfs leaves us at 2.6.8.1 which will be downloaded in total to be patched by Gentoo no doubt. 

Now I wouldn't want to go all the way to 2.6.0 and patch to it like bug 621 but I would hope that this should illustrate that there is a need to support patching on some level.

Magnify that a couple thousand machines BTW. For dialup it would be a killer.

Reproducible: Always
Steps to Reproduce:
1.Always
2.
3.



Expected Results:  
Checked the distfiles directory to see what version of needed source 
was available, decided 3.5 MB was better than 36 MB and patched. Likely more 
than 2 patchsets back would be more than most faithful gentooers would have 
anyway. 

 
bash-2.05b# emerge -UvDup world 
 
These are the packages that I would merge, in order: 
 
Calculating world dependencies ...done! 
[ebuild  N    ] sys-kernel/gentoo-dev-sources-2.6.8  -build -doc -ultra1  
34,901 kB 
[ebuild     U ] net-www/mozilla-1.7.2 [1.7] +crypt -debug -debug +gnome +gtk2 
+gtk2 +java +java +ldap -mozcalendar -mozdevelop -moznocompose -moznoirc 
-moznomail -moznoxft -moznoxft -mozsvg +mozxmlterm +ssl -xinerama -xprint  
34,052 kB 
[ebuild     U ] net-analyzer/netselect-0.3-r1 [0.3]  21 kB 
 
Total size of downloads: 68,975 kB 
 
bash-2.05b# emerge -UvDu world 
Calculating world dependencies ...done! 
>>> emerge (1 of 3) sys-kernel/gentoo-dev-sources-2.6.8 to / 
>>> Downloading 
http://gentoo.chem.wisc.edu/gentoo/distfiles/genpatches-2.6-8.47-base.tar.bz2 
--11:07:18--  
http://gentoo.chem.wisc.edu/gentoo/distfiles/genpatches-2.6-8.47-base.tar.bz2 
           => `/usr/portage/distfiles/genpatches-2.6-8.47-base.tar.bz2' 
Resolving gentoo.chem.wisc.edu... 128.104.70.13 
Connecting to gentoo.chem.wisc.edu[128.104.70.13]:80... connected. 
HTTP request sent, awaiting response... 200 OK 
Length: 10,706 [application/x-tar] 
 
100%[==================================>] 10,706        --.--K/s 
 
11:07:23 (93.76 KB/s) - 
`/usr/portage/distfiles/genpatches-2.6-8.47-base.tar.bz2' saved [10706/10706] 
 
>>> Downloading 
http://gentoo.chem.wisc.edu/gentoo/distfiles/linux-2.6.8.tar.bz2 
--11:07:23--  http://gentoo.chem.wisc.edu/gentoo/distfiles/linux-2.6.8.tar.bz2 
           => `/usr/portage/distfiles/linux-2.6.8.tar.bz2' 
Resolving gentoo.chem.wisc.edu... 128.104.70.13 
Connecting to gentoo.chem.wisc.edu[128.104.70.13]:80... connected. 
HTTP request sent, awaiting response... 200 OK 
Length: 35,634,061 [application/x-tar] 
 
11% [==>                                ] 3,926,880    153.22K/s    ETA 03:25 
[1]+  Stopped                 emerge -UvDu world 
bash-2.05b# ls -l /usr/portage/distfiles/ 
total 45736 
drwxrws---  3 portage portage       72 May 31  2003 cvs-src 
-rw-rw-r--  1 root    portage    63281 Aug 13 00:00 
genpatches-2.6-7.46-base.tar.bz2 
-rw-rw-r--  1 root    portage   147471 Aug 13 00:00 
genpatches-2.6-7.46-extras.tar.bz2 
-rw-rw-r--  1 root    portage    10706 Aug 15 04:00 
genpatches-2.6-8.47-base.tar.bz2 
-rw-rw-r--  1 root    portage 35092228 Jul 15 21:42 linux-2.6.7.tar.bz2 
-rw-r--r--  1 root    root     3935520 Aug 16 11:07 linux-2.6.8.tar.bz2
Comment 1 Caleb Tennis (RETIRED) gentoo-dev 2004-08-17 07:44:22 UTC
assigned to kde?
Comment 2 David Cozatt 2004-08-19 05:29:37 UTC
perhaps a script to be run before/(called by) kernel ebuilds that would patch kernel sources before adding the gentoo patches. Could be adaptable for all kernels. E.G.
Something like "update-vanilla-sources" that would check to what source is in 
distfiles and if within say 2 versions; then patch to latest vanilla before adding gentoo patches. Another way of saying the same thing- kernels ebuilds
would use the latest vanilla-sources(2.4 or 2.6) and build from there. And updating the sources would be determined by the update-vanilla-script download vs. patch.

user99 aka bus_drivr
Comment 3 Daniel Drake (RETIRED) gentoo-dev 2005-03-13 04:09:29 UTC
*** Bug 84821 has been marked as a duplicate of this bug. ***
Comment 4 Stefan Schweizer (RETIRED) gentoo-dev 2005-03-13 06:59:00 UTC
This is fixed when you use getdelta.
getdelta automatically creates patches and lets you download them .. it also looks that the md5 is correct afterwards :)

just do:
emerge -va getdelta
vi /etc/make.conf (Add FETCHCOMMAND="/usr/bin/getdelta.sh ${URI}")

Then it should work :)
Comment 5 David Cozatt 2005-03-17 09:49:03 UTC
Hello,
 Nice to see any solution. However though viable this is not the default for kernel ebuilds. Meaning getdelta may not be installed. I'd actually like to see something like this for ALL ebuilds. 
 Bandwidth costs money that should be justification enough for making portage check distfiles and patch for kernels. Don't most ebuilds do this anyway? If not they should. If not they should.
 As for kernel ebuilds I wonder shouldn't perl be re-installed after. Seems I saw mention of possible security issues if perl has problems with kernel versions. 
 I consider the way this was closed a "cop out"
Comment 6 Daniel Drake (RETIRED) gentoo-dev 2005-03-17 11:39:37 UTC
getdelta works on all ebuilds. No, no other ebuilds that I know of dynamically patch based on previous distfiles. No, perl does not need to be re-merged after changing kernel.

Unfortunately we physically can't make ebuilds work in this way (check earlier versions, download relevant patches if needed) simply because of the way our digest / signing works.

Something like getdelta is the only viable solution right now, unless you'd like to rewrite portage for us :)