Posts

Showing posts from 2010

beadm provided in "C"

I know this is somewhat controversial for some people, but.... A member of my staff (Alex Stetsenko) has pushed an implementation of "beadm" that is in C. This is actually derived from an earlier C implementation we already had in tree, called "tbeadm", which we already had. So at some level, this consolidation of two different implementations into a single one. As part of this work, the tbeadm version was modernized and improved to provide i18n capabilities and to behave truly as a drop-in replacement for the python version. As a result of this change, python is no longer needed at runtime by illumos for anything except IPS packaging. Sites and distributions which do not use IPS packaging (most distros don't, actually) no longer need to install python.

Any illumos fans near Corinth, MS?

I drove across country last weekend, and am in Corinth, MS. I'd be happy to go out for a beer and some chat if there are any illumos fans or OSUGs nearby this week.

I sed(1) so!

I just integrated a new sed (1) port for illumos. This is derived from FreeBSD , but it includes a fix for a race condition, and support for translated messages. (FreeBSD friends, please feel free to include these changes back -- I've not changed the original BSD license.) The legacy sed is gone. This new sed should work on all the old sed scripts, but there were a few tricky parts that changed -- if you relied on parsing the output of the "l" command, or on the fact that legacy sed only treated content as a byte stream rather than multibyte characters, you might be affected. Also, I've run into at least one sed script which was malformed, but mistakenly accepted by old sed, but which the new version doesn't accept (but instead gives you a meaningful error message.) The biggest features in the new sed code: support for -i and -I support for -E to enable EREs much more helpful error messages ("command garbled" was just not very specific) Enjoy, and plea

Update on SATA Expanders

So we've done some more research, largely following up on work done by Richard Elling, and I have an update on the SAS/SATA expander problem . There is at least some good news here. The problems that we've had in the past with these have centered around "reset storms", where a single reset expands into a great number of resets, and I/O throughput quickly diminishes to zero. The problem is that when a reset occurs on an expander, it aborts any in-flight operations, and they fail. Unfortunately, the *way* in which they fail is to generate a generic "hardware error". The problem is that the sd(7d) driver's response to this is to ... issue another reset, in a futile effort to hopefully correct things. Now the problem is that this behavior is also performed, by default, for media errors as well. E.g. if you have a disk that has a bad sector on it. Of course, if your disk is mostly idle, it won't be a problem. But if you have a lot of I/O going on,

Status Update on the illumos Foundation

I sent this out earlier today: We are working with the Software Freedom Law Center & Eben Moglen on the creation of the illumos legal entity. Nexenta have enlisted the help of Damien Eastwood (one of the more prominent former Sun lawyers) to help drive this. Jason Yoho at Nexenta is driving this fairly hard as well, so there are now more people than just me pushing this forward as quickly as we can. We have set a goal that the legal entity (an illumos foundation) should exist with legal presence before the year's end. I'm told that this is an achievable goal. I'll have more updates on this soon, I expect, but the process is moving forward.

New Advocate - Albert Lee

I'm pleased to announce the addition of Albert Lee (trisk@nexenta.com, aka Triskelios on IRC) to the list of Advocates who can approve integrations into illumos. Albert has been doing a lot of excellent work on both illumos and OpenIndiana, and I'm happy to expand the set of advocates we have available to include such a diligent and talented individual. The current list of Advocates for illumos-gate are: Garrett D'Amore Albert Lee Rich Lowe Gordon Ross I'm hoping to expand the list to include more non-Nexenta-employees as well. If you're a contributor and would like to help out in this way, let me know. Typically becoming an advocate means you have earned the trust of the rest of the advocates by making several "good" integrations into illumos-gate (4-5 at least usually, although some credit is given for previous integration experience with ON at Sun/Oracle), and have a demonstrated level of thoroughness to help us ensure quality integrations. Thanks, a

New open source iprb(7D) driver

For a variety of byzantine reasons, the iprb driver has never been open sourced, even though everyone who's ever actually had anything to do with it agrees that it should be. (I blame the lawyers on this one...) So I went ahead and reimplemented -- from scratch -- a new iprb driver. I'd certainly appreciate feedback on the code, which you can read in the webrev . I'm hoping to integrate this into illumos later this week.

zfs should not depend on python... and doesn't anymore

As of the recent integration of a colleague of mine, illumos now has a zfs command that does not depend on python at all. changeset: 13246:fe5d6e0b0bce tag: tip user: Alexander Stetsenko date: Wed Dec 01 02:30:25 2010 +0300 description: 278 get rid zfs of python and pyzfs dependencies Reviewed by: gordon.w.ross@gmail.com Reviewed by: trisk@opensolaris.org Reviewed by: alexander.r.eremin@gmail.com Reviewed by: jerry.jelinek@joyent.com Approved by: garrett@nexenta.com The zfs command is now entirely a C program. This may make it more friendly for use in other environments or platforms. FreeBSD folks, you might want to incorporate this into your tree. If you do, I'd sure like to know.

Job Opp @ Nexenta: Director of Sustaining/Certifications

We're looking for a Director of Engineering, to own sustaining (aka bug fixing) and hardware platform certifications (where partners provide a hardware platform and ask us to certify it for use with NexentaStor.) The job qualifications: Must be local to the SF bay area (because the hardware lab is here) Must have strong communication skills Must be able to deal with stressful situations, and able to "manage" strong personalities Must have Solaris/OpenSolaris expertise... hands-on kernel work (crash dump analysis, coding, etc.) Desire experience with Storage protocols and products Desire expertise with x86 hardware Desire perl and/or python skills To be clear, this will start out as a hands-on position, with a fast-paced startup environment. But the growth opportunities here are enormous. If you think you're up to this, please let me know.

New desktop image

Image
Here's a sample of the new logo as a desktop image. I've not made this available publicly yet (mostly because I don't know how to capture this in a form that will include the gradient and post it where people can find it.) If someone with some gnome expertise on how to share this for others contacts me, I can work to make it available.

New illumos logo

Image
Today at the OpenStorage Summit 2010, I unveiled the new illumos logo. We will be updating our branding, which also includes a new font, and other elements, over the next few weeks. There were other updates on illumos that I covered in this talk. I think this was recorded, but I'm not sure right now where it was recorded and how to acces it. I'll be sure to share that when I find out.

CFV: web/HTML/graphics people

I have an urgent need to rennovate the illumos website. If you'd like to help the project out, and you have got both time and talent, please let me know. A major overhaul of the site is in order, and we need someone willing to dedicate some time on it. There may be some funds available for the right person, but to be clear, illumos can't afford the services of a professional design bureau.

New implementation of printf

So I finally got tired of waiting for someone else to do a printf (1) replacement in illumos for the closed binary from Oracle. I had thought this would be a trivial thing to do via ksh93/libcmd using a symbolic link ala /usr/bin/alias. Lo and behold, it wasn't! Why? Because ksh93 printf insists (like all ksh93 builtins) on having -- and - getopt style processing. This is fundamentally incompatible with legacy printf. (Why does it do this? So it can dump its builtin man page, e.g. printf --man, to the console. A feature I've railed against in the past.) Here's what should happen: % printf -v -v% Here's what ksh93 does: garrett@thinkpad:~$ printf -v ksh93: printf: -v: unknown option Usage: printf [ options ] format [string ...] Now there is an argument to be made that a script which relies on the legacy behavior is fundamentally broken. But it doesn't matter -- the scripts are in the field (there are real exa

illumos gets global

Image
I just pushed a major set of changes: 8 libc locale work needs updated license files 223 libc needs multibyte locale support for collation 225 libc locale binary files should be in native byte order 309 populate initial locales for illumos As a result, illumos has gained base support for some 157 different locales, spanning 67 languages and 116 different territories. This includes nearly all the major languages of the world -- missing are Serbian, Javanese, Farsi, Malaysian, Burmese, and some languages spoken in central and west Africa. (Some of these will be very easy for someone else to add... let me know if you want one of these and are willing to do the work.) The support for these locales includes full POSIX compliant collating support, which was completely absent in illumos before this integration. Also, included, is a new open source implementation of localedef (1). To my knowledge, this new implementation is the only non-GNU version of localedef that i

Emacs & Gnome Terminal Co-existence Resolved

For many years, I've been stuck with old xterm, because it was the only one that honored my Meta keys in the same way that GNU emacs did. I could never figure out how to make gnome-terminal work, which always bothered me somewhat. (Notably GNOME terminal has better Unicode support which has lately become important to me.) I finally found a reference that helped me out. I understood that the problem was conflicting ideas about modifier keys; gnome-terminal uses Mod1, but Emacs uses Mod4. What I didn't know was something I found out here , namely that Emacs only uses Mod4 if it exists. So a better solution for me is to simply clear Mod4 altogether, and both programs happily honor Mod1. (This leaves xterm hosed, but if gnome-terminal works, then I don't need xterm anymore.) My resulting .xmodmap looks like this: remove Lock = Caps_Lock keysym Caps_Lock = Control_L add Control = Control_L clear Mod4 This makes my PC keyboard behave sensibly. Alt is Meta. And Caps Lock i

Another ZFS departure

Jeff Bonwick is leaving Oracle . This is a huge event, because Jeff has been one of the main innovators in operating system technology during his tenure at Sun. While you may know him best for ZFS, he's also the inventor of the slab allocator, which revolutionized memory management when it was created. (And now, pretty much every modern system uses some variation of the slab allocator.) And he's not just an Oracle VP. Jeff has made integrations into Solaris' ZFS code base on an ongoing basis. This is a guy that has led with actual actions and innovation, backed by code, rather than some boffin who's risen to management and no longer contributes. At some level, he's the model for the kind of technologist I aspire to be. With so many innovators leaving (and yes, there are other key players in flight), its going to be very interesting to see how Oracle is able to continue to be a thought leader in the OS technology that they've acquired. One the one hand, its

South/Central American opportunity

I just learned that a peer of mine is looking to add some escalation engineers in Latin America. Job requirements include excellent English, and the ability to deep dive into customer problems including kernel crash dump analysis and C coding ability. If this sounds interesting to you, please let me know.

Oracle/NetApp ZFS lawsuit dismissed

Others have no doubt already picked upon this, but here it is anyway: http://www.h-online.com/open/news/item/NetApp-and-Oracle-lift-ZFS-patent-cloud-1076313.html Hopefully this is good news for downstream ZFS consumers.

We're Hiring!

In case you didn't know, a number of companies are hiring illumos talent. I know of an opening for a USB kernel engineer at one company. I'm told Joyent is growing like crazy. And Nexenta is hiring! In fact, here are some of the opportunities we have open at Nexenta: QA leads. We have two positions for folks with skills and knowledge to design and build, and run, automated testing of the operating system, with a particular focus on storage and networking. Expertise in NFS, CIFS, iSCSI, ZFS, and the surrounding areas would be highly useful. Good communication skills, shell scripting or perl skills, and an ability to work in the office in Mountain View, are all required. Previous QA leadership preferred. Support engineers. We need support engineers across the globe. People who can answer the phone, and triage problems. Solaris or UNIX experience, ZFS clue, good troubleshooting and triage skills, and excellent communication skills are necessary. Kernel software engineers.

Squash-proof?

So everyone has heard me talk about the 800 lb. gorilla with respect to illumos. One question I keep getting asked is, can the illumos project be "squashed" by this 800 lb. gorilla ? My stock answer had been "no". But I realized something today; I've been wrong. The way illumos can be "killed" is if the corporate owner of Solaris were to do something to make illumos irrelevant . Like, say, opening Solaris back up (and in this case, I think they would probably need to go further open than they were before). I'm not worried though. Even if that happens, illumos will have been a major success. But I really don't think it is going to happen.

illumos Interest Groups

So, I've been asked by several people who are involved with OpenSolaris User Groups around the world about illumos. Given the clear demise of OpenSolaris, it seems to me at least, to be kind of silly to continue to meet using that name. Some groups have reverted to pure Solaris usage. Which is fine for those groups that want to focus on Oracle products and want to come under the Oracle umbrella that it has for user groups. For groups that are more interested in open technology, perhaps it is time to start up some "illumos interest groups" (IIGs)? (Calling them "User Groups" at this point seems rather premature... I think there are only a very few of us that are actually "using" illumos at this point.. but I hope that number to grow very much very soon. :-) Btw, are there any folks interested in illumos in either Riverside County or North San Diego County? (California) I'd be interested in participating in an interest group if there was one that

OpenSolaris ARC is Dead

I had tried to dial in to ARC today, but no luck. But then someone else pointed out that we have not seen any ARC cases since the tap was turned off . In fact, I posted a query about this to the opensolaris-arc mailing list today, and I got back an interesting automated reply: This mailing list is no longer active and accepting posts. Mailing list archives can be found at http://mail.opensolaris.org/pipermail/opensolaris-arc/. You can check http://mail.opensolaris.org/mailman/listinfo to find another list to which to send your email. So, OpenSolaris ARC is dead . This has ramifications that go beyond just ON. Because there are other consolidations that we were promised were going to continue to be developed in the open: JDS, X11, and the pkg-gate. If the decisions for these technologies are no longer being made openly, or even the opinions being made available, then this makes Oracle's promise to continue to work with the community on them seem hollow. So, what's left f

OGB has dissolved today

The old OpenSolaris Governing Board has dissolved unanimously today. The OpenSolaris governance is now in default, and returns to Oracle's hands. For folks upset by this, let me remind them of Illumos . Its a sad note for OpenSolaris, but I think the reborn Illumos community will be better than the OpenSolaris community ever could be. I do want to thank the (former) OGB members for their efforts, even if they did prove to be in vain.

Why SAS->SATA is not such a great idea

So, we've had some "issue" reports relating to the mpt driver. In almost all cases, the results are related to situations where people are using SATA drives, and hooking them into SAS configurations. Although the technology is supposed to work, and sometimes it works well, its a bad idea. Let me elaborate: SAS drives are generally subjected to more rigorous quality controls. This is the main reason why they cost more. (That and the market will pay more.) SAS to SATA conversion technologies involve a significant level of protocol conversion. While the electricals may be the same, the protocols are quite different. Such conversion technology is generally done in hardware, where only the hardware manufacturer has a chance of debugging problems when they occur. Some of these hardware implementations remove debugging information that would be present in the SATA packet, and just supply "generic" undebuggable data in the SCSI (SAS) error return. The conversion t

IPS == FAIL

Look, I really, really wanted to avoid entering the packaging debate. I mean, its an emotional decision, right? Well, its supposed to be. Except that I've spent nearly an entire day trying to figure out how to onu the latest illumos gate (which includes Rich Lowe's b147 merged in). I have gate changes that I desperately need to test in the context of a full install. (Well, I could say "screw it", and just test the bits in place -- which I've already done, but that's hardly a complete test.) I can't test them. Because I can't figure out how to use the packaging system to install them. And neither can our resident IPS expert, Rich Lowe. This is no longer an emotional decision for me. Yeah, there are a lot of "emotional" things not to like about IPS. (It forces a dependency upon Python; its still immature; it seems to fail if you are disconnected from the network; it doesn't seem possible to build and install "just" a sin

The Tap Is Turned Off

A little birdie told me that the last update to Oracles hg repository for ON was this one: changeset: 13149:b23a4dab3d50 tag: tip user: Sukumar Swaminathan date: Wed Aug 18 15:52:48 2010 -0600 description: 6973228 Cannot download firmware 2.103.x.x on Emulex FCoE HBAs 6960289 fiber side of emulex cna does not connect to the storage 6950462 Emulex HBA permanently DESTROYED, if the firmware upgrade is interrupted 6964513 COMSTAR - Emulex LP9002 fail to return a SCSI Inquiry correctly to a VMware 4 Initiator From here on out, Illumos and Oracle Solaris diverge. The funny thing is, based on the calls I've had today, I could hardly be more optimistic about the future of illumos and the code base that was formerly called Solaris. Even more talent is getting behind this effort every day. I'm very very excited... frankly Oracle shutting down the tap just really opened up the opportunity for us to really start innovating, in ways

More milestones...

Illumos milestones reached today. a) I pushed a working tr, and was able to build illumos on a system running illumos. This is the first time this has been possible. b) Richlowe pushed a merge to build 147. There are probably consequences for developers (more updates required for bits that are not part of ON) -- stay tuned for updates about that. All in all, things are moving quickly.

Presenting Illumos at SVOSUG

I'm pleased to announce that I'll be giving a brief talk at this month's SVOSUG meeting, Thursday Aug 26, at 6:45 pm in Mountain View. It will cover Illumos , and I will be joined by a colleague who will talk a bit more about Nexenta as well. If you're in the Bay Area at that time, it would be great to have a chance to meet. I expect there will be some (probably significant) consumption of alcoholic beverages after the meeting, at an as yet undetermined location.

More new stuff...

I've been pretty busy with Illumos lately, but last week I took a few days off for family time. One of the things I did was take my son (9 years old) out to the Kern River to try some whitewater kayaking. This was his first time on moving water, and it amazed me how quickly he picked up basic concepts. He was doing ferries, peel outs, and eddy turns like a champ after about 20-30 minutes. Amazing. He didn't even swim his first day -- he elected to stay in his boat (actually trying to do a roll) until I could give him an Eskimo rescue. (His only swim that day was when he got flipped by one of the holes in Riverside Park.) He did get a good swim on the second day, when we were working on ferries though the much faster swift water running at the bottom of Ewings rapid. His first ferry was quite high into the rapid itself, and clean, but the second time he went for a swim. Came up happy and smiling, ready to try again if we had had the time. I wish I had some pictures. Gue

Milestone Commit for Illumos

Richard Lowe has just made a milestone change to the Illumos repository. Its a milestone for two reasons: a) It is the first commit from another developer other than me. (Other developers have code in progress, but not yet ready to commit, but soon!) This also makes it truly a community project, since Rich has no affiliation with me other than as a participant in the Illumos project. b) It eliminates the dependency on the Oracle "extra" repository, which required folks to get a certificate to access non-redistributable code in order to build illumos. Thank you very much Rich. I'm looking forward to more integrations from developers soon!

The Hand May Be Forced

Well, as you may have read , Oracle has decided that at some point very soon, we're going to lose normal regular access to the source code for OS/Net. (I.e. the Solaris kernel and supporting programs.) While I would have vastly preferred for Illumos to have a cooperative and collaborative relationship with Oracle , it appears that Oracle doesn't value this. In fact, the exact words were from the management at Oracle were as follows: Solaris is not something we outsource to others, it is not the assembly of someone else’s technology, and it is not a sustaining-only product. While I understand the need to own the technology, there are few things that could be stated that show a stronger NIH attitude than this. Its unlikely that there will ever be a way for Oracle and the greater community to have a collaborative relationship. This is a dark day for OpenSolaris -- its effectively dead now. (Its parent, Solaris, lives on however.) How unfortunate. For Oracle that is. Because

Illumos Announcement

Today we announced the Illumos Project. I think the call I gave on it had a lot more information than I want to write here, and there are now quite a number of blog postings from other more recognizable names than my own. I'm thrilled by the excitement here!

Illumos

A number of the community leaders from the OpenSolaris community have been working quietly together on a new effort called Illumos , and we're just about ready to fully disclose our work to, and invite the general participation of, the general public. We believe that everyone who is interested in OpenSolaris should be interested in what we have to say, and so we invite the entire OpenSolaris community to join us for a presentation on at 1PM EDT on August 3, 2010. You can find out the full details of how to listen in to our conference, or attend in person (we will be announcing from New York City) by visiting http://www.illumos.org/announce (The final details shall be posted there not later than 1PM EDT Aug 1, 2010.) We look forward to seeing you there! - Garrett D'Amore & the rest of the Illumos Cast

Please Be Patient

With all the ruckus surrounding Oracle's apparent abandonment of the community, and OGB's stated intention to suicide, the community uproar has been crazy. Without giving any details, let me say that a few of us are quietly but diligently working on solutions to the critical problems, and I expect we'll be able to talk much more freely about the solutions we will be offering in early August, which is coming up very soon now. So, I'm going to humbly ask folks to be patient -- hold your comments, complaints, and flames about Oracle and OpenSolaris and OGB in check please. If you can wait just a little bit longer, then I believe we'll be able to offer a more constructive outlet for your frustration and energies. Thanks.

In NYC for DebConf10

I'll be attending DebConf10 (the Debian developer's conference) in NYC this year. Nexenta will be presenting information about our distribution. Its my hope that we can use this to generate more interest in OpenSolaris technology. If you're in NYC, and want to meet during the first week of August, let me know!

ZFS disk monitoring...

So I've posted this on zfs-discuss at opensolaris dot org, but its been suggested I mention it here too. It turns out that the ZFS/FMA integration doesn't pick up on drive removals for most disk devices until the filesystem attempts to perform some I/O to the drive. This is rather unfortunate, because if a file system is not busy, you might suffer a loss of redundancy and not find out about it until too late. It also means that you won't know about failures of hot spare devices until you need to put them into service, since by definition they are idle. (Note: as an exception running periodic scrubs should detect this too, although scrubs are highly intrusive to the overall I/O load on the system and probably should not be performed too often as a result.) I'm told the Oracle 7000 series appliances have a solution for this problem, but of course the source for that is not in OpenSolaris. (Apparently there are quite a few differences in the core OS between the 7000 s

Looking for CIFS/AD expertise

(I know its probably questionable using my blog for this, but I thought I'd post it here anyway. My apologies if anyone finds this offensive. I'll keep it brief in any case.) I'm looking for a high-caliber developer, preferably with some kernel and/or OpenSolaris expertise, who's also got extensive knowledge of ActiveDirectory and CIFS. If that's you, or you know someone who fits that description, please contact me -- garrett at nexenta dot com. (No recruiters or agents please.)

skype for Solaris

So I'm irked, really irked. If we had Skype support for Solaris, I could probably ditch this half baked mess of Linux hosts running VMware guests with OpenSolaris and Nexenta. I want just a single host OS for my development box. Right now the single biggest barrier to running OpenSolaris on my desktop for my job at Nexenta is Skype. But this is silly, because Skype works in Linux, and the APIs should basically be compatible. Especially with the OSS layer that we already have in OpenSolaris these days via Boomer. If someone at Skype sees this (good luck trying to find a contact on their web site!), and wants to work with me on it, I'd be happy to help them work through the issues of getting a native Skype port. If anyone who has an "in" at Skype reads this post, please forward it to your in at Skype. If any folks are paying for business services from Skype, feel free to let them know you want a Solaris client, and there is an expert on the Solaris audio stack waitin

LDRS 29, very cool

So, this past weekend my son and I went to LDRS 29, which is the event for the national high-powered rocketry club, Tripoli. We were there only one day and one night, but here were some cool highlights from Saturday: Mass squat launch -- Timothy's Squat with an Aerotech G-67 redline motor flew very nicely, if a bit late off the pad. 28 other rocketeers had their rockets launch at roughly the same time. Many wild squats. With the $29 specials from WhatsUpHobbies, lots of people were flying very unstable Squat rockets with I-140 skidmark engines. This configuration needs nose weight, as we found out for ourselves when we flew Timothy's with the same engine. Four half-scale Patriots launched in 3 second intervals from a "box" launch vehicle -- much like a real Patriot. Very, very cool. Drag race of six or seven N-impulse rockets. These are big rockets, lots of power. Drag race between a number of very detailed rockets. There was a CATO about 20 feet off the pad,

Press release

Noticed this press release got posted to the Nexenta web site. /me preens. :-)

O_SYNC behavior not honored

UPDATE (6/21/2010): This problem is apparently solved in b142. Probably other builds as well. But I was unable to reproduce this problem with real hardware on b142. Note that VMware does not honor cache flushing, so VMware (and possibly other v12n users) will potentially still see this issue. So, it turns out that ZFS in recent (somewhere after build 134 apparently) builds has a critical bug ... O_SYNC writes are not really synchronous. This leads to potential data loss. I've not yet figured out which change introduced the bug, but I hope to work on it next week. In the meantime, I would strongly discourage use of post-134 binaries for anything where data integrity is important. I've filed a P1 bug with Oracle for this issue. I'll be trying to nail it down further next week; if I'm able to fix it before Oracle can, I'll offer up my fix. I'll post the CR number when I receive the number back. I imagine that this bug, which is trivially reproducible, will be

Great Falcon-9 Launch!

SpaceX, one of our greatest hopes for a commercial manned space program, has achieved a huge milestone with the successful maiden launch of Falcon-9 with a Dragon capsule today. This is the craft that may one day soon be used for ISS resupply, and perhaps even crew transport. Even as Obama shuts down the US governments manned space program, the commercial sector is picking it up. This is a momentous day. Congratulations to Elon Musk and the rest of the team at SpaceX!

audioens in VMware...

So, we have not had audio in OpenSolaris within VMware since... well, ever. I've been doing some investigation. I'm seeing a situation where the VMware emulated audioens device behaves rather differently from the real hardware. For one, it seems to insist on using real interrupts. In particular, the sample count registers do not appear to be updated unless one receives and acknowledges an interrupt. (By toggling the interrupt enable bit.) This means that this virtualized device will never be able to run "interrupt free" like the other audio devices (or real audio hardware). For another, it appears that the audio device has some weird dependency on the relationship between the size of the audio buffer, and the interrupt rate (the number of samples at which to interrupt). Using different values gives, strange results. Finally, I cannot, for the life of me, figure out how to cause the device to actually trigger an interrupt. I've been able to make some progress

Well *That* Didn't Work Out So Well

You may recall my recent blog post about Windows 7 being surprisingly usable . Well, I have to recant here. I used Windows 7 for about a week and half. While it *worked*, it was a pleasure to use. But after three BSODs in just that week and half, I have abandoned it. I'm now running Ubuntu . (Why not OpenSolaris? Because I need the ability to host VMware and Skype, and I can't do that natively on OpenSolaris -- yet.) Sure, I could have called up support -- but Microsoft support is provided by my computer manufacturer, and I didn't feel like spending 3 hours on the phone dealing with tech support while they tried to triage my problem. In the end, it was simply faster and easier for me to reinstall with Linux, even allowing for the time it took to download the media. Sure, the problem might have been my virtualization software, or maybe it was a shoddy audio driver, or maybe it was brokenness in my graphics driver, or maybe it was the 3rd party antivirus software (whic

Last Day

So, today's my last day as a Sun^WOracle employee. While I'm excited to be starting at Nexenta , I want to reiterate what I've already said , which is that I've really enjoyed working with the great folks at S'noracle, and that they made this decision to leave quite difficult. Its been quite a ride over the years, and its been fun and exciting. Thanks everyone! Of course, my old e-mail address(es) at Oracle won't reach me after about noon today. To reach me for matters pertaining to OpenSolaris , gdamore@opensolaris.org will continue to work. For matters pertaining to my new employer, Nexenta , you can use garrett@nexenta.com. My personal e-mail address of garrett@damore.org remains unchanged. Now please standby while I go reinforce the spam filters...

New Computer

As part of the process of changing employers , I needed to get a new computer for the new job (and return the old desktop to Oracle.) I wound up picking this one ... I didn't seem to be able to build it any cheaper (as of the date of this post) myself. And guess what... someone goofed! Instead of the 3 GHz Core i7 950, it came with a 3.2 GHz Core i7 960. Bonus! (Other goofs relative to the ad: the system has 9 GB -- but that's spelled out in the details, comes with a black aluminum chassis, and ships with a cheap logitech keyboard.) I'm still using the stock load of Windows 7, and I'm both surprised (and maybe a bit embarrassed) to admit that the Windows environment (especially when replacing IE with Chrome) is actually quite nice -- fast and usable. Maybe running this environment (and running OpenSolaris in a VM) might not be so bad after all! (Ok, I'll go find some soap to wash my mouth out for blaspheming....) If I do this, besides being able to use Skype

Engines arrived for Squat yesterday

The Squat is a 4" diameter short high power rocket with a 54mm engine mount. My engines, 54mm hardware (including the higher end Aeropack retainer), and 38 mm adapter arrived from What's Up Hobbies yesterday. Timothy's going to fly it at the LDRS mass launch on a G67 redline -- this will be his first reloadable engine. Later that day I'll fly it on an I140 skidmark, which represents both my first 54mm engine, and my first Caeseroni engine. Timothy and I put the rocket together last night; I must say, the higher end metal hardware and thicker fins on this rocket are definitely a step up even from the LOC IV I flew previously on my Level 1 flight (go to about 1:30 in the video link -- I haven't figured out how to edit the video file yet). I also received the propellant for the J350W, which I'll be flying in my LOC IV as part of my Level 2 certification attempt. OpenRocket says the LOC IV will be approaching 700 mph with this particular engine! Guess I wi

Greener pastures

I've recently made a major decision -- I'll be leaving Oracle. My last day as an Oracle employee will be on May 21, 2010. Leaving such a great group of people at Sun will be difficult indeed. However, I hope to be able to continue as a significant contributor to the OpenSolaris community, as I'll be joining the team at Nexenta . At Nexenta, my responsibility will be to lead a group of engineers working on the OpenSolaris kernel. As such, I'm excited that I'll be able to continue to work on finest operating system kernel on the planet, and I look forward to further collaboration with some of the best software engineers on the planet. My first day at Nexenta will be on May 24, 2010.

Going up to SF bay area

Its been a while since I've been to the Bay Area. I'm going up for two days, which is a shade longer than I usually go for. Part of the reason is to make sure I meet with folks in the Bay Area that I otherwise don't see. I'll be up Thursday and Friday April 29 and 30 -- and I expect I'll be at MPK most of that time. Anyone who wants to chat, please let me know.

audiocmihd driver (Asus Xonar cards)

Some people have been asking me about this driver. (Asus Xonar cards are fairly high-end high definition cards using the CMI 8788 chip.) I've finally gotten the code reasonably cleaned up, and converted to my interrupt free audio framework. I'll probably start a case to get this integrated into late b137, or b138. Mostly its just running a bunch of tests at this point. One problem I have is that I only have Xonar DX1 cards. (PCI.) If someone is able to help me qualify the driver with build 137 (or a nightly build) of ON, please let me know. The more I can get this driver tested, the sooner I can get it integrated into OpenSolaris.

Interrupt Free Audio

Today I integrated "interrupt free audio". This set of changes, including some other changes, represents a substantial simplification in the DDI for audio drivers. The typical audio driver no longer needs to worry about interrupt handlers. On average, about 300 lines of code (or about 10-20% of complexity for typical drivers) was removed from each audio driver. Furthermore, many audio drivers (for example audio810) are able to run completely lock free, since the audio framework provides synchronization for certain operations. (Operations against each audio engine are synchronized, operations against audio controls are synchronized as a whole, and everything is synchronized against suspend/resume functions.) Even better, these changes enable some new advanced features that will be used for Sun Ray, virtualization, and hotplug support in the future. Oh yeah, and since the asynchronous processing now happens as part of the regular timer interrupt, it means that system CPUs c

"Legislative Sleight of Hand"

I normally have avoided using my blog as a soapbox for my political beliefs. However, I simply cannot remain silent on recent events in the House of Representatives (United States for foreign readers. No matter what your position is on the health care reforms under consideration, everyone should agree that the reforms are sweeping; perhaps some of the most significant legislation that will affect nearly every American we've seen in quite some time. House Democratic leadership, knowing that the measure is unpopular with many voters (and hence House Democrats may be unlikely to "vote the party line" to avoid a backlash in their constituencies) are planning a move that is even more offensive than "reconciliation". While I'm a Republican, and generally opposed to nationalization of 1/6th of our economy, I find far more offensive that the House leadership (particularly Ms. Pelosi) would consider a move that so boldly disenfranchises the people of this nation. T

Why We Need a Human Spaceflight

Space aficionados may be aware that President Obama has canceled the previous administration's "Vision for Space Exploration", which consisted of the Constellation program including Ares I, Ares V, and Orion. This has been fairly well covered in the mainstream media. Critics of the Constellation program raise some significant and relevant objections to the Constellation program. However, I strongly believe that as a nation, we need a national space program that includes human spaceflight beyond low Earth orbit. The cancellation of Constellation, while perhaps with good cause, has left our national space program with a vacuum -- the lack of a heavy lift vehicle, and lack of any vision, would effectively constrain human exploration to LEO for a generation. Furthermore, it significantly constrains the kinds of activities that we can perform in LEO. Its my belief that this is short-sighted in the extreme. We need a space program that includes vehicles with the ability to

ON IPS surprisingly easy

So I have an EOF RTI that was in queue when the ON IPS integration happened last night. Of course, this totally whacked my packaging changes, and I had to modify them. Making the changes was quite easy. Here's the old , and the new version of the changes. Its actually less files to update under IPS. I was dreading retesting. Dealing with distro construction sounded "painful". I needn't have worried. In the tools directory there is this neat tool called "onu" (on-update I guess?) I had to load a machine with b133 to set up a baseline, but we have a nice way to do that internally via our internal infrastructure and AI. It boils down to running one command on an install server than doing "boot net:dhcp - install" at the OBP prompt. (Yes, this is a SPARC system.) It took a little bit for it to install, but less than an hour. Then, after rebooting and getting the initial settings on the system, it was just a simple matter of "onu -d ${ws}/p

Funny Ancient Software

I just found out that Ubuntu has been shipping (since version 6.06 -- Dapper Drake I think it was called?) and apparently included all the way into forthcoming 10.x LTS version) a program I wrote nearly two decades ago as a student -- vtprint -- and yes, that link points to manual text I wrote way back when. (This program, "vtprint", was for use with printing from a UNIX shell prompt, when you don't have a better way to move files around. Back then we used commands like "kermit" to connect to a UNIX server from our PC over a 2400 or 9600 baud modem -- and well before PPP or even SLIP.) I haven't used vtprint since about 1995, but its funny to still see it kicking around. Too bad the docs still have an old e-mail address for me at SDSU.... I guess nobody has needed a bug fix for it for some time.

Congratulations to BMW Oracle Racing

If you're involved in the sailing community, you'll already know that Larry Ellison, who's now ultimately my boss, had put together a team to challenge the America's Cup. They won this weekend, bringing the America's Cup back home to America, and I'm enormously proud of Ellison and his team, both as an American, as a sailor, and -- now -- as an Oracle employee.

Open Development

Note: I'm posting this on my personal blog, which as always is a reflection of my own thoughts and in no way represent any official policy from my employer (whoever that may be). Now that we former Sun employees (for the most part) are now part of a larger company, there have been some questions about how much of the trend Sun had made towards open development will continue (particularly where Solaris/OpenSolaris is concerned.) (I want to separate the concern of Open Source -- where source code is made available for products after they are released -- from Open Development -- where the product is developed in the open.) Many of us who were part of that acquisition are wondering the same things. Officially, the word is "no changes in what we're doing", but unofficially there's an atmosphere that our new employer places a greater emphasis on commercial profitability and a lesser emphasis on things like "including the community." Speaking abstractly, t

Scalability FUD

Yesterday I saw yet another argument about the Linux vs. Solaris scalability debate. The Linux fans were loudly proclaiming that the claim of Solaris' superior scalability is FUD in the presence of evidence like the Cray XT class of systems which utilize thousands of processors in a system, running Linux. The problem with comparing (or even considering!) the systems in the Top500 supercomputers when talking about "scalability" is simply that those systems are irrelevant for the typical "scalability" debate -- at least as it pertains to operating system kernels. Irrelevant?! Yes. Irrelevant. Let me explain. First, one must consider the typical environment and problems that are dealt with in the HPC arena. In HPC (High Performance Computing), scientific problems are considered that are usually fully compute bound. That is to say, they spend a huge majority of their time in "user" and only a minuscule tiny amount of time in "sys". I'

Missing audio packages

I have learned that at least two packages, SUNWaudioemu10k and SUNWaudiosolo, are not part of the "standard" ("entire?") install of OpenSolaris b131. If you're looking for either of these, you should do "pfexec pkg install SUNWaudiosolo" or "pfexec pkg install SUNWaudiosolo". Hopefully we'll get this sorted out before the next official release. Update: Apparently (according to the expert I talked to) this problem only affects systems updating with pkg image-update. If you install a fresh system, the audio packages should be installed.

System board for ZFS NAS

I'm thinking about creating a home storage server, like many, and I want it to be performant enough to host work spaces for compilation over NFS, and efficient enough to reduce my current power consumption somewhat. I'm thinking of a new Intel D510 system board, and looking at several, I found a board from Supermicro that looks ideally suited to the task. Does anyone else have experience with this board? It looks like its all stock Intel parts, so it should Just Work. I'm thinking that with 4 or more SATA drives combined with RAIDZ, and dual Intel 82574 gigabit Ethernet (which I could use in an Ethernet link aggregation), I should be able to get excellent performance. (I might even set up jumbo frames, to further bump NFS performance -- if they really are 82574's then they support up to 9K MTU).

Kindle Converts a Skeptic

Recently I bought my wife an Amazon Kindle (the new international unit), at her request. Personally I was rather skeptical -- trying to read book material on computers, even laptops or netbooks, has always felt very awkward to me. I always believed that there was something about holding a paperback (or even a hardback) which would never be replaceable by technology -- maybe for others, but at least not for me . I have to recant. Debbie has read something like a dozen novels already on her unit. I decided to try it out... and I have to say, I was surprised. I was reading H.G. Wells' War of the Worlds (not for the first time of course), which was a free download, and wow, was I surprised. After 10 or 15 minutes of reading, I almost forgot I was holding something in my hand that isn't printed paper. (The form-factor, which is quite similar to a book, works quite well here. I don't think I'd like the larger DX, as it would destroy the "illusion" of readi

Reprehensible behavior from a monopoly

Misbehavior stemming from lack of competition is apparently not unique to the IT industry. I saw this post today, and couldn't believe it. And then a bit of additional research shows this is not unique -- a number of people complained about actions on the part of Greyhound that would never be tolerated in market where there is true competition. Forcing a grandmother to wait out in cold, while there's still snow on the ground, may not be in violation of the letter of the law, but it is certainly in violation of the basic tenets of human decency, and the management at the Memphis location showed they have none. Its been over ten years since I've ridden a Greyhound (or any other long-haul bus for that matter), and after reading this, I am unlikely to ride another Greyhound again. Instead I'll stick to air transport where lively competition means that even the worst airlines understand that they have to at least pretend to care about their customers. If you're read

Its Official

I'm no longer a Sun Microsystems Employee, since Sun no longer exists. Hopefully I'll get to keep my job at Oracle, but I've not seen any e-mail yet . I expect I will before day's end.

Auto Install Finally Working For Me!

Some of you may know, I've been struggling (and failing) to make auto install work for me. I've had challenges, because my network is not routable, and due to other issues (bugs!) in OpenSolaris Auto Install. However, it seems that I've finally hit on a successful recipe. I want to record this here for others. First, in order to use AI, you will need your installation server to be running a recent build of OpenSolaris. The release notes indicate b128 is sufficient. I just ran "pkg image-update" to update to build 131. If you fail to do this, there won't be a warning at all, its just your clients will simply not boot. The next thing you'll need to do is download a full-repository and the AI image. Unfortunately, there are not public versions of the full repo ISO file available that are "current". (No, I can't get you a copy, and no I don't know why they haven't posted a more recent update.) Hopefully this problem will be correct

Six Years & Counting

Its hard for me to believe that six years ago today at this hour in the morning I was getting myself ready to meet my bride. We had a wonderful wedding on the beach in front of the Del Mar powerhouse in San Diego, with our friends and family in attendance. Looking back, its been the best six years of my life. I've truly been blessed. I'm looking forward to spending the next sixty together with my beautiful bride Deborah.

Interesting device driver work

So there are a couple of "closed" drivers that are not part of OpenSolaris, and might never be because of redistribution restrictions. However, this represents an opportunity for an enterprising software engineer to contribute. The drivers are glm - Symbios 53x810 and similiar devices qus - QLogic ISP 10160 and similar devices adp - Adaptec AIC 7870P and similar devices cadp - Adaptec AIC 7896 and similar devices There are open source drivers for these from FreeBSD and NetBSD, which could be used as a starting point for a port. I'd probably be interested in trying one of these out myself, if time allowed -- but alas it does not, my plate is already quite full. The best part of these drivers is that there are few, if any, "political" or "business" restrictions on integrating replacement drivers. Indeed, at one point recently each of these was considered for an EOF simply because they weren't considered strategic anymore. (The EOFs were rejected