On Tue, Feb 12, 2008 at 09:09:34AM -0800, Linus Torvalds wrote:I may be a bit defensive here, but I hope that all of the recent kobject/kset/driver core changes have been done with the thought of "what are we doing wrong". For the kset rework, we went back and looked at how people were trying to use this code, realized that it was way too complex, and reworked it all, making both the implementation simpler, the kernel usage model simpler, and documented the whole thing so that everyone knows exactly what is now going on. To quote the original developer of that code when hearing of the rewrite, "thank you for doing it, I have no idea what I was thinking when I wrote that code originally." The end result caused more code to be removed from the kernel than was added, always a nice thing. The rework went through many iteratations, reviews, rebases, and touched many portions of the kernel. In the end, there was only 1 merge issue, in a new IB driver, and Roland and I handled that after Andrew pointed out. That kind of dependency was what I was trying to warn the -next maintainers about. Oh, I see it, and so does my inbox :) No, I understand the issues here, and am working hard to resolve them. Now that the kobject underlying layer looks very good, I'm moving a bit higher up, into the driver core to be able to handle a long-standing requirement by a lot of hardware vendor and driver authors. And yes, that is going to cause a few problems in a few places in the bus-specific logic (the PCI core looks to be the biggest issue, as it does some nasty things with some internal device lists), but for the rest of the kernel, and individual driver authors, it will not be an issue at all. But I understand your main point here, a lot of time I might come across as wanting to constantly change this chunk of code, but I'm only doing it because it's necessary. I'd much rather be off just writing new drivers, and not having to touch this stuff at all. If people see changes in which they think I and Kay are unnecessarily causing churn, please call us out on it, I have no problem with that. </defensive_posturing> :) A lot of time that already happens today, between the different subsystem maintainers. We routinely pass PCI and driver core changes through the network and scsi and ata trees in order to handle merge issues properly. This already happened in a few places in the 2.6.25-rc1 merge cycle. But so far we have been doing this on a per-patch level, not really on a git-tree level. Maybe we might want to re-think this if needed. I'll do this next time I do kobject/driver core changes and see how it works out. thanks, greg k-h --
| Greg KH | [GIT PATCH] driver core patches against 2.6.24 |
| debian developer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Vu Pham | Re: [Scst-devel] Integration of SCST in the mainstream Linux kernel |
| Adrian Bunk | Re: Linux 2.6.21 |
git: | |
| Gerrit Renker | [PATCH 15/37] dccp: Set per-connection CCIDs via socket options |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Radu Rendec | Endianness problem with u32 classifier hash masks |
| Benjamin Herrenschmidt | [PATCH 0/11] ibm_newemac: Candidate patches for 2.6.25 |
