LWN.net Weekly Edition for July 24, 2008
GNOME 3.0 worries
The mood on some GNOME mailing lists in the weeks prior to the recently-concluded GUADEC conference was somewhat somber; some members of the community were clearly feeling that GNOME development had slowed down, that the project lacked vision, and that GNOME was threatening to lose its relevance with users. GNOME subsequently emerged from GUADEC with a new executive director, plans for a 3.0 release, and a new burst of enthusiasm. It's amazing what a week in an exotic city with large amounts of beer can achieve. Since then, however, the enthusiasm has dropped a bit, and work on a proposed 3.0 press release appears to have stalled. GNOME is now faced with some big decisions, and it's not clear what the project will do.The initial driving force behind this effort appears to be a plan by the developers of the GTK+ toolkit to move to a new ABI without concerning themselves with backward compatibility. Years of enforced ABI stability have left GTK+ with a large pile of compatibility cruft which the developers would like to leave behind; in addition, there are major changes planned which would be hard to do in a backward-compatible mode. So the GTK+ developers would like to start over with a 3.0 release. Lots of planning is being done to make the transition easy; among other things, care will be taken to ensure that GTK+ 3.0 will coexist nicely with older installations. But, in the end, it's an incompatible ABI change.
At this point, the loudest objections seem to come from Miguel de Icaza. He fears that a new version of GTK+ will leave independent system vendors behind and, perhaps, lead to a series of ABI-breakage events. In particular, Miguel takes issue with the plan to make the ABI changes for the GTK+ 3.0 release, and only add the new features (which, like much of the GNOME 3.0 plan are somewhat fuzzy at the moment) later. The needed new features, he says, should be driving the whole process. And, if at all possible, those features should be added in a way which does not require an ABI flag day.
It would appear that the GTK+ developers are determined to make this change, though, so expect it to go forward. But a GTK+ change is not the same as a GNOME change; there is no particular need for GNOME to make a major release just because an important library it uses has done so. Anybody who has looked at the linkage of a GNOME application knows that GNOME uses a lot of libraries; they cannot all drive major GNOME releases. So, one might ask, what is happening with GNOME in particular that warrants a 3.0 release?
This question was, arguably, most eloquently asked by Luis Villa, who has described GNOME 3.0 as "a terrible idea." Luis's point is that an ABI change is not enough to motivate a major release; instead, there must be a fundamental vision of a better way to do things. That vision, he says, is not there now. This is not an unprecedented situation in the GNOME community:
A 3.0 process without a clearly-articulated vision will invite the same sort of "crack." It will also throw away the rare public relations opportunity that comes with a major update:
There are, certainly, interesting ideas to be found in the GNOME community. The online desktop ideas, Document-centric GNOME, and the mobile initiatives are examples. But it is true that nobody has, yet, put together a concept of GNOME 3.0 which is broad enough to unify and direct all that work while simultaneously being concise enough to fit onto a bumper sticker. Chances are good that most GNOME developers do not know what GNOME 3.0 really means; those outside of the development community will have even less of a clue.
The KDE 4.0 experience should be on the GNOME project's collective mind as it ponders a possible 3.0 release. Future KDE users may see KDE 4.0 as the turning point where their desktop started becoming truly great, but, for now, it does not look like a whole lot of fun for the KDE development community. GNOME developers, one assumes, would prefer not to have a similar experience.
GNOME 2.x has been around for some time; it may well be true that it is time to make a big jump. It would be gratifying to see some new energy and directions from the highly creative GNOME development community. If the project can come up with a set of overall goals which can inspire that community toward a set of common ends, GNOME 3.0 could be a spectacular success. But those goals, if they exist, have not been communicated to the community yet, and that is making some GNOME developers nervous.
Anticipating the sunset
In his two years at the top of Sun Microsystems, Jonathan Schwartz has embraced a number of ambitious changes. While one need not look too far to find complaints about how Sun works with the free software community, there can be no doubt that Mr. Schwartz has made the company far more open than it was in the past. Free software is an important part of Sun's overall strategy; this can be seen in the company's claims to have contributed more code to the community than any other source.Unfortunately, Mr. Schwartz's time at Sun has been accompanied by a 50% decline in Sun's stock price. Whether he could possibly have done any better given the state of the company when he took over and state of the economy now is something one could debate, but we'll not do that here. More interesting, from the community's point of view, is the rumors that he could soon be looking for a new job.
It has often been said that if corporations were people, they would have the personality of a sociopathic teenager. Certainly companies can exhibit no end of the sort of moody, capricious, and even self-destructive behavior sometimes seen in adolescents - then they come back and ask for more money. An abrupt change at Sun could well bring in a CEO determined to show that his predecessor's policies were fundamentally wrong and were primarily responsible for Sun's problems. And that could bring some interesting changes.
Imagine a Sun which decided that it could no longer afford to share its Valuable Intellectual Property with the world. Perhaps Solaris, OpenOffice, Java, etc. would be relicensed under the new, Sun Proprietary Overtly Indecent License (SPOIL), with no more free releases. Hungry lawyers could start prowling for cases where Solaris code has been mixed into projects with incompatible licenses. StarOffice might go OOXML-only. MySQL could shift to a new, undocumented on-disk format with users' data subject to Sun-controlled DRM on every table. The new Java license would forbid the publication of not just benchmark results, but also of criticism of features of the language.
Clearly, some of these scenarios are rather far afield - though they are fun to make up. But, if we have learned anything from the SCO story, it must be that a company which presents itself as a solid part of the community can, in short order, turn around and go against us. Even if Sun does not degenerate to the point of starting legal attacks against free software, it could certainly put an end to the many contributions that it is making now.
Whenever one deals in company-owned free software, one should consider what happens if that company goes away. Projects with distributed copyright ownership are mostly immune to this kind of problem; there is no single company which could create huge problems for the Linux kernel by withdrawing its participation, for example. (Along these lines, it's worth noting that Evolution recently stopped requiring copyright assignments from its developers). But, in situations where a single company owns the copyrights and dominates development, a change of heart could make a real difference to downstream users. It all depends on what sort of community has developed around the code.
If future versions of Solaris were to be proprietary-only, the current releases would still be out there. But the Solaris development community outside of Sun is tiny, so chances are good that such a move would kill OpenSolaris as a free software project - to the extent that it is one now. Anybody wishing to continue to use Solaris would probably have to move to the proprietary version. OpenOffice.org would likely survive, though the external development community - never encouraged that much by Sun - would have to organize itself and, perhaps, choose a new name. Java is entirely subject to Sun's policies regarding conformance tests and such; it could easily revert to its status from a few years ago. And so on. The point is that a change of heart at Sun could easily make us appreciate the company's relatively friendly attitude now, and could create difficulties for distributors and users of Sun-sponsored projects.
There are plenty of other single-owner projects out there, of course. Many of them are entirely dependent on the continued good will (and viability) of their sponsoring companies. Others are less so. Copyrights on code released by the GNU project are generally owned by the Free Software Foundation. But, if Richard Stallman were to hit his head in an unfortunate contra dancing accident and decide that, henceforth, FSF-owned code would only be released under the binary-only GPLv4, those projects would not suffer much. Instead, the development community behind that code - strongly influenced but not controlled by the FSF - would quickly move to a new home and continue its work. For a practical example, see the creation of X.org in the wake of the relicensing of XFree86.
With any luck at all, the silly scenarios outlined above will not come to pass. But there is value in pondering how things could go. Such thought quickly leads to the conclusion that a vibrant development community is not just good because it leads to faster progress and more cool features. That community is the source for the long-term support for the code, support which is not subject to one company's quarterly results.
Interview: Wind River's John Bruggeman
If you wanted a symbol of Linux's impact on the world of embedded systems, you could do worse than consider the edifying case of Wind River's Damascene conversion. Once one of free software's fiercest critics, today Wind River is a cheerleader for the benefits of open source, of sharing, and of giving back to the community.John Bruggeman is Wind River's Chief Marketing Officer. Here he talks to Glyn Moody about why you can't use any old Linux for embedded systems, the respective strengths and weaknesses of the Linux-based mobile platforms from the LiMo Foundation and Google's Android, and what effect Nokia's announcement that it would be open-sourcing the Symbian operating system will have on the sector.
Once upon a time, Wind River was synonymous with anti-Linux: what happened?
What do you have to do to Linux to make it suitable for the embedded market?
Those are kind of software elements, but there is also a hardware element. In the enterprise computing space, you are basically living in an [Intel architecture] world and everything is pretty constant and stable and predictable. Well, that is the anti-case with what we see in embedded. You have a plethora of hardware environments. Each hardware environment has their own specific nuances and special techniques and tips and trips. And making Linux work really well with hardware is a tough problem.
How would you compare your Linux offering with your proprietary VxWorks solution?
Is there any reason why your Linux software couldn't take on the other kinds of things as well?
What's the kind of split between the VxWorks and Linux, in terms of revenue?
Do you think one day you'll ever be wholly open source?
What are the key attractions of Linux for your customers?
The attraction of Linux is there's this massive development community developing that infrastructure stuff that they used to spend so much time on, that enabled application development: they don't have to do that anymore. The second thing is obviously cost. They really can get it at a significantly lower development cost than they did when they used to have to build it themselves.
What's your business model?
Moving on to the mobile phone space, can you say a little about LiMo and Android, and what your involvement in those has been?
We joined LiMo as a board member and we work very, very hard with the architectural committee to become the Linux foundation for all LiMo-based development. What that means is the common integration environment, which is the Linux-built system, the tool chain, is all based on Wind River technology. And therefore any contribution that's made to LiMo [is] based on our technology - we contributed that common integration environment to the LiMo foundation.
[Open Handset Alliance's Android] was announced about six or nine months or so after LiMo, and Google came out and said Wind River is their Linux commercialization partner. We have been working with them for about two years. We've done a number of hardware integrations for them. That's one of our core competences: how do you get Android running on the hardware.
We have phones coming out for both. We see a lot of activity on both and a lot of momentum for both.
How would you contrast the two initiatives?
OHA is really a Google-driven initiative. They make product decisions and they make feature decisions.
So, let's talk pros and cons about this. When it's not a democracy, when the decision-making is very clear, decisions can be made quickly and things move very fast. On the LiMo side, where it's a lot of people, with a lot of experience building phones, who know what really matters, and what's important and what works and what doesn't work, they can bring a lot of different experience, a wealth of different perspectives together.
Sometimes it might take a little longer to make a decision over here but I really understand and can see why that decision works over there. Where this one races ahead, this one's a little more methodical and carefully constructed. But they're both building compelling platforms and will both be successful in the marketplace.
Alongside LiMo and Android, we will have an open source Symbian at some point; what effect is that going to have on this whole market?
Symbian's got 60% of the smartphone market. And Microsoft's 20 to 30% of that market. Certainly they are not among equals, but Microsoft's been gaining share against Symbian and against Nokia. So, I think this was an aggressive and a bold and clever move against Microsoft.
Vis-a-vis Linux, the Symbian move just endorsed what was going on. It said if you're going to be competitive, if you're going to relevant years from now, you'd better have an open source model. I love that endorsement of Linux.
On the other hand, their solution is years away. Nokia said: Well, we'll have it in the first half in 2010. Both Android and LiMo will have phones out by the end of this year. So, there should be a lot of activity. Now if I'm an ecosystem member, am I going to wait for 2010, or am I going to develop today, and address real design opportunities and real win opportunities today?
I think Linux has a window of opportunity. We're going to see mass adoption of Linux-based devices, whether they are phones, or converged devices or MIDs, or whatever they are. However this market evolves, Linux is going to have two years' worth of product out there in the marketplace, doing stuff, before we see Symbian open source. While Nokia made a brilliant and bold move, it might be too late, because there is enough Linux momentum, especially behind OHA and LiMo, that I think they left that too long.
What about the other player in the closed-source world, Apple with its iPhone?
So you've got the smart phones, the MIDs and now these ultraportables - the $300-400 machines that run GNU/Linux. How do you see that three-way contest panning out?
What is becoming very, very clear is, it's not about voice and it's not about text or email, it's going to be about a true, rich Internet experience. Can a web page be represented on these devices at the same clarity, the same quality, the same speed, as they are on the PC? When I look at YouTube, I don't want to look at a fuzzy, webcam image. I want to see [High Definition] quality on that thing. So, the devices we're seeing today, they're being required to be able to deliver that level of video representation and audio, that's [as good as] my music device and that's as good as my home entertainment system.
In what other embedded sectors Linux becoming important?
I think Apple helped change the game, because everybody wanted their iPod in their car without a bunch of wire striking around. Automobile manufacturers worked on the development cycle that is five to seven years, and all of a sudden the iPod hits and they have one quarter to figure out how to get that thing in there.
This is a whole new business and process problem that the automotive manufacturers had not been in before. They all stood up and said: We don't know how to do this. And then the next new application came in and the next new application and, all of a sudden, they said: There's been a tremendous disruption in the industry; we've got to change the underlying principles how we design these applications. And Linux is clearly the solution for that, because it's all about the application and how extensible can the platform be, and how well can we count on consumer-like speed in an automotive-like marketplace.
The second market that I would say we're seeing in the home. Things like broadband access points - how you get content into the house: that's going Linux now. Every new data standard, Linux is keeping pace with that better than anything else out there.
We're seeing a general theme here. There's a real need for content - I want YouTube and I want cable and I want satellite and I want data. We're seeing those three C's of content, of connectivity, and of complexity. When you have those three things there, Linux is a tremendous solution.
Glyn Moody writes about open source at opendotdotdot.
Security
Deep packet inspection
At its core, the internet is a set of agreements; not just on protocols, but also on practices amongst carriers. Part of what has allowed the explosive growth—in both participants and services—of the internet can be attributed to these agreements. When a new technology like deep packet inspection (DPI) comes along to threaten these long-standing practices, it should be cause for concern.
Internet packets are constructed much like postal mail. There is an envelope with addressing information contained in the packet header and a message which is contained in the data payload portion of the packet. Internet carriers are supposed to make their best effort to deliver a packet based on the information in its header. DPI violates that compact by looking inside the data portion, as the packet is en route to its destination, and making decisions based on that.
There are some potentially valid uses for DPI—network performance monitoring and law enforcement surveillance, perhaps even with a warrant, are two—but the potential for abuse is large. Because network processing has gotten to the point where devices can do more than just observe and record, packets are being modified and generated on-the-fly in a technique known as deep packet processing (DPP).
Various examples of DPI and DPP—generally lumped together as DPI—have been in the news over the last year. Comcast used DPI to try and throttle Bittorrent traffic, while Phorm and NebuAd have used it to rewrite web pages to deliver advertising to unsuspecting users. The DPI problem has gotten enough attention that even various governments have started showing interest.
The designer of User Datagram Protocol (UDP)—the connectionless analog to Transmission Control Protocol (TCP)—David Reed recently testified to the US Congress about DPI. In his testimony [PDF] he outlines numerous technical issues, but the biggest may lead to breaking the fundamental model of internet communication:
We have seen this behavior from internet companies in other guises as well. Verisign and various ISPs have tried redirecting failed DNS queries to pages they control (and generally fill with ads). Once again, that breaks many applications; it functions more or less correctly for web browsing, but other applications depend on receiving proper errors when querying for nonexistent domains.
Because many ISPs hold a near-monopoly on high-speed access in a particular geographical area, they can hold their customers hostage with little concern that competition will come along to force a change. It is this abuse of their monopoly position that tends to interest regulators. In addition, most of their customers are unlikely to notice these "enhancements", making it easier to get away with—at least until those more technically savvy recognize and raise the issue.
Using encrypted communications, HTTPS for web browsing for example, is one defense against DPI. There is some cost associated with encryption, of course, but it is one that is likely to be borne if internet carriers persist in these shenanigans. Another option might be Obfuscated TCP, which is a technique to do backwards-compatible encryption at the packet level. Because it doesn't require all hosts to support it at once—it is negotiated between the endpoints when the connection is established—it could incrementally be added into the arsenal of tools to thwart DPI.
DPI uses techniques that have generally been attributed to the "cracking" community. Things like man-in-the-middle attacks and IP address spoofing are difficult-to-solve security problems for many applications. When the "legitimate" middlemen start manipulating packets using these means for their own benefit, they come very close to—or cross—the line into illegality.
This is a battle about control; our freedoms to communicate and innovate on the internet are at stake. A phone system that randomly inserted advertising into calls or a postal system that kicked back letters whose contents it didn't like as undeliverable would not be considered functioning systems. The internet requires the same treatment.
Security reports
Fortify: open source software is a security risk for businesses
Fortify Software, a vendor of security scanning solutions, has put out a press release saying that open source software poses security risks for businesses, partly as a result of the lack of use of security scanning solutions. There is an associated report available for those who register. "The survey, sponsored by Fortify Software and completed by leading application security consultant Larry Suto, examined 11 of the most common Java open source packages. In order to evaluate the security expertise offered to users and to measure the secure development processes in place in OSS communities, Fortify interacted with open source maintainers and examined documented open source security practices."
The whole thing may be self-serving, but there is also a real point: anybody contemplating putting software into a security-relevant setting should look at how the project handles security issues.
New vulnerabilities
afuse: privilege escalation
Package(s): | afuse | CVE #(s): | CVE-2008-2232 | ||||||||||||
Created: | July 17, 2008 | Updated: | August 21, 2009 | ||||||||||||
Description: | From the Debian alert: Anders Kaseorg discovered that afuse, an automounting file system in user-space, did not properly escape meta characters in paths. This allowed a local attacker with read access to the filesystem to execute commands as the owner of the filesystem. | ||||||||||||||
Alerts: |
|
bacula: password disclosure
Package(s): | bacula | CVE #(s): | CVE-2007-5626 | ||||||||
Created: | July 22, 2008 | Updated: | August 27, 2012 | ||||||||
Description: | The Bacula backup utility can disclose passwords via process listings and plain-text email. See this bug entry for details. | ||||||||||
Alerts: |
|
bitchx: boundary error and temporary file vulnerability
Package(s): | bitchx | CVE #(s): | CVE-2007-4584 CVE-2007-5839 | ||||
Created: | July 22, 2008 | Updated: | July 22, 2008 | ||||
Description: | The bitchx IRC client suffers from a boundary overflow vulnerability (CVE-2007-4584) and a temporary file vulnerability (CVE-2007-5839). It also suffers from a lack of maintenance, so switching to a different client might be a good idea. | ||||||
Alerts: |
|
kernel: null pointer problems
Package(s): | kernel | CVE #(s): | CVE-2008-2812 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Created: | July 21, 2008 | Updated: | December 17, 2008 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description: | Some TTY devices do not check for NULL function pointers before calling them. On most systems, these devices are only accessible to the root user. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Alerts: |
|
kernel: privilege escalation
Package(s): | kernel | CVE #(s): | CVE-2008-3247 | ||||||||||||
Created: | July 22, 2008 | Updated: | October 23, 2008 | ||||||||||||
Description: | The kernel (on x86_64 systems only) used an incorrectly-sized buffer in LDT handling, leading to a potential local privilege escalation; this vulnerability was introduced in 2.6.25. | ||||||||||||||
Alerts: |
|
libxcrypt: incorrect hash algorithm used
Package(s): | libxcrypt | CVE #(s): | CVE-2008-3188 | ||||||||
Created: | July 21, 2008 | Updated: | August 8, 2008 | ||||||||
Description: | libxcrypt can use DES to encrypt passwords when the administrator has selected MD5. | ||||||||||
Alerts: |
|
mantis: multiple vulnerabilities
Package(s): | mantis | CVE #(s): | CVE-2008-2276 | ||||||||||||
Created: | July 23, 2008 | Updated: | September 22, 2008 | ||||||||||||
Description: | The mantis bug-tracking system has a number of bugs of its own, including cross-site scripting, cross-site request forgery, remote code execution, and arbitrary file inclusion. Version 1.1.2 has the fixes. | ||||||||||||||
Alerts: |
|
ruby: integer overflows
Package(s): | ruby | CVE #(s): | CVE-2006-2662 | ||||||||
Created: | July 22, 2008 | Updated: | July 28, 2008 | ||||||||
Description: | The Ruby string processing code contains multiple integer overflows which can be exploited in a denial of service attack with the potential for the execution of arbitrary code. | ||||||||||
Alerts: |
|
Page editor: Jonathan Corbet
Kernel development
Brief items
Kernel release status
The 2.6.27 merge window remains open, so there is no 2.6 development kernel release as of this writing. Patches continue to flow into the mainline repository; see the summary below for the highlights.The 2.6.25.12 stable update is in the review process as of this writing; it should be released sometime around July 24. The proposed update contains 47 patches implementing a wide variety of fixes.
Linus's mid-merge-window reflections
Linus has sent out an announcement that the 2.6.27 merge window is halfway done, and that he's taking a break for a few days. "In the last couple of days I _have_ merged 50+ trees, and while there's been some 'heated discussion' about some of them (you know who you are ;), I'm hoping that we're actually in reasonably good shape even though it's in the middle of the merge window, and that people will test out the snapshot kernels even though I'm not ready to do a -rc1 release."
Kernel development news
Quotes of the week
If you stubbornly refuse to co-operate you'll either break the project or invite a fork/rewrite by someone else if the idea is deemed worthwhile enough.
More quotes of the week
Code cleanups sometimes expose fundamental disagreements about how the code should look; here some veteran kernel hackers show how it's done.
Aside from the fact that PTE_MASK gives no clue as to what's actually being masked, and is misleadingly similar to the functionally entirely different PMD_MASK, PUD_MASK and PGD_MASK, I don't really see what the problem is.
[...]
+/* There's something suspicious about this line: see PTE_PFN_MASK comment. */ #define __PHYSICAL_MASK ((phys_addr_t)(1ULL << __PHYSICAL_MASK_SHIFT) - 1) @@ -19,6 +20,7 @@ /* PTE_PFN_MASK extracts the PFN from a (pte|pmd|pud|pgd)val_t */ +/* This line is quite subtle. See __PHYSICAL_MASK comment above. */ #define PTE_PFN_MASK ((pteval_t)PHYSICAL_PAGE_MASK)
2.6.27 merge window, part 2
As of this writing, just over 6200 changesets have been merged into the mainline git repository since the 2.6.26 release. Merge activity appears to be slowing down somewhat; it appears that most of the major trees have been pulled. Andrew Morton has not yet started to unload the -mm tree into the mainline, though; until that happens, the merge window can be expected to remain open.User-visible changes merged since last week's summary include:
- There are new drivers for
Samsung S3C SD/MMC interfaces,
Atmel Multimedia card interfaces,
Ricoh Bay1Controller cards,
S/390 QDIO controllers,
Renesas SuperH SH7710 and SH7712 Ethernet controllers,
Option HSDPA/HSUPA mobile network devices,
Broadcom BCM57711 Ethernet adapters,
Mikrotik RouterBoard 532 series boards,
Anysee DVB-T/C USB2.0 receivers,
Sensoray 2255 video capture devices,
Siano SMS10xx digital television devices,
SuperH Mobile CEU camera controllers,
Niagara2 hardware random number generators,
HTC Shift (X9500) touchscreens,
iNexio serial touchscreens,
Sahara TouchIT-213 touchscreens,
Xilinx XPS PS/2 controllers,
Maxim MAX7301 GPIO expanders,
HP iLO/iLO2 management processors,
Atheros L1E Gigabit Ethernet adapters,
Marvell XOR DMA engines,
Synopsys DesignWare DMA controllers, and
Intel version 3.0 I/OAT DMA engines.
There is also a new PCI "slot detection driver" which will attempt to
find all PCI slots in the system and create corresponding entries in
/sys/bus/pci/slots/.
- Worthy of note: the "gspca" set of video drivers, long maintained
outside of the mainline kernel tree, has been merged. These drivers
support a large number of video
devices; with their merge, most video camera devices on the market
are supported by Linux.
- The Fujitsu laptop driver has been updated with better hotkey and
backlight support for more Fujitsu models.
- The UBIFS filesystem for
flash-based storage devices has been merged.
- The multiqueue
networking patches have been merged.
- The IA-64 architecture has gained a paravirt_ops implementation to
support virtualization.
- The new directories found at /sys/dev/char and /sys/dev/block contain pointers to sysfs entries for devices organized by device number.
Changes visible to kernel developers include:
- The new suspend and
hibernate infrastructure has been merged, providing a wider set of
callbacks for power management events. The PCI and platform bus
interfaces have been enhanced with support for this new
infrastructure.
- The TTY layer continues to evolve; significant changes include the
introduction of a new tty_port structure meant to hold
information common to all TTY ports and a rework of the line
discipline code.
- The mac80211 code has a new module which can simulate any number of
IEEE 802.11 radios; it is suitable for testing mac80211 functionality
and associated user-space tools.
- There is a new "rfkill" mechanism for unified handling of "radio off"
switches on wireless devices.
- A number of Video4Linux2 format-related callbacks have been renamed to
make them match the names used with the associated buffer types.
In addition, the vidioc_enum_fmt_vbi_cap() callback has been
deprecated and marked for removal in 2.6.28.
- The videobuf layer now has support for controllers which cannot do
scatter/gather I/O.
- The USB "gadget" framework has been massively reworked to provide
better support for composite devices.
- The prototype for device_create() has changed:
struct device *device_create(struct class *class, struct device *parent, dev_t devt, void *drvdata, const char *fmt, ...);
Those who see a resemblance to device_create_drvdata() are right; all in-tree users were converted over to that interface, the old device_create() was removed, and device_create_drvdata() was renamed. For now, a macro makes calls to device_create_drvdata() do the right thing, but that macro will probably go away before the 2.6.27 final release.
- User-space UIO drivers can now write a signed value to the
/dev/uioX device to enable and disable interrupts.
- Debugfs (finally) has a function for removing an entire directory
tree:
void debugfs_remove_recursive(struct dentry *dentry);
As a result, code creating hierarchies in debugfs no longer need remember the dentry of every file they create.
The tail end of the 2.6.27 merge window will be covered in next week's LWN Kernel Page.
Linux-next meets the merge window
Recent LWN articles on the linux-next tree have noted that, while this tree has been working well in its role of identifying merge conflicts between subsystem trees, it has not yet been through a full kernel development cycle. 2.6.27 will be the first kernel release where linux-next was in existence for the entire preceding cycle; in theory, everything which goes into 2.6.27 should have been aged in linux-next first. As the end of the 2.6.27 merge window nears, a look at how linux-next has affected the process seems warranted.One might think that linux-next maintainer Stephen Rothwell would be able to take a break during the merge window; it should mostly be a matter of watching the linux-next tree drain into the mainline. As it happens, the daily linux-next postings (example) suggest a fair amount of scrambling to deal with merge conflicts, build failures, and more. There are a number of reasons for this, one of which being that subsystem trees are merged into the mainline in an order which is completely unrelated to their order in linux-next. Patches which remain in linux-next are being applied to a highly unstable base.
Another interesting phenomenon has been a fair number of patches appearing in linux-next during the merge window. Some of these are actually patches intended for 2.6.28; once maintainers have dumped their 2.6.27 patches into the mainline, they are starting to acquire stuff for the next time around. Stephen has asked them not to do that, requesting that 2.6.28 material not be directed toward linux-next until after the 2.6.27-rc1 release. The goal is that linux-next should be nearly empty when 2.6.27-rc1 comes out.
Other patches, though, are intended for 2.6.27 but simply have not done their time in the linux-next tree. That had led to a certain amount of developer grumpiness at times. It is interesting to note, though, that one of the biggest examples of linux-next avoidance - David Miller's merging of the multiqueue networking code which he had finished writing hours before - has generated relatively few complaints. But various other types of conflicts have generated a steady steam of terse notes from Andrew Morton (who is in the unfortunate position of basing his work on top of linux-next) on how new stuff should have been in linux-next weeks ago.
Another area of, say, colorful conversation has been around the TTY subsystem, currently been subjected to a much-needed thrashing by Alan Cox. Some developers have been unhappy with Alan for merging code which failed to compile, even though those problems had already been identified in linux-next. Alan, instead, has become irritated with other developers who have surprised him with TTY-layer changes of their own, causing Alan's patches not to apply. Alan has some quaint notions about actually testing his patches, so the resolution of this kind of conflict requires the running of a new set of regression tests and such; after this had happened a few times in a row, he started getting a little short-tempered. These issues would appear to have been worked out at this point, but the idea behind linux-next was to keep them from happening in the first place.
Yet another source of occasional merge issues is the rebasing of trees. Rebasing, in git-speak, is the process of modifying the commit history in a repository to cause a series of patches to look like they were written against a later version of the code than they really were. Rebasing can be a useful technique; it generates a series of patches which applies cleanly to the current state of the tree without generating a bunch of unsightly merge commits.
Rebasing can be especially useful in the context of linux-next. If testing turns up a patch which breaks the build, simply committing a fix will leave a period in the history where the kernel cannot be built, and that is bad for people running bisections. With the use of git's history editing features, the offending patch can be fixed in place and all evidence of the mistake disappears. In essence, that embarrassing commit mentioning the Eurasian campaign can be fixed up to properly note that we've always been at war with Eastasia.
But rebasing a repository changes the history (by design), creating, in the process, an entirely new set of commits. Those commits are new code, to the point that any results from testing the older version may no longer apply. The commits also have new names, so any other developer who was using a version of the repository will be shaken off and unable to merge. Issues related to rebasing have come up a couple of times during the merge window, leading Linus to post a series of lectures on the problems that rebasing can cause. It is clearly a tool which must be used with restraint, but occasional use of rebasing can, in the linux-next context, lead to a better final merge. Finding the right balance is something each developer will have to learn.
In the end, the merge window remains a bit of an unruly time. The process of channeling the work of several hundred developers into the mainline over a two-week period is unlikely to ever be an entirely smooth experience. But, for all its glitches, the 2.6.27 merge window has been (so far!) easier than 2.6.26. The presence of the linux-next tree almost certainly has something to do with that. This tree's role continues to evolve, but its benefits are starting to be felt.
Tracing: no shortage of options
Three weeks ago, LWN looked at the renewed interest in dynamic tracing, with an emphasis on SystemTap. Tracing is a perennial presence on end-user wishlists; it remains a handy tool for companies like Sun Microsystems, which wish to show that their offerings (Solaris, for example) are superior to Linux. It is not surprising that there is a lot of interest in tracing implementations for Linux; the main surprise is that, after all this time, Linux still does not have a top-quality answer to DTrace - though, arguably, Linux had a working tracing mechanism long before DTrace made its appearance.Even a casual reader of the kernel mailing list will have noticed that there are a lot of tracing-related patches in circulation at the moment. There are so many, in fact, that it is hard to keep track of them all. So this article will take a quick look at the code which has been posted in an attempt to make the various options a bit clearer.
SystemTap
SystemTap remains the presumptive Linux tracing solution of choice. It is hampered by a few problems, though, including usability issues, a complete lack of static trace points in the mainline kernel, and no user-space tracing capability. On the usability side, we are seeing a few more kernel developers trying to put SystemTap to work and posting about the problems they are having. If one takes as a working hypothesis the notion that, if kernel hackers cannot make SystemTap work, many other users are likely to encounter difficulties as well, then one might conclude that addressing the reported problems would be a priority for the SystemTap developers.
The SystemTap developers do seem to be interested in these reports, which is a good sign. There are other things happening in the SystemTap arena, including the release of version 0.7 on July 15. This release adds a number of new features and tapsets, and a substantial set of examples as well. Meanwhile, Anup Shan has posted an interesting integration of SystemTap and the fault injection framework, allowing tapsets to control fault injection and trace the results.
James Bottomley has been playing some with the SystemTap code; one result of that work is changes to SystemTap's internal relocation code in an attempt to make it more acceptable for mainline kernel inclusion. There can be no doubt that the out-of-tree nature of much of the SystemTap support code has made it harder for that code to progress, so any improvement which makes it more likely that some of this code will be merged is welcome.
Also by James is this patch implementing a new way to put markers into the kernel. The addition of markers (or static tracepoints) has always been problematic in that many of these markers, by their nature, need to go into some of the hottest code paths in the kernel. To support dynamic tracing, these markers need to be available on production systems, so they must work without creating any significant performance regressions. Quite a bit of work has gone into the static marker code which is in the kernel (but mostly unused) now, but some developers are still uncomfortable with putting them into performance-critical paths.
James's patch addresses these concerns by putting the tracepoints entirely outside of the code paths. Rather than add some sort of marker to the code, these markers just make a note of just where in the code the marker is supposed to be; this note is stored in a separate part of the kernel binary. That information is enough for a run-time tool to patch in an actual jump to a tracing function should somebody want to see the information from that tracepoint. An additional benefit is that these markers do not interfere with any optimizations done by the compiler. Other solutions can insert optimization barriers which, while they do make life easier for the tracing subsystem, also affect the speed of the code even when the trace points are not active.
Ftrace
The text above said that the kernel's static tracepoint code is "mostly unused." That would have been better expressed as "completely," except that the 2.6.27 kernel will include a user in the form of the ftrace framework. One of the things which makes ftrace truly unique is that its documentation was not only merged before the code itself, but well before: the 2.6.26 kernel includes the excellent Documentation/ftrace.txt file.
The ftrace (which stands for "function tracer") framework is one of the many improvements to come out of the realtime effort. Unlike SystemTap, it does not attempt to be a comprehensive, scriptable facility; ftrace is much more oriented toward simplicity. There is a set of virtual files in a debugfs directory which can be used to enable specific tracers and see the results. The function tracer after which ftrace is named simply outputs each function called in the kernel as it happens. Other tracers look at wakeup latency, events enabling and disabling interrupts and preemption, task switches, etc. As one might expect, the available information is best suited for developers working on improving realtime response in Linux. The ftrace framework makes it easy to add new tracers, though, so chances are good that other types of events will be added as developers think of things they would like to look at.
Tracepoints
The kernel markers mechanism is meant to be the way that static tracepoints are inserted into the kernel. To that end, a great deal of effort went into making these markers fast; they are, for all practical purposes, a set of no-op instructions until somebody wants to turn one on, at which point the real tracing code is patched into the running kernel. Since they were merged, however, kernel markers have been the subject of a few grumbles.
In particular, kernel markers use a somewhat awkward mechanism to ensure that any arguments passed to the tracing function are interpreted correctly there. Each marker has a printk()-style format string associated with it; that string describes the type of each "argument" (a variable or expression within the code being traced). When tracing code activates a marker, it will supply a function to be called when the marker is hit and a format string describing the arguments that the function expects. The marker code will ensure that both format strings match; otherwise the marker will not be enabled. The problem is that the format string requires extra work to write and is only approximate in its specification of the types involved. These strings can make it clear that a given argument is a pointer, for example, but they say nothing about what type is pointed to.
In response to various efforts to get around this issue, Mathieu Desnoyers (the original author of the kernel marker work) has proposed a new mechanism called tracepoints. They are another way of putting static trace points into the kernel, but with a simpler and more type-safe way of putting the pieces together.
With tracepoints, every trace point must be declared in a header file with a mildly ugly set of macros:
#include <linux/tracepoint.h> DEFINE_TRACE(tracepoint_name, TPPROTO(trace_function_prototype), TPARGS(trace_function_args));
This definition will create a new tracepoint called tracepoint_name. Any function attached to that tracepoint must have a function prototype as provided in the TPPROTO() macro; the names of the associated arguments are provided with TPARGS().
Perhaps this is better understood with an example. The tracepoints patch set includes quite a few static points for use with the LTTng tracing toolkit. There is one called sched_wakeup which fires whenever the scheduler wakes up a process. It is defined with:
DEFINE_TRACE(sched_wakeup, TPPROTO(struct rq *rq, struct task_struct *p), TPARGS(rq, p));
The actual insertion of the tracepoint is a line like this:
trace_sched_wakeup(rq, p);
Note the trace_ prefix added to the supplied name. At this point in the code, a tracing function can be called with rq (the run queue of interest) and p (the process which is waking up) as parameters. Until an actual function is connected to the tracepoint, though, this declaration is essentially a no-op. Connection of a trace function is done through a call to:
void my_sched_wakeup_tracer(struct rq *rq, struct task_struct *p); register_trace_sched_wakeup(my_sched_wakeup_tracer);
The register_trace_sched_wakeup() function (created as part of the DEFINE_TRACE() definition) will connect the supplied trace function to the tracepoint. The fact that the function prototype for the trace function is supplied as part of the tracepoint definition means that the compiler can perform thorough type checking; if the prototypes do not match up, compilation will fail. And that, in turn, should put an end to those embarrassing situations where turning on tracing causes the system to go down in flames.
Interestingly, tracepoints have dispensed with much of the mechanism developed to minimize the runtime impact of kernel markers; in particular, they do not use the "immediate values" code. Profiling has shown that the performance impact of tracepoints is so low that there is little value in the added complexity of runtime patching of kernel code. Still, there are signs that some kernel developers will object to the addition of tracepoints in their current form. Developers want tracing support - but not at the cost of slower performance, even if that cost is hard to measure.
Tracehook
Finally, Roland McGrath recently surfaced with the tracehook patch set. Tracehook has a rather different focus; it is, essentially, a cleanup of the way the kernel handles the ptrace() system call. The tracehook patches try to organize all of the process tracing code (much of which is architecture-dependent) into one place where it can be dealt with as a unit.
Tracehook is meant to be a first step toward the merging of a new version of the utrace code. Utrace has long been planned as the successor to the current ptrace() implementation, which has few admirers. But utrace has encountered a number of difficulties, so its path into the kernel has been slow. It disappeared from the lists entirely for a while, but a new version of the patches is said to be coming soon; Roland notes that he expects "some vigorous feedback" when that happens.
The real importance of the ptrace() rework is that it is the path toward integrated tracing of kernel- and user-space events. And that, of course, is one of the biggest features offered by DTrace which is not yet available in SystemTap. Getting user-space tracing into the kernel - especially if it could work with the tracepoints already being inserted into some applications for DTrace - would be a major step forward for Linux. A lot of people will be watching when this patch set comes around again.
Meanwhile, Roland would like to see the tracehook code merged for 2.6.27. He is late to the party, though, and this code has not done any time in linux-next. So it is not yet clear whether tracehook will go in before the merge window closes, or whether, instead, it will have to wait for 2.6.28.
In summary...
As can be seen, there is a lot happening in the area of tracing support for Linux. Tracing, it seems, is an idea whose time has come, at last. If the pieces described here can be merged and integrated into a unified framework, and if it can all be made sufficiently easy to use, the time for "DTrace envy" will come to an end. Those "ifs" are not small ones, though. There is quite a bit of work to be done yet; hopefully the current level of energy will remain until the job is done.
Patches and updates
Kernel trees
Architecture-specific
Core kernel code
Development tools
Device drivers
Documentation
Filesystems and block I/O
Networking
Security-related
Virtualization and containers
Miscellaneous
Page editor: Jonathan Corbet
Distributions
Notes from the Fedora project
The Fedora folks have a lot of important problems on their mind. As part of that, there is currently a tense election underway - to choose the codename for the Fedora 10 release. There's a list of nine suitably silly, Red-Hat-legal-approved names to choose from. Your editor, fresh from another failed Rawhide update, suggests voting for "terror." Even though Rawhide hasn't been that terrible recently.Another election - this one for the membership of the Fedora Engineering Steering Committee (FESCO), just finished. FESCO members this time around will be Bill Nottingham, Kevin Fenzi, Dennis Gilmore, Brian Pepple, David Woodhouse, Jarod Wilson, Josh Boyer, Jon Stanley and Karsten Hopp. For the curious, the FESCO mission is:
The new feature aspect of the job could be interesting in the near future; there has been some clear confusion on what constitutes a new feature, as compared to a mere "enhancement" which does not involve FESCO. The surprising (to some) replacement of RPM in Rawhide was one of those ambiguous issues which brought this question to the fore. There is now an enhanced draft feature policy up for review which, it is hoped, will clarify the situation.
Back in June, the results from the Fedora board election raised some concerns about the process. One reaction to these concerns can now be seen in this proposal for term limits for board members. The reasoning behind this proposal is explained thusly by project leader Paul Frields:
So the full-time Fedora folks are simply too prominent, to the point that they need to be eased off the stage after a couple of terms on the board to make room for everybody else. Of course, there's a couple of exceptions. The Fedora project leader, not being an elected member of the board, has no such limits. More to the point, though: term limits would not apply to those board members appointed by Red Hat. The reasoning here is:
As of this writing, there has not been a whole lot of discussion of the term limit proposal; opinions which have been posted are not entirely positive. Fedora project members will want to consider whether this proposal can achieve its stated goal. It would be unfortunate if an up-and-coming outsider - with associated institutional memory - got term-limited off the board just as they were really hitting their stride.
Finally, OLPC enthusiasts may want to have a look at the newly-formed OLPC special interest group. This group is working to make the Fedora distribution (already shipped by OLPC) as well suited to that platform as possible. One of the results should include a special Sugar "spin" of Fedora. There is a mailing list available for interested people to join.
New Releases
BLAG 90001 (oxygen) Released
BLAG 90001 is out; it is mainly an update for various "annoying issues" in BLAG 90000. "In sum, this release contains less suck." It has 97 package updates in all.
CentOS 5 i386 - The CentOS-5.2 i386 Live CD is released
The CentOS Development team has announced the availability of the CentOS 5.2 i386 Live CD. The live CD can be used as a workstation or as a rescue CD.Dragonfly BSD 2.0 released
The Dragonfly BSD 2.0 release is available. The big change would appear to be the HAMMER filesystem, which supports snapshots, no-fsck crash recovery, mirroring, and more.Updated Fedora 9 Re-Spin released
A new version of the Fedora 9 respin has been released by the Fedora Unity Project. "Fedora Unity has taken up the Re-Spin task to provide the community with the chance to install Fedora with recent updates already included. These updates might otherwise comprise more than 1.91 GByte of downloads for a full install, and an additional 265.69 MByte for pulled in dependencies."
Distributions: GNUSTEP CD 1.9 released
The GNUstep project has released version 1.9 of its live CD, which includes many GNUstep software packages for a development environment and more.NimbleX 2008 released
NimbleX is a distribution, based on Slackware, intended to provide a useful desktop system with a 200MB image suitable for burning on mini-CDs. The 2008 release is out; see this page for a discussion of features in this release.Webconverger 3.2 released
Webconverger uses Debian Live technology to provide a Web platform for kiosks, thin clients, or anywhere else you want a secure, dedicated web browser. Webconverger 3.2 with Iceweasel 3 is available for download.
Distribution News
Debian GNU/Linux
Release Update: freeze, architecture requalification
Luk Claes presents a Lenny release update. Click below to find out more about the Freeze status, Architecture status, Release goals, BSP Marathon, the Release schedule and Tricks from the Release Team.
Fedora
Fedora considering a new privacy policy
A new draft privacy policy for the Fedora Project has been posted for discussion. This policy has been written to address some concerns about the Red Hat privacy policy currently in use. Discussion is happening on the Fedora advisory board list.Fedora Board Recap 2008-JUL-15
Click below for a summary of the July 15th meeting of the Fedora Board. The main topics are Mingw and Release Stability.Announcing the Fedora OLPC Special Interest Group
The formation of the Fedora OLPC Special Interest Group has been announced. Its mission is to provide the OLPC project with a strong, sustainable, scalable, community-driven base platform for innovation.Fedora Talk launches
The Fedora Project has announced the launch of Fedora Talk, an Asterisk-based telephony system. "Fedora contributors can set up ad hoc conferences, further deepening social connections and creating a more efficient method for communication when working on certain projects. In the future, we hope to add web conference capabilites for anyone with VoIP access. There are other possibilities to explore with Fedora Talk as well. What if, in the future, a Fedora volunteer could claim an hour of time to run a VoIP phone and answer user or contributor questions?"
SUSE Linux and openSUSE
openSUSE 11.0 Survey online
The openSUSE developers would like to know what you think about openSUSE 11.0. If you have been using openSUSE 11.0 consider taking a few minutes to fill out this survey.openSUSE Kernel bug squashing day
The first openSUSE Kernel bug squashing day has been set for Wednesday, July 30, 2008.
Distribution Newsletters
Ubuntu Weekly Newsletter Issue #100
The Ubuntu Weekly Newsletter for July 19, 2008 covers: UWN 100th Issue, UWN Past & Present Staff Podcast, Mark Shuttleworth podcast, Comments from Past & Present Editors, Joining the UWN staff, New Ubuntu QA team, Call for nominations for Tech Board, Alpha 3 soft freeze, Next UDS, Peru LoCo gives Ubuntu presentation at San Marcos University, Ubuntu Ireland gets local press coverage, Ubuntu Nicaragua Continues with TV shows, New Leader for Ubuntu France, Ubuntu-UK podcast #10, and much more.OpenSUSE Weekly News/31
This issue of the OpenSUSE Weekly News covers the next Helping Hands Event, www.opensuse-tutorials.com, Hubert Mantel: openSUSE Gets the JeOS, People of openSUSE: Bryen Yunashko, Pascal Bleser: Reporting Packman package bugs, Jigish Gohil: New Compiz plugins and more.Fedora Weekly News Issue 135
This issue of the FWN looks at FESCo elections, FUDCon Brno, Release Engineering Email Trac Queue Disabled, plus Planet Fedora articles Fedora at RoboCup, FUDCon Brno, Privacy policy update, Beat writers needed, Workarounds, Python dictionary optimizations, SELinux and Security in the 2.6.26 Kernel, and Steampunk photography - a GIMP tutorial, and much more.DistroWatch Weekly, Issue 262
The DistroWatch Weekly for July 21, 2008 is out. "Things picked up a bit this week, especially in developmental releases. In the news this week Mandriva announces their new netbook OS and Ubuntu geared up their community QA team. Our feature story this week was contributed by Steven Lake of www.raiden.net. Steven is a versatile writer penning software and hardware reviews, howtos, and opinions. I think he even has a book or two going on his site. We're pleased he's submitted an in-depth look at the latest Sabayon Linux for us today. This week in reviews of lesser covered distributions includes Myah OS, Blag 90000, and Simplis GNU/Linux."
Distribution meetings
FUDCon Brno 2008
The next FUDCon will take place in Brno, Czech Republic, from September 5 - 7, 2008. "The main conference day and social event will be on Saturday (to attract the most people), with hackfest days on Friday and Sunday. FUDCon is always free to attend, no matter where in the world it is located."
Page editor: Rebecca Sobol
Development
The Elisa Media Center project
Elisa Media Center is a cross-platform (Windows Vista, XP, and Linux, eventually Mac) media management project that is sponsored by Fluendo. The company is also known for its sponsorship of the GStreamer multimedia framework. The Elisa project's home page explains:
Elisa can manage movies, photographs, and music. It can work with media from locally connected peripherals, other machines on the LAN and the Internet. The software includes support for IR remotes and touchscreens. Elisa uses a modular design with support for plugins which give the system access to various media sites and other information. A fairly out of date feature list explains the capabilities in more detail. A good way to see the capabilities of the software is to take a look at the flashy demo video and screenshots.
Following on heels of the recently announced version 0.5.1 (the initial public 0.5 series release), version 0.5.2, entitled "Good news everyone" was announced this week:
![[Elisa Media Center]](https://static.lwn.net/images/ns/elisalogo.png)
The Elisa source code is available for download, packaged versions for Ubuntu and Debian should appear soon.
System Applications
Database Software
Drizzle: a lighter MySQL
MySQL founder Michael Widenius announces the launch of the Drizzle project. "Drizzle is a smaller, slimmer and (hopefully) faster version of MySQL; Features that the broad Drizzle community does not want or need are now removed or in the process of being removed (This includes stored procedures, views, triggers, grants, some non-pluggable storage engines and more)." It also, apparently, is intended to be developed in a more community-oriented manner, "
A bit like Fedora does to RedHat."
Elixir 0.6.0 released
Version 0.6.0 of Elixir has been announced. "Elixir is a declarative layer on top of the SQLAlchemy library. It is a fairly thin wrapper, which provides the ability to create simple Python classes that map directly to relational database tables (this pattern is often referred to as the Active Record design pattern), providing many of the benefits of traditional databases without losing the convenience of Python objects."
PostgreSQL Weekly News
The July 20, 2008 edition of the PostgreSQL Weekly News is online with the latest PostgreSQL DBMS articles and resources.
Filesystem Utilities
Allmydata.org 1.2 released
Version 1.2 of Allmydata.org, a secure, decentralized, fault-tolerant filesystem, has been announced. "The Hack Tahoe! contest has already paid off in finding a subtle flaw in our crypto scheme."
pam_mount: 0.43 release (SourceForge)
Version 0.43 of pam_mount has been announced. "pam_mount is a Pluggable Authentication Module that can mount volumes for a user session (login). Supports mounting local filesystems of any kind the normal mount utility supports, with extra code to better support CIFS, FUSE, various crypto, and more. davfs support got removed, fsck patches been incorported and the documentation has been updated."
TestDisk and PhotoRec 6.10 released
Version 6.10 of TestDisk & PhotoRec is out. "TestDisk & PhotoRec 6.10 comes with severals improvements: - Report disk manufacturer and model under Windows and Linux (Only Linux was supported in 6.9) - Under Linux, /dev/mapper/* and /dev/md? are now listed with the harddisks. - Now both OS and compiler versions are recorded in the log file. This new TestDisk version can - undelete files and directories for FAT filesystem, - undelete files for ext2 filesystem, - copy files from ext2/ext3 partitions. These feature was already available for FAT and NTFS."
Security
WSFuzzer: Version 1.9.3 is out (SourceForge)
Version 1.9.3 of WSFuzzer has been announced. "WSFuzzer is a fuzzing penetration testing tool used against HTTP SOAP based web services. It tests numerous aspects (input validation, XML Parser, etc) of the SOAP target. It is only to be used against targets that have granted permission to be tested. 1.9.3 brings some new features to the existing set. See the release notes for the details. Most of the new features were inspired by suggestions from Paco Hope, many thx to him for that."
Web Site Development
Blosxom: 2.1.0 released (SourceForge)
Version 2.1.0 of Blosxom has been announced, it has some new capabilities and bug fixes. "Blosxom is a lightweight yet feature-packed weblog application designed from the ground up with simplicity, usability, and interoperability in mind."
Segue CMS: 1.9.4 Released (SourceForge)
Version 1.9.4 of Segue CMS has been announced. "Segue is an open source collaborative content management system designed for e-learning that combines the ease of use of course management systems with the flexibility of weblogs for creating various types of sites including course, news, and journal. This release fixes bugs in local link tokinization to make it more accurate, consistent and thorough."
Miscellaneous
OpenSSH 5.1 released
OpenSSH 5.1 is out. There's a long list of new features in this release, including an experimental mechanism for displaying host keys as ASCII art. A new SSH usage survey has also been posted; interestingly, it shows OpenSSH usage dropping slightly over the last couple of years.
Desktop Applications
Desktop Environments
GNOME 2.23.5 released
Version 2.23.5 of the GNOME desktop has been announced. "Here's the first release after GUADEC. Istanbul. It was a great place. And some people actually had time to visit the beautiful city. Or to take a turkish bath. Sounds like a cool program, doesn't it? Of course, it was not only about this -- there were tons of interesting discussions, lots of sessions around various topics, etc. But you know what? The GNOME contributors actually managed to continue hacking on their modules. Amazing. Those people never stop. I guess it shows how passionate they are! So they made changes that are now visible in this latest version of GNOME. And if you look closely, you can feel some turkish love in the air around this release! Cool stuff."
GNOME Software Announcements
The following new GNOME software has been announced this week:- Accerciser 1.3.5 (new features and translation work)
- atk 1.23.5 (bug fixes)
- at-spi 1.23.5 (bug fixes)
- bug-buddy 2.23.5 (new feature, bug fixes and translation work)
- cheese 2.23.5 (bug fixes and translation work)
- Clutter 0.8 (new feature)
- Conduit 0.3.12 (new features, bug fixes and translation work)
- Deskbar-Applet 2.23.5 (new features, bug fixes and translation work)
- Evince 2.23.5 (new features, bug fixes and translation work)
- Evolution 2.23.5 and related (new features, bug fixes and translation work)
- Eye of GNOME 2.23.5 (new features, bug fixes and translation work)
- Gcalctool 5.23.5 (bug fixes and translation work)
- GLib 2.16.5 (bug fixes and translation work)
- GLib 2.17.4 (new features, bug fixes and translation work)
- glibmm 2.17.1 (new features and bug fixes)
- Gnome Games 2.23.5 (new features, bug fixes and translation work)
- gnome-keyring 2.23.5 (new features and bug fixes)
- Gossip 0.30 (bug fixes and translation work)
- GTK+ 2.13.5 (new features, bug fixes and translation work)
- gtkmm 2.13.4 (new features)
- gtkmm 2.13.5 (new features and bug fixes)
- mousetweaks 2.23.5 (new features, bug fixes and translation work)
- Orca 2.23.5 (bug fixes and translation work)
- Seahorse 2.23.5 (new features, bug fixes and translation work)
KDE 4.1 release candidate out for testing (KDE.News)
A release candidate for KDE 4.1 has been announced. "Today, we are passing the last milestone on the way to KDE 4.1, a release that will be suitable for a larger audience than 4.0 has been. While it is not yet up to the features that people are used to from KDE 3.5, KDE 4.1 provides a significant amount of improvements over KDE 4.0, which some said was a bit of a bumpy ride."
KDE Software Announcements
The following new KDE software has been announced this week:- Amarok 1.83 Svn 832014 (unspecified)
- cb2Bib 1.0.2 (new features and bug fixes)
- Darkroom 1.0 (unspecified)
- digiKam 0.9.4 (new features and bug fixes)
- Firewall Builder 3.0 beta rev 393 (unspecified)
- KDE3TO4 0.0.1 (initial release)
- KDE3TO4 0.0.2 (unspecified)
- KIPCalc 0.9.6 (unspecified)
- Lampp Panel v0.43b (bug fix)
- LilyKDE 0.6.1 (new features, bug fixes and translation work)
- MDic Dictionary 0.6.1(unspecified)
- MPlayerThumbs 1.1 (new features)
- nmapsi4 0.1 (initial release)
- Phonon Xine TNG 0.2.0 (bug fixes)
- QtiPlot 0.9.7 (new features and bug fixes)
- Qtractor 0.2.0 (new features and bug fixes)
- QTrans 0.2.0.8 (new feature)
- SMILE 0.4.0 (new features, bug fixes and translation work)
- SMILE 0.4.1 (bug fixes and translation work)
- SMILE 0.4.2 (unspecified)
- SMILE 0.4.3 (new features, bug fixes and translation work)
- Soprano 2.1 (new features and bug fixes)
- synonym 0.2 (new features)
- ttyutils 1.2.5 (unspecified)
- ufrb-kde 0.2.2 (new features)
- Zhu3D 4.0.8 (new features and bug fixes)
Xorg Software Announcements
The following new Xorg software has been announced this week:- libxcb-1.1.90.1 (new features and bug fixes)
- pixman 0.11.8 (new features and bug fixes)
- xcb-proto 1.2 (new features and bug fixes)
- xf86-video-vmware 10.16.3 (bug fixes)
- xorg-server 1.4.99.906 (new features and bug fixes)
Games
Dungeon Crawl Stone Soup 0.4.1 released (SourceForge)
Version 0.4.1 of Dungeon Crawl Stone Soup has been announced. "Dungeon Crawl Stone Soup is a free rogue-like game of exploration and treasure-hunting. Stone Soup is a continuation of Linley's Dungeon Crawl. It is openly developed and invites participation from the Crawl community. 0.4.1 fixes some serious bugs found and diligently reported by various players for 0.4."
GUI Packages
wxPython 2.8.8.1 released
Version 2.8.8.1 of wxPython, a GUI toolkit for Python, has been announced. This release adds some new capabilities and fixes some bugs.
Music Applications
Qtractor 0.2.0 is out
Version 0.2.0 of Qtractor has been announced, it includes several new features and bug fixes. "Qtractor is an audio/MIDI multi-track sequencer application written in C++ with the Qt4 framework."
Office Suites
KOffice Releases Ninth Alpha of KOffice 2.0 (KDE.News)
KDE.News looks at new developments to the KOffice 2.0 office suite. "With KDE4 becoming more stable by the week, KOffice development is picking up at a fast pace and developers who previously had trouble keeping up are now getting active again, leading to a much increased rate of commits for KOffice. Both the NLnet sponsored Girish Ramakrisnan, who is working on OpenDocument support, and the KOffice Google Summer of Code students are delivering solid work."
Web Browsers
Firefox 3.0.1 released
Version 3.0.1 of the Firefox web browser has been announced. "As part of Mozilla Corporation's ongoing stability and security update process, Firefox 3.0.1 is now available for Windows, Mac, and Linux for free download from http://getfirefox.com/. We strongly recommend that all Firefox users upgrade to this latest release."
Miscellaneous
LWN Comment Features Update
fancyLWNComments is a Greasemonkey script that makes comment threads a bit more pleasant. It has been updated to work with the recent site changes at LWN.Chandler Desktop 1.0-rc1 released
Version 1.0-rc1 of Chandler Desktop has been announced. "The Chandler Project is an open source, standards-based information manager designed for personal use and small group collaboration." See the blog posting for release details.
Languages and Tools
Caml
Caml Weekly News
The July 22, 2008 edition of the Caml Weekly News is out with new articles about the Caml language.
Python
Python 2.6b2 and 3.0b2 released
Versions 2.6b2 and 3.0b2 of Python have been announced. "Please note that these are beta releases, and as such are not suitable for production environments. We continue to strive for a high degree of quality, and these releases are intended to freeze the feature set for Python 2.6 and 3.0. From now until the planned final releases in October 2008, we will be fixing known problems and stabilizing these new Python versions. You can help by downloading and testing them, providing feedback and hopefully helping to fix bugs. You can also use these releases to determine how changes in 2.6 and 3.0 might impact you."
Version Control
GIT 1.5.6.4 released
Version 1.5.6.4 of the GIT distributed version control system has been announced, it features a number of bug fixes.
Miscellaneous
once:radix: version 1.0 released (SourceForge)
Version 1.0 of once:radix has been announced. "once:radix is a Rapid Application Development system for Intranet and eXtranet environments. Create advanced database-driven web applications that require no expertise in the underlying technologies. Just point and click with pixel-perfect precision. once:radix - the world's first browser-based Rapid Application Development platform for Intranet and eXtranet environments - was released at OSCON 2007. After 12 months of intensive development, once:technologies celebrates the first anniversary of its launch with the release of once:radix version 1.0."
Page editor: Forrest Cook
Linux in the news
Recommended Reading
The Death of Google's Patents (Patently-O)
The Patently-O weblog has a detailed look at a couple of US Patent and Trade Office rulings which could change the software patent game significantly. "If the PTO's test is followed, the crucial question for the vitality of patents on computer implemented inventions is whether a general purpose computer qualifies as a 'particular' machine within the meaning of the agency's test. In two recent decisions announced after the oral arguments in the Bilski case, Ex parte Langemyr (May 28, 2008) and Ex parte Wasynczuk (June 2, 2008), the PTO Board of Patent Appeals and Interferences has now supplied an answer to that question: A general purpose computer is not a particular machine, and thus innovative software processes are unpatentable if they are tied only to a general purpose computer." (Thanks to Duncan).
Linux - a disruptive technology? (IT Pro)
IT Pro considers whether Linux or the GPL is more of a disruptive technology. "Linux itself does not represent any great departures from previous technologies, but has led a technological revolution that is predicated on free software licensing. The open source development model, which is facilitated by the GNU General Public License (GPL), represents a challenge and an opportunity to industry to rethink the way that information and technology is used and shared between individuals and organisations, and in some sectors - notably the financial services sector - the challenge appears to have been accepted. The disruptive technology is the license and its distinctive inversion of copyright law."
Trade Shows and Conferences
Gnome conference - breaking new ground, starting from Istanbul (Heise)
Heise reports from GUADEC. "Gnome co-founder Frederico Mena-Quintero concentrated on the traditional document-centred desktop. Whilst users have no problems with emails, chat or music, they often have trouble finding their documents. Rather than a folder view, he espouses a journal, which shows documents sorted chronologically. According to Mena-Quintero, the idea is nothing new, but with a sensible GUI and in tandem with functions such as tags, it could offer significant improvements for users."
The SCO Problem
Judge Kimball Rules at Last! (Groklaw)
Groklaw has the ruling in SCO V. Novell. "I haven't read it yet myself, just quickly skimmed it enough to see that SCO owes Novell some money ($2,547,817 plus interest probably -- SCO can oppose -- from the Sun agreement) and it had no right to enter into the Sun agreement, but it did have the right to enter into the Microsoft and other SCOsource agreements."
SCO - Linux' Worst Nightmare Is Back (OpenSource Magazine)
It is with some trepidation that your editor points out this OpenSource Magazine article, which might better be titled "Maureen O'Gara is back." But it is bizarrely different view of the ruling in SCO v. Novell; it's worth knowing that this kind of thought is out there. "The court also said Novell couldn't run interference for Linux and stop SCO from seeking royalty payments for alleged UnixWare and OpenServer infringement by Linux users under its infamous SCOsource licensing program. Armed with that decision, it's merely a matter of time before SCO starts seeking those payments."
Companies
Google's Android platform: not so open after all (ars technica)
Ars Technica takes Google to task for its management of the Android program. "Google vowed that its Linux-based Android mobile platform would empower enthusiasts and amateur developers, but today we have seen compelling evidence that this is an empty promise. Third-party Android application developers, who have grown increasingly frustrated with the lack of SDK updates, were shocked to discover that Google has been secretly making new versions of the Android SDK available to the Android Developer Challenge (ADC) finalists under non-disclosure agreements."
Interviews
Linus Torvalds, Geek of the Week (simple-talk)
Simple-talk has an interview with Linus Torvalds. "But what can make a big deal to what is the best way of doing things is simply hardware changes or changes in what users do and how they interact with their computers. And while I don't see any big fundamental shift in how things are done, I think that is ultimately what may make Linux obsolete. -not in the near future, though. Software and hardware have an amazing inertia, and ways of doing things tend to stay around for decades. So I'm not exactly worried."
Miscellaneous
Mono man accuses Mac Gtk+ fans of jeopardizing Linux desktop (the Register)
the Register reports on recent comments by Miguel de Icaza concerning the future of GTK+. "Miguel de Icaza has criticized plans for the next GNU Gnome cross-platform environment that risks damaging the Linux desktop ISV ecosystem by focusing on the Mac. De Icaza, leading the Mono and Moonlight cross-platform .NET projects at Novell, has warned a "new crop" of developers pushing plans for Gtk+ 3 risk "throwing away years of work" on Gtk+. They're also failing to recognize the value of having an ISV ecosystem working to put Gnome on Linux. Gtk+ is the tool set for building the Gnome graphical user interface, with version three the next planned major update."
Page editor: Forrest Cook
Announcements
Non-Commercial announcements
Today's SFLC/BusyBox target: Extreme Networks, Inc.
The Software Freedom Law Center has announced the filing of a GPL-infringement lawsuit against Extreme Networks Inc. "According to the complaint, SFLC contacted Extreme Networks in February, but the company continues to distribute BusyBox in violation of the GPL. The complaint requests that an injunction be issued against the defendant and that damages and litigation costs be awarded to the plaintiffs."
BusyBox developers and Supermicro agree to end GPL lawsuit
The Software Freedom Law Center has announced that the BusyBox Developers and Supermicro have agreed to end a GPL Lawsuit involving copyright infringement. "The Software Freedom Law Center (SFLC) today announced that an agreement has been reached to dismiss the GNU General Public License (GPL) enforcement lawsuit filed by SFLC against Super Micro Computer, Inc. on behalf of two principal developers of BusyBox."
Commercial announcements
MontaVista's carrier grade Linux complies with three key specs
MontaVista has announced achieving three levels of certification for its carrier grade Linux. "MontaVista Software Inc., a leader in embedded Linux commercialization, announced that its Linux Carrier Grade Edition (CGE) 5.0 has registered compliance with the Linux Foundation's Carrier Grade Linux (CGL) 4.0 specification, has earned Linux Standard Base (LSB) 3.0 certification, and is Internet Protocol version 6 (IPv6) logo certified. This achievement makes MontaVista the only Linux distribution in the world to comply with the three key requirements issued by the industry's major standards bodies, demonstrating that MontaVista Linux CGE interoperates with industry software and hardware, and meets the rigorous demands of today's carrier infrastructures."
Openmoko Signs Koolu to Distribute Neo FreeRunner Mobile Phone
Openmoko has announced a partnership with Koolu. "Openmoko, creator of the first completely open mobile computing platform, today announced an agreement with Koolu Inc. a Canadian-based company, to distribute the Freerunner Open Source mobile phone in all of the Americas, the United Kingdom and the European Union with plans to expand globally through local partners."
Sun's Web Stack
Sun has announced the availability of the Sun Web Stack, its own version of Apache, MySQL, and PHP. "Sun offers a new recipe for success - the Solaris OS + AMP (Solaris 10 OS, Apache, MySQL, and PHP). For customers committed to the open AMP stack, this 'recipe' provides the same Web applications they know and use, but on a more secure open-source platform with greater scalability."
Trinity Audio Group launches Indamixx portable digital audio workstation
Trinity Audio Group has announced the Indamixx, an audio workstation built on the Samsung Q1 Ultra platform. "Trinity Audio Group Inc. announces today Indamixx, a full featured Linux hand held studio providing a mobile recording environment, allowing users to record, edit, mix, DJ and publish songs or sound files from the field or on the go. Ideal for Producers, Remixers, and DJs. Finally, you can take your studio with you! Pre-loaded software, easy updating and no driver hassles, makes Indamixx an instant audio creation companion."
Webreach/Medsphere Announce Strategic Partnership (LinuxMedNews)
LinuxMedNews reports on a new Webreach/Medsphere strategic partnership. "Medsphere Systems Corporation, the leading provider of Open Source healthcare IT solutions, today announced a partnership with WebReach, Inc., a premier healthcare IT consultancy and creator of Open Source health IT solutions, for comprehensive support of Medsphere's OpenVista electronic health record (EHR). Through Mirth, WebReach's healthcare messaging integration engine, Medsphere creates standard interfaces for a hospital's existing and proprietary applications, enabling disparate patient data systems to efficiently exchange information."
New Books
Sams publishes Teach Yourself C++ in One Hour a Day
Sams has published the book Teach Yourself C++ in One Hour a Day by Jesse Liberty, Siddhartha Rao and Bradley L. Jones.XSLT, Second Edition - New from O'Reilly
O'Reilly has published the book XSLT, Second Edition by Doug Tidwell.
Resources
ActiveState debunks open-source software myths
ActiveState has announced a new white paper [pdf]. "ActiveState released a white paper today that explores and debunks some common misconceptions about open source software and, in particular, dynamic languages like Perl, Tcl and Python. Entitled "10 Myths About Running Open Source Software in Your Business", the white paper was written by open source experts at ActiveState, a leading provider of tools and business solutions for open source dynamic languages."
Contests and Awards
announcing the Hack Tahoe! contest
The Hack Tahoe! contest has been announced. "We have created and deployed an implementation of the Least-Authority Filesystem -- Tahoe v1.1 -- which we believe provides these strong security properties. However, we know that there is no substitute for peer review, and so we are challenging the hackers of the world to prove us wrong. If you find a major security flaw in the design of the Least-Authority Filesystem, or in the implementation of Tahoe, then you win a customized t-shirt with your exploit and a big "Thank you" from us printed on the front."
Python game programming challenge in September
The next PyWeek Python game programming challenge will take place on September 7-14, 2008. "The PyWeek challenge invites entrants to write a game in one week from scratch either as an individual or in a team. Entries must be developed in Python, during the challenge, and must incorporate some theme chosen at the start of the challenge."
Education and Certification
LPI features "new look" at LinuxWorld San Francisco
The Linux Professional Institute will feature a new look at the LinuxWorld San Francisco conference. "This year LPI will share an information kiosk with organizers of LinuxWorld Expo on the registration floor of the event at the Moscone Center. "We are pleased to be part of the initial conference delegate "welcome" area for LinuxWorld. This enhanced visibility recognizes LPI's leadership role amongst individual Linux professionals," said Jim Lacey, President and CEO of LPI. LPI alumni and new candidates are invited to visit LPI staff at the information kiosk and bring their LPI ID to receive an LPI "Tux"".
Meeting Minutes
May and June PSF Board meeting minutes available
The minutes from the May and June 2008 Python Software Foundation board meetings have been announced.
Calls for Presentations
Linux Plumbers Conference proposal deadline extended
The Linux Plumbers Conference (September 17 to 19, Portland) is still looking for a few speakers for the event, so the proposal deadline has been extended to the end of this month. "We are looking for proposals from knowledgeable speakers on timely technical topics related to core Linux software - kernel, utilities, graphics, libraries, etc. The ideal proposal will address a specific technical problem or opportunity and suggest solutions. Proposals targeting issues which cross sub-system boundaries - such as power management and suspend/resume - are especially encouraged."
Upcoming Events
ekoparty security trainings announcement
ekoparty will take place in Buenos Aires, Argentina on October 2-3, 2008. "What is ekoparty? It's a one of a kind event in South America; an annual security conference held in Buenos Aires where security specialists from all over Latin America (and beyond) have the chance to get involved with state-of-art techniques, vulnerabilities and tools in a relaxed environment the like of which has not been seen before."
FUDCon Brno 2008
FUDCon Brno 2008 has been announced. "The next FUDCon will take place in Brno, Czech Republic, from September 5 - 7, 2008. The main conference day and social event will be on Saturday (to attract the most people), with hackfest days on Friday and Sunday. FUDCon is always free to attend, no matter where in the world it is located."
Events: July 31, 2008 to September 29, 2008
The following event listing is taken from the LWN.net Calendar.
Date(s) | Event | Location |
---|---|---|
August 1 | LLVM Developers' Meeting | Cupertino, CA, USA |
August 3 August 9 |
DebCamp 2008 | Mar del Plata, Argentina |
August 4 August 7 |
LinuxWorld Conference & Expo | San Francisco, CA, USA |
August 9 August 16 |
Akademy 2008 | Sint-Katelijne-Waver, Belgium |
August 9 August 17 |
Linuxbierwanderung (Linux Beer Hike) | Samnaun/Compatsch, Switzerland |
August 10 August 16 |
Debian Conference 2008 | Mar del Plata, Argentina |
August 11 August 15 |
SAGE-AU'2008 | Adelaide, Australia |
August 12 August 14 |
Flash Memory Summit | Santa Clara, CA, USA |
August 13 August 15 |
YAPC::Europe 2008 | Copenhagen, Denmark |
August 18 | Debian Day | Buenos Aires, Argentina |
August 19 August 24 |
SciPy 2008 Conference | Pasadena, CA, USA |
August 20 August 22 |
Jornadas Regionales de Software Libre | Buenos Aires, Argentina |
August 23 August 24 |
FrOSCon 2008 | Saint Augustin, Germany |
August 26 August 29 |
WebGUI Users Conference 2008 | Madison, WI, USA |
August 27 August 30 |
Drupalcon Szeged 2008 | Szeged, Hungary |
August 28 August 30 |
Utah Open Source Conference 2008 | Salt Lake City, UT, USA |
September 2 September 4 |
RailsConf Europe 2008 | Berlin, Germany |
September 5 September 7 |
FUDCon Brno 2008 | Brno, Czech Republic |
September 6 September 7 |
DjangoCon 2008 | Mountain View, CA, USA |
September 7 September 10 |
Workshop on Open Source Software for Computer and Network Forensics | Milan, Italy |
September 7 September 14 |
Python Game Programming Challenge | Online |
September 8 | Encontro Nacional de openSUSE | Porto, Portugal |
September 9 September 11 |
EFMI STC 2008 | London, England |
September 12 September 14 |
The UK Python Conference | Birmingham, England |
September 15 September 18 |
ZendCon PHP 2008 | Santa Clara, CA, USA |
September 15 September 16 |
Linux Kernel Summit 2008 | Portland, OR, USA |
September 16 September 19 |
Web 2.0 Expo | New York, NY, USA |
September 17 September 19 |
The Linux Plumbers Conference | Portland, OR, USA |
September 18 September 19 |
Italian Perl Workshop | Pisa, Italy |
September 19 September 20 |
Maemo Summit 2008 | Berlin, Germany |
September 20 | Celebrating Software Freedom Day in Riga, Latvia | Riga, Latvia |
September 22 September 25 |
Storage Developer Conference 2008 | Santa Clara, CA, USA |
September 23 September 25 |
4th International Conference on IT Incident Management and IT Forensics | Manheim, Germany |
September 24 September 25 |
OpenExpo 2008 Zürich | Winterthur, Switzerland |
September 25 September 27 |
Firebird Conference 2008 | Bergamo, Italy |
September 26 September 27 |
PGCon Brazil 2008 | Sao Paulo, Brazil |
September 26 | Far East Perl Workshop 2008 | Vladivostok, Russia |
September 26 September 28 |
ToorCon Information Security Conference | San Diego, CA, USA |
September 27 September 28 |
WineConf 2008 | Bloomington, MN, USA |
If your event does not appear here, please tell us about it.
Page editor: Forrest Cook