In general, Bottomley said, such patch requests or bug fixes should be sent to the Linux kernel maintainer teams, rather than to the Linux operating system vendors that build their applications around the kernel.
By sending requests to the kernel teams, Bottomley said, Nortel engineers would have been directly involved in getting the code changes they wanted.
As others join in to discuss their situations on the kernel mailing lists, they can start collaborating to pursue similar changes. Such discussion will solve a majority of the problems for all the users, he said. "You need to work with others who want it," Bottomley said. "Those others who want it [ironically] are often your competitors in real life."
In Nortel's case, the engineers want to get their needed code into the kernel in order to control high-resolution timers that send "wake-up" calls to the kernel for use in the switches that route mobile phone calls.
Nortel had its engineers create custom code to get the work done, but since they did it on their own, they have to redo their work every time a new Linux kernel comes out for their phone switches.
Such a problem is common for many companies that do their development work outside the open source community, Bottomley said. "That's where the big strain comes," he said. Going solo can cost companies thousands of dollars in costs and many hours in staff time, and then they have to do it all again manually each time a new kernel is released.
To avoid having to rewrite the code each time a new kernel comes out, Nortel wants to get its changes into the mainline kernel so they are there automatically for every future version.
"Your maintenance burden is significantly reduced," Bottomley said. "You still have to test and check the code, but you don't have the massive front-end work in the race to keep up with the kernel."