/srv/irclogs.ubuntu.com/2006/03/13/#ubuntu-kernel.txt

=== fbond [n=fab@pool-71-161-210-173.burl.east.verizon.net] has joined #ubuntu-kernel
fbondhi03:09
fbondi see the dpatch system has been dumped for the ubuntu kernel03:10
fbondwhat is the new method?03:10
infinityWe're maintaining it directly in git now.03:16
fbondright03:17
=== johanbr [n=j@d154-20-230-40.bchsia.telus.net] has joined #ubuntu-kernel
infinityhttps://wiki.ubuntu.com/KernelGitGuide03:17
fbondi guess I can assume git is not much like other version control systems03:17
infinityAre any of them like the others? :)03:17
fbondheh03:18
infinityIt's a distributed revision control system, perhaps like arch/baz/bzr, but not at all like them at the same time. :)03:18
fbondhmm03:18
fbondI found the old system convenient03:18
fbondto package a custom-patched kernel03:18
infinity(But git is what's used by kernel.org, so it's simplest for us to also use it to do rapid merging and cherry-picking of patchsets)03:18
fbondi just needed to add a patch to the debian/patches dir03:18
fbondok03:18
fbondI guess I'll go learn that then03:18
infinityIt speeds up our development a fair bit to be able to track upstream changes without doing it all manually.03:19
fbondthis makes sense03:19
fbondupstream releases diffs though, too, eh?03:19
fbond:)03:19
infinityMassive monolithic diffs.03:20
infinityIf you want to track small changesets, or one specific branch of a driver, you either get to do it all by hand, or you do it with git.03:20
fbondi see03:20
infinityWith git, we get branch history (and tracking) for free, so we can udate a specific driver to current, or cherry-pick a fix here and there without worrying about patch conflicts and other craziness.03:21
fbondok ok i'm sold enough03:21
fbond:)03:21
fbondinfinity03:49
fbondokay, i'm back03:49
fbondI'm looking at this git stuff, and wondering how I can use it to git the diff from vanilla 2.6.15 to ubuntu 2.6.15?03:49
fbonder not git the diff ... get the diff03:50
fbondor generate it, anyway03:50
dilingerthat's a nice rally cry.  git the diff!04:00
fbondyes, well git is complex enough that i can't relate to your positivity here04:02
fbondsvn diff -r 0:HEAD seems easy04:02
fbondgit diff ??? HEAD ?04:02
fbondwhat is ???04:02
fbondif I want to have a diff from 2.6.15 to Ubuntu's 2.6.15?04:02
infinityIf you want to generate the diff with git, you need to know the tag that represents 2.6.1504:25
infinityAlternately, you could just diff against a tarball. :)04:25
fbondhmm, well I can see how git makes it easier to apply patches, but it certainly doesn't make it very easy to figure out what's already been applied, unless I'm missing something04:51
fbondand I should think the tag representing 2.6.15 would be fairly standard info to want...04:51
fbondand I can't seem to find it anywhere04:51
dilingerv2.6.15?04:52
fbondbrilliant04:53
fbondwith dpatch, it was clear what each incremental patch accomplished04:53
dilingermore likely, you want v2.6.15.5 or something04:53
dilingerhttp://kernel.org/git/?p=linux/kernel/git/chrisw/linux-2.6.15.y.git;a=summary04:54
fbondhow can I see the incremental patches that were applied by the ubuntu devs?04:55
=== fbond is now known as fbond|away
=== fabbione [i=fabbione@gordian.fabbione.net] has joined #ubuntu-kernel
=== doko [n=doko@dslb-084-059-115-131.pools.arcor-ip.net] has joined #ubuntu-kernel
=== cmvo [n=cmvo@62.225.11.174] has joined #ubuntu-kernel
=== crimsun [n=crimsun@pdpc/supporter/silver/crimsun] has joined #ubuntu-kernel
=== smurf [n=smurf@run.smurf.noris.de] has joined #ubuntu-kernel
=== doko [n=doko@dslb-084-059-069-105.pools.arcor-ip.net] has joined #ubuntu-kernel
=== Keybuk [n=scott@82.108.80.245] has joined #ubuntu-kernel
=== mgalvin [n=mgalvin@host-66-202-95-170.spr.choiceone.net] has joined #ubuntu-kernel
mjg59BenC_: Sent03:43
BenC_thanks03:44
mjg59BenC: Argh. ipw3945 requires newer ieee8021104:08
BenCusual story :/04:08
mjg59I'll send a patch anyway04:08
BenCis that the new intel pro wireless driver?04:13
BenCthe one that requires a binary-only daemon?04:13
mjg59Yeah04:14
mjg59That'll need to go in restricted somewhere04:15
BenCprobably just add it to restricted-modules package so we don't have to create a new package04:15
=== CataEnry [n=cataenry@host83-39.pool8248.interbusiness.it] has joined #ubuntu-kernel
=== fbond|away is now known as fbond
fbondHi04:47
fbondShouldn't the ubuntu kernel be maintained as a separate branch in git?04:47
fbondin other words, shouldn't master be upstream?04:47
fbondit's very difficult to isolate the ubuntu changes in a meaningful way04:48
fbondc04:55
BenCdoing it in a branch wouldn't help05:02
fbondI'm having a bit of a hard time working with git to do what I want05:03
BenCyou can always git-fetch the mainline kernel into a local branch of an ubuntu-2.6 clone05:03
BenCthat's what I do05:03
fbondokay05:03
fbondand then do git diff to see the differences?05:03
fbondbut that creates a VERY large diff05:03
BenCgit-diff-tree05:03
BenCgit-log, and look for UBUNTU05:04
BenCall of our changes have UBUNTU in the summary05:04
fbondthere's one pretty severe complication, I think05:04
fbondback when dpatch was the norm, I could easily see the differences between 2.6.12, and 2.6.12-ubuntu05:04
fbondnow, that's difficult because the git repo includes ubuntu changes made prior to 2.6.1505:05
BenCall the git changes were done during 2.6.15 development05:05
fbondok05:05
fbondwill ubuntu sync with upstream's git repo at every new minor version?05:06
BenCit's not really the intention of the repo to make it easy to disect each individual patch between our kernel and mainline05:06
fbondi figured that out already05:06
BenCyes, after dapper, we will move on to 2.6.17-git05:06
fbondI had packaged an alternative kernel (-ck) on breezy05:07
fbondit was much easier then05:07
BenCmost of the local changes will be rebased (so deltas are against newer changes)05:07
BenCwhy is it so hard now?05:07
BenCyou apply a diff, and recompile05:07
fbondnot really05:07
fbondwith larger patch sets it's likely you will have two incompatible patches05:07
fbondor more than two05:08
fbondit's nice to be able to selectively remove patches05:08
fbondfor instance, try to package an -mm kernel using the ubuntu git repo05:08
fbondthat is more complicated than anything i'm doing05:08
BenCour repo isn't really meant for that type of thing05:08
fbondyeah... using dpatch it was much easier.  what approach would be the closest approximation, using the new git repo?05:09
BenCusing dpatch was much harder for us05:09
fbondi can see that05:09
fbondit makes sense ultimately, given the priorities05:10
BenCright, it was stricly a maint decision05:10
BenCplus being able to interoperate with upstream was a huge bonus05:10
fbondyes, I understand the benefits.  Trying to do what I'm trying to do is maddening, though.05:11
fbondAny advice you might have as to how I can simplify this would be appreciated.05:11
BenCwhat sort of patches are you incorporating?05:11
fbondI had done -ck on breezy.  This is is a patchset for reducing latency.05:11
fbondNow I'm looking at -rt, which is more aggressive.05:12
fbondIt's a fairly significant patch set05:12
fbondAnd needs to be applied before the Ubuntu changes, IMO05:12
fbondOtherwise, resolving conflicts is very difficult, and likely to lead to a broken kernel05:12
=== smurf [n=smurf@run.smurf.noris.de] has joined #ubuntu-kernel
BenCIMO, that -rt patch is not a good idea against our kernel at all05:27
BenCit touches a lot of drivers, and all of our non-stock drivers would be left broken05:27
BenCIMO, it would be best to have it against a stock kernel05:27
BenC2.6.15.5 for example05:27
fbondhmm05:28
fbondperhaps -ck is a better choice in the first place, then05:28
BenCI looked at that patch before, and it was not trivial at all05:28
fbondNo.  But if it was, it wouldn't be worth creating an alternative package for :)05:28
BenCyou could use stock 2.6.15.5, copy our configs, and rebuild for generic systems (i386, k7, 686, smp)05:29
BenCusing make-kpkg05:29
fbondWell, my ultimate goal is to keep as many non-stock drivers as possible05:30
fbondYou do a great job creating a kernel package with extremely good compatibility05:30
fbondI want to preserve that work ,if possible05:31
fbondMy breezy machine at home runs 2.6.12-ck6, and it runs extremely well.  Almost all Ubuntu changes to stock 2.6.12 are preserved.  Splash screen works still.  Etc.  It's much more ideal than creating an anti-Ubuntu -rt kernel package.05:32
fbondAnd it builds just like the Ubuntu packages.  apt-get source linux-source-2.6.12-ck6 ... dpkg-buildpackage -rfakeroot ...05:33
BenCthe only thing I can suggest is just fixing the failed patch chunks and rediffing05:38
BenCI mean, we haven't create a lot of incompatible changes to our kernel, so your most likely problem is just patch offsets, or slight variations in portions of the code05:39
fbondhmm.  ok.  for the record, i disapprove. :)  thanks for your help.05:41
=== fbond is now known as fbond|away
=== CataEnry [n=Enrico@host83-39.pool8248.interbusiness.it] has joined #ubuntu-kernel
=== jbailey [n=jbailey@modemcable139.249-203-24.mc.videotron.ca] has joined #ubuntu-kernel
jbaileyBenC: ping?06:28
BenCjbailey: pong06:30
jbaileyBenC: Do we have a wiki page on the Right Way to build your own drivers from source?06:30
jbaileyLike, with all the packages that need installing, etc?06:30
BenCnot that I know of, but basically it involves installing the linux-headers-2.6.15-VER-FLAVOUR you want to build for06:31
BenCapt-get install build-essential linux-headers-`uname -r`06:31
BenCthat should do it06:31
BenCprobably don't even need build-essential, but it helps cover things06:32
jbailey'kay.  The sets up the /lib/modules/`uname -r'/build links and everything?06:32
BenCyep06:32
jbaileyWithout build essential, they won't get far anyway. =)06:32
BenCprobably not06:32
BenCI don't think linux-headers depends on gcc, binutils, or make06:33
jbaileyBenC: Got a sec to preview: https://wiki.ubuntu.com/KernelSourceDriver ?06:48
BenCjbailey: ..06:48
jbaileyBenC: I'd like to be able to point them at a web page that has the instructions.  That way it's something a little warm and fuzzy.  Documentation almost always feels cuddly.06:49
BenClooks good06:50
makxjbailey: ubuntu uses the smp alternatives patch for x86 and amd64 surprises me that you speak of up/smp flavours06:50
makxthought they would only be left for ppc06:50
jbaileymakx: Think breezy.06:50
makxok.06:51
jbaileyI guess I could make that more clear, though.06:51
jbaileyI mostly want to drill into people that "Integration is good.  Try hardest to do that.  Life will suck less."06:51
BenCjbailey: drill it more that they should go upstream to linus instead of "can you include this in ubuntu"06:53
BenClike use an impact chisel to pound it in :)06:54
BenCwe, (dist kernel developers) usually catch a lot of flack from upstream for including non-stock drivers in the dist, because it prolongs the driver from getting into upstream06:55
jbaileyBenC: Refresh and reread the top part?  I'm wondering that that change is enough.06:56
makxonly missing the review part of the submission cycle06:58
BenC* Getting your driver integrated into upstream means it will not break because of kernel API changes, it also means all of your users (single and distribution) will always have access to the latest version.06:58
makxbut i guess that's what those are afraid of06:58
BenCthat's a separate doc that I am writing06:58
BenCjbailey: that kind of combines two of your other points, so feel free to ignore it :)06:59
jbaileyDoes upstream commit to fixing your driver on api changes?06:59
jbaileyACtually, I think it's probably enough.  Most people will probably just ignore that section anyway.07:00
cjbjbailey: In general?  Yes, the proposer of a new API is expected to patch drivers using the old one.07:00
jbaileyAh, interesting.07:01
cjb"The Kernel ABI can change from time to time." # What does this mean, syscalls?07:01
jbaileyDriver ABI07:03
cjbSyscalls don't change during a kernel series.  The API can change, but that's the whole point.  You might want to link to Documentation/stable_api_nonsense.txt .07:03
jbaileyWell, IIRC syscalls are simply supposed to never change.07:03
BenCcjb: ABI is not syscalls07:10
BenCABI is any function that is EXPORT_SYMBOL'd for use by modules07:11
BenCif the calling conventions change, then the driver/module ABI changes, which means modules have to be recompiled07:11
BenCit's the whole basis for the linux-image-2.6.15-ABI-ARCH naming07:11
cjbI see.07:22
=== crimsun [i=crimsun@pdpc/supporter/silver/crimsun] has joined #ubuntu-kernel
cjbBenC: Did you know that the driver maintainer document you just posted to lkml has broken wrapping?07:57
=== mxpxpod [n=BryanFor@unaffiliated/mxpxpod] has joined #ubuntu-kernel
=== lmanul [n=manu@dan75-4-82-239-58-38.fbx.proxad.net] has joined #ubuntu-kernel
=== mkrufky [n=mk@68.160.103.77] has joined #ubuntu-kernel
mkrufkyBenC: cI just saw your LKML documentation update ..... it's difficult to review it in blob form though... Is this a new document, or a new version of an already existing one?08:06
mkrufky(i thought Ive seen this before, but not compeletely sure)08:07
BenCcjb: my email client probably wrapped different then my editor08:13
=== JaneW [n=JaneW@dsl-146-154-109.telkomadsl.co.za] has joined #ubuntu-kernel
BenCmkrufky: update of a document I posted previously08:13
BenCmkrufky: it's never been included anymore, so it's basically "new"08:15
BenCs/anymore/anywhere/08:15
mkrufkyah, ok makes sense... i'll read it over then... i'll rreply if i have any comments08:18
mkrufkythanks08:18
MithrandirBenC: it seems like readahead and unionfs aren't too friendly, especially not in vmware.08:24
BenCMithrandir: that's the unionfs/squashfs oops that's been occuring all along on ppc08:29
MithrandirBenC: I see it on i386 too, though08:29
BenCmkrufky: thanks08:29
BenCMithrandir: yeah, it's a condition that isn't ppc specific, it's just racey and arbitrary08:29
Mithrandirunsure if it's there on real hardware or not, but it's definitively there under vmware, to the point of having the live cd unusable with readahead.08:30
Mithrandirany chance we can get it fixed or should I disable readahead?08:30
BenCI have a bug report about it on actual x86 hw08:30
BenCMithrandir: just use squashfs 3 :)08:30
BenCthat fixed it on ppc08:30
BenCother than that, the squashfs author is looking into why unionfs and squashfs are acting like this08:30
BenCs/acting/interacting/08:31
Mithrandiryeah, it'd be nice to have it resolved08:33
=== cmvo [n=cmvo@62.225.11.174] has left #ubuntu-kernel ["Konversation]
=== fbond|away is now known as fbond
=== j_ack [n=nico@p508D8C0C.dip0.t-ipconnect.de] has joined #ubuntu-kernel
=== fbond is now known as fbond|away

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!