Saturday, December 21, 2013

got out and did some life hack on bmw

Small life hack on bmw. home depot, I saved around 50 bucks with you on water pipes tubing. Original bmw washer pipes are rediculously expensive. So the sum of 4$ for 10ft tubing, lighter, hands and some duck tape and ta da! I drive with clear windshield glass )

Thursday, December 19, 2013

pv vnuma

I am really happy to see positive numbers in /proc/vmstat about numa migrated pages in PV Xen guest.

numa_huge_pte_updates 0
numa_hint_faults 4919
numa_hint_faults_local 3791
numa_pages_migrated 413
pgmigrate_success 1888
pgmigrate_fail 0

Lets run some tests :)

Monday, November 18, 2013

patches are out, did I make it before freezing point?

Just posted patches that hopefully will be accepted. I not, I will have even more exciting work to do! :)
check them out:

For sure, I feel so much comfortable with patches formatting.

I have to say that tremendous amount of experience I was able to accumulate since May of this year.
LinuxCon, XenProject Developers Summit, meeting my mentors in Edinburgh (they are really nice),
then meeting other people - Sarah Sharp and Greg K-H.
I know, the next year it will be more exciting, more challenges and more friends.

Ok, now I have to take of my job situation :)

Phew.. first some sleep

Wednesday, October 16, 2013

Dropped RFC tag for Xen vNUMA:

Thursday, September 26, 2013

Nvidia! I need GeForce driver for 3.12 kernel! Do you need help? :)

Wednesday, September 11, 2013

Whew... :)

I can't believe that only three months ago I was selected for the program.
I worked on presentation slides for LinuxCon UK today. I have to admit - I like working on code much more that on slides :)

Anyways, I progress towards second patch submission, though rinsing the patchsets might take some time yet. But vNUMA feauture was freezed for Xen 4.4! So no rest after program is over, but actually I dont feel I really need it. I feel good about last changes in my code, I look at it without shruging my shoulders :)

Also, exciting enough is my attendance at GNU 30th celebration hackaton at MIT :) I will get prepared. Looking forwrad to meet Linux Foundation people and other hackers, as well as OPW participants!

repos has been moved to by xen-devel community request.

After the program I will commit more time and post detailed program results...
I wish I would do it for another few months! But in any case, there is no way back and I will keep hacking. Makes me content.

Thursday, August 29, 2013

Git repo

Lets get it rolling!  In a real self-hosted repo!
Ok, just dont hack me while I am asleep :)

No more :)

Tuesday, August 27, 2013

Patches rfc review

I have submitted my patches to xen-devel list both for Xen/toolstack and linux.
Looks like they are trashy :) I will have to clean them up and re-send once again.

I have got tons of comments from maintainers and now I will jump on them, sort them all out and fix/clean stuff. Looks like I also need a git tree.

I have spent good amount of time clenaning patches, applying them and compiling on each of the stages. As I get this experience, I think I will try to keep in mind the organization of patches as well.

Also I have signed up for some programming courser at I hope that i will learn from solving optimization tasks and would approach my NP-problem in a right way :)

Tuesday, August 20, 2013

I am really busy. 

I have days when I think I know how exactly solve everything :)
Sometime I go dark.

I hit an NP-problem with memory allocation. Because of the timing issue I have decided to avoid it and instead made it very simple, for now. I will sure have time to improve.. but still its NP-problem.

The code grows, I am pushing it hard so it will make to the xen-devel and lklm this week.
Huge work ahead of me on organizing patches, commenting them and formatting, rebasing and applying to the current trees. After the review, I will have to fix all errors or make changes and all over again :)

Well, in draft the whole project works, few bits there and there.
But every day I see more and more room for improvement and I also know what maintainters will tell me :)
But its ok, Id rather push it a bit and have the rest of the time for fixing and communicating.

The very-very important thing I have learned - prototyping!
I can now prototype some pieces of my tasks pretty quickly and this helps great deal. When dealing with a lot of code, this kind of modeling helps to see your algorithm very quick, test all corner cases (or most of them ;), debug and move back to the project efficiently.

So, as I am approaching official code submission, I'd better go off writing change list :)

Monday, August 5, 2013

Leaving job is not easy when looking for replacement admin

Well, thats a milestone I think. 
The vNUMA in real NUMA, going to live on real hardware... 10, 9, 8.. Until I am fixing some compile time errors.. )

I had a great day working on the project and not that great at my part-time work. Actually, these were very frustrating 4 hours.. Out of my life and project.
Funny, I interview poeple to replace me.. cool beans, I put up few tech (linux) questions as a first filter considering my other experience when I was interviewed. Questions are like this: what is inode, swap, zombie, some bash, some about getting info not from commands, but from /proc, some easy troubleshooting.
Not so hard? No! But looks like its hard for some people to comprehend why I ask all this. I am probably not right, my questions are obscure, but I use them just to start off from somewhere. And the point is not to ask something that anyone can google in a second. 
One person today was rude, he asked me questions after I ask mine, he would constantly repeat FIFO... Why the hell you bring up fifo answering questions about paging? And he refused to continue at the end.. Upsetting. Upsetting to loose time, upsetting when people have an attitude, upsetting to hear things such 'I dont work at places where there are no tools'! Wow, you need a pillow too?
Anyways, I am not a recruiter, I do not know how to interview people.. But sometimes you got to think out of the box then DataCenter is on fire.

And tools, yes, tools are important. But how now to understand if person can think if question only about commands? Or when you can download any script you like and run it.

Wednesday, July 24, 2013

source, open!

Oh, I am falling in love with git. Squashing my commits and branching are great!
I did screw up my code couple of times. Now I work with git and keep telling myself 'it's just a graph'.

Just sent out second set of RFC patches to my mentors. Well, I am not satisfied yet. I am never satisfied, as it looks like.

Xen and linux code is getting more friendly, I can pull out now stuff just from source code. I have to admit, the code is just wonderful. It is clean, transparent, easy to reuse.

As a sysadmin I hate blackbox systems. They screw my many nights of healthy sleep. I hate it when I cannot dig into what the heck is going on there INSIDE. It is a great thing when anyone can just look up into the source code and find out what went wrong.

XenAPI. The only thing I did not get yet. I will eventually, and leaving it for now as it defeated me in my few attempts to make my custom VM config options work. libxl showed some mercy and I can
mingle with my domU options when creating domains.

Few times I passed on the red light wich had never happened before. Gotta ask someone to drive me while I have another piece of functionality to think of.

I talk to people around me. I try to explain them what I am working on and what the problem I am trying to resolve. They listen. With people who are not in IT I use abstractions, transforming the programming language into the real-world concepts. Interesting enough, it helps me to think, answer the question and produce new ones. From some people I can get some answer and they would not even realize that they just gave me an idea! Eureka! :) Helps, all that matters what the model we use to resolve the problem.

Tomorrow my proffessor, mentor and my big friend will be celebrating his birthday. He is the one who inspired me and showed the way how to organize work, how to be curious, how to learn new and how to be productive. And he reads Operating Systems Architecture course and inspired many students! Happy birthday, Борис Дмитриевич!

Thursday, July 18, 2013

4:48am. I won.

Happy to see positive result! had to roll back step by step all changes from 3.11.
hypervisor: xen-4.4-vnuma-unstable
dom0: 3.10.0-rc6+ (no vnuma support yet)
domU: 3.10.0-rc6+ (vnuma support)

Well, it all works nicely together. DomU boots and works with vnuma. But dom0 will need some thoughts to apply since I dont even know whats going on there. 

Tomorrow I will try to git rebase on 3.11.0-rc1+. Good luck to me!

Monday, July 15, 2013

Taking time to think

While the kernel compiles...

That would not come as a surprise to anyone that thinking process leads to a solution finding. I have rediscovered effective method of problem solving :) I know, it is obvious.
'Put away everything and think' I tell myself every time 'it' doesn't work. The new problems come up every time I touch something new in the code. I also recognize that that is being a direct result of me poking on everywhere I would like to learn more about or need to understand.

I am sort of old school sometimes - I use a paper. I just dump whatever I know in drawings with words, some pieces of code, anything, even smiley faces :) That helps me to look at the problem from different angle. Interesting enough, scratching the paper helps to answer right questions. Also redrawing couple of times same concept but in a different form helps to render more information than was previously visible.

I consider myself a person who can easily take too general approach trying to solve all problems at once and forever. Of course, I do not know that to expect in the future, but the tendency exists. Sometimes I do make problem looking more complex that it is. I also do recognize it. And I simplify. OK, I over simplify. Then I am satisfied with the result, I can make it more complex or more universal, but usually it is not even necessary!

Now, after one month after the program start I feel that when reading the code I actually do not see the language semantics, pointers and structures, but I see the functionality. At least in the parts I work on :)

Now I understand what meant the author in one of the books about Linux kernel saying that to understand Linux one should learn about the kernel structures.

Wednesday, June 26, 2013

make clean!


make and reboot.

I have spent entire day just figuring out why all of the suddend pvops xen kernel just would not start and xend-debug.log reported:

xc: error: p2m_size < nr_pages -1 (1 < fffff: Internal error

well, looked at the code and realized that it maybe the xc tools did not pick up modified structure.
It is worth to mention that I have changed ./Makefile in xen so It will compile only what I need..
Could have choosen another way, I know.

Well, make clean and rebuild tools... Nothing, same thing.

Tuesday, June 11, 2013

The OPW internship official start is approaching quick. I am on track with my timeline on how to prepare for it.
Environment is ready, tools are almost ready, me is ready )

I will be employed full time for few days more. When announcing about my acceptance to the program, I have received understanding and support from all my co-workers and good luck wishes even though my job is not in exact match with future project. Absolutely not..
Well, I wanted to do this for a long time and I am looking forward to.

I have to say, that the amount of work what I see going through xen-devel is quite big. My mentors are top active :) I try to catch up with the topics, brushing through what is not directly related to my part (Yes, I want to do well on internship, so have to keep my curiosity under control! ).

Okay, got to finish some other stuff so I dont have to context switch a lot later.

Monday, May 27, 2013


Today is a good day and all participants received announcement about acceptance to opw program:
I did as well. Great! I am excited and I see how much work is ahead and it makes me happy.
I will be working on xen drivers with two mentors Konrad Rzeszutek Wilk and Stefano Stabellini.

Timeline: 20 days until the internship starts. While this day approaches I sniff around latest 3.10-rc2 commits (hey, 3.10-rc3 already!), learning kernel style programming guide, lurking throughout the code and reading, reading, reading.. yes, and I have another patch to work on.