Wednesday, March 26, 2008

Project Brussels NGE driver support putback to Solaris Nevada Build 86

Project Brussels NGE Gigabit Ethernet driver support has been put back into Solaris Nevada Build 86. Currently, there isn't a unique interface for configuring parameters for NIC drivers in Solaris. The configuration of a NIC driver may be customized by driver.conf, ndd, etc. Project Brussels aims to provide a standardized interface for configuring all GLDv3 NICs via the system tool dladm. And NGE driver(the driver of Nvidia nforce chipset Ethernet controller) is widely used in Sun servers and such as X4200/X4100 M2, X2200/X2100 M2 and workstations such as Ultra40, Ultra20. So it's a good step ahead.

What I need to emphasize is that this putback is a joint effort of the community member and Sun engineers. I think it a good example to demonstrate the open development practices in OpenSolaris community. OpenSolaris.org doesn't just make the code open-sourced. It's on the way to open the development process. And more, NGE driver is somewhat a special case,which requires the code reviews and approvals of engineers from Nvidia to ensure no Nvidia IP are leaked unintentionally. OpenSolaris community member Jason King provided the original code. The code is pretty much done. But he found some problems during the tests. The driver would fail to attach when the system was booting. So he turn to help from Sun engineer through OpenSolaris.org. I'm the responsible engineer for NGE driver. I contacted him, got his code and found the root cause soon. Not just the root cause, we also refined the code, did the tests in our lab and provided feedbacks to him. Jason updated the code for our reviews once again. Sun engineers Ted and Sowmini also gave their comments on the code. It's an iteration practice, in which we were interacting with each other well. After all the tests are passed, I help Jason to get Nvidia's code review and approval. Finally, we successfully put back the code into Solaris Nevada Build 86. So basically, this time, what the community developers do is to write the initial code and modify the code accordingly. What Sun developers do is to troubleshoot the code, refine the code, do the tests, do the legal review and put back the code. From my point of view, I think there is one advantage for Sun developers in the process of development is that we may be more familiar with the code, which made it easier to find the cause of the problems. and We may have more testbeds and test suits in the lab to reveal the bugs before the code is put back.

Lastly, I'd like to show my appreciation to Jason King's work in Project Brussels. Well done, Jason! And also I'd thank Ted and Sowmini and other colleagues for their supports in this putback.

Thursday, March 20, 2008

About Miles Xu

Currently Miles is an operating system kernel engineer at Sun Microsystems China Engineering and Research Institute (SCERI) after the graduation from the Department of Computer Science in Nanjing University since July 2007. Earlier he was serving as an intern for SCERI. Currently he still keep the record as the youngest regular employee in SCERI where the average age of employees here is around 30. Most of his previous experiences focus on operating system kernels, computer networks and embedded systems related stuffs, which also brought him some awards such as global top 10 and Microsoft Multimedia Award in 2006 IEEE Computer Society International Design Competition, global top 30 in Microsoft Windows Embedded Student Competition. Besides, he was awarded the second prize in 2006 National Undergraduate Student Embedded System Contest and the 2007 Special Scholarship for Technology Innovation of Nanjing University, etc. For those who are interested in his experiences, you can find his detail profile here.

Born in a what was so called semi-English-speaking family, he is possessed of a good command of English and can speak it fluently. His characteristics varies a lot from a traditional engineer in most people's minds. He is not a tech nerd(at least not just a tech nerd)but an active talker and enthusiastic about making new friends. His interests also cover a lot of area -- sociology(especially North American culture), history, geography and biology. In the casual time,he is in favor of traveling, photography and 3D animation creation. And maybe one day he will get the chance to travel around the world, just like he always goes after.

Last words, welcome to Miles' blog. We can be friends^_^

Saturday, March 15, 2008

Show Mac Book Pro -- Cool Stuff!

I got "my good buddy" today. Cool stuff! Though I haven't get used to it, I felt better when I found the shell. After all, it's a Unix system, not a strange stuff for a Solaris/Linux guy, right?

Share some pictures with you guys.