Zbr's days.
September
Sun Mon Tue Wed Thu Fri Sat
           
           
2007
Months
Sep

About TODO Blog RSS Old blog Projects Gallery Notes

Sun, 30 Sep 2007

Meanwhile at appartment development side.

I've almost completed my checkroom. I coule finish it today, but then decided that I want to make an ark for the checkroom's door, so I did not complete walpaper glueing on the wall, where door is located. Otherwise this very small room (even pantry) is finished.
I need to go to development shop this week to get a colour for room's walls, special screws for arks and tubes to extend severage system (to support shower cabin and washer), maybe I will also get new ceramic tiles to extend (not yet even started) my bathroom coverage (I want to have a contrast vertical curve on two opposite walls).
Bathroom is the next task of my appartment development. Since I ordered internet setup at home (yes, likely I'm addicted), this can be quite fast, but ISP did not yet called me about setup date.

/devel/flat :: Link / Comments (2)


Sat, 29 Sep 2007

Design of the WEAVER redundancy code module in distributed storage.

Here I will briefly describe ideas of the WEAVER implementation for DST.

First, it requires some extension for configuration (although it is possible with existing commands to send all related information, it is a bit ugly), so I will introduce private algorithm's command which will allow to transfer all needed information. This will not even break backward compatibility.

Next is WEAVER implementation itself.
I will create 50% efficiency codes, which means half of each node will contain data (first half, so that later it could be used for linear algorithm for recovery for example, but that is quite ugly usage) and another half will contain parity information (and optionally checksum of the whole node or data/parity checksums separately). Reading is trivial (just like in case of usual mirroring) and will not be described here. With such nodes layout each write to the distributed storage easily allows to find a node where data should be written, private structure for each node will contain a list of nodes, which parity blocks have to be updated when given node is being written to. Each private structure will have the same per-block bitmap like mirror algo maintains, which will track clean/dirty blocks of the data. So, when number of blocks are being written to node A, number of parity blocks will be updated on the appropriate nodes. Parity update is quite trivial - it requires a read of the given parity block, xor with old data block (which will be read just before writing is performed) and xor with new data block, then parity block has to be written back. Dirty bitmap for data and parity will be updated after data and parity are written.

Complex part starts when number of nodes is turned off.
Let's first describe the case, when one node is turned off.

In this case things are just the same like above, but data is not written (and parity calculated, when write happens for other nodes, linked to given one by algorithm), so appropriate bitmap will contain not uptodate blocks.
When node is turned on, resync starts.
Just like in mirror algorithm, it will be performed only when some operation happens (which probalby should be extended to be done even if there are no operations in-flight) - I will share as much code as possible.
Each data block can be constructed by using some parity and data blocks from different nodes, so instead of reading block from remote node and writing it to given one (like in mirror), system will read number of data and parity blocks from different nodes, when they are ready, new data block will be reconstructed and written to not-synced node. When data block is reconstructed, all nodes, which parity depends on this block, will be updated accordingly.

For one failed node this looks quite simple, in theory multiple failed node is just the same, since until number of failed nodes reached fault tolerance number used in algorithm calculations, there is always number of 'good' nodes, which can be used to reconstruct at least one failed node, with newly recovered node it is possible to reconstruct missed parity bits needed to recover another node and so on. But that is theory, practice, I'm sure, will show me big number of surprises and complexities, but that is exactly why I started the project.

Right now I'm thinking about userspace implementation, I hope to complete it quite soon (maybe next week), so that kernel part would not be that hard to be done (mostly because kernel debugging is usually much longer because of compilations and reboots). When it is ready, I will mark project as completed.
I'm not sure I will push it into the kernel at that point, I will see.
After it is ready I will likely start to recall filesystem bits I collected and probably will implement simple (read: initially trivial) distributed filesystem.
Or maybe not, I think this project will flush me enough, so I might start something completely different, like process migration over the network, Markov chains text analysis, letter describing language for captcha solving or network protocol over laser link or something completely new.

Stay tuned and you will not miss interesting things :)

/devel/dst :: Link / Comments (1)


Fri, 28 Sep 2007

Mindflushing flash game for boys.

I spent two days, broke the rest of my brain, but won. Very interesting!

Spend time!

/other :: Link / Comments (2)


Stupidity.

I was asked at work to extend linux 2.6 RTC driver to support read/write operations, so that they would read non-volatile memory (we use DS 1307) of the clock chip. Manager said 'do it like I did in 2.4', after I completed the task, it was shown tht it is wrong approach (there was a cmd-like interface).
After I added sysfs interface for that, management decided that it is not enough, since they have a script, which reads/writes a byte with offset, and sysfs does not support seek.
Existing Linux RTC subsystem does not allow to have read/write operations from RTC device, actually read is supported, but only 4 bytes, which is not enough. So I extended Linux 2.6 RTC driver to be able to read and write via RTC device any amount of data with having backward compatibility with drivers, which read only 4 bytes (only one in kernel tree).
I added needed functionality (testing machine is in the next room, so I need to move there each time I need to test a new kernel), but then hardware where I needed to show result was found to be broken (RTC can not be initialized, although present), so right now I'm trying to determine what the heck is with this hardware...
Crap, I have completely no time for anything other.

/devel/other :: Link / Comments (0)


Wed, 26 Sep 2007

Climbing evening.

That was really hard training - I started with simple warming traverses and then bagan local championship boulderings. After I was tired enough I started to climb traces on vertical walls and negative slope. My insurance partner said that he thinks that one should get to the next level of trace's complexity after it is possible to complete 10 traces on the current lavel (i.e. my highest trace is 7a, so I should be able to complete 10 6c traces during training). Since I can not complete 10 different 6c traces (there are not so many traces of such complexity at the climbing zone and I only tried couple of them), I decided to finish several 6b - I managed to finish only 4 traces and then my partner moved home, so I switched back to boulderings.
That was really hard time but damn very good.

/life :: Link / Comments (0)


Tue, 25 Sep 2007

New release of the userspace network stack.

You think I forgot it? No.
Many thanks to Salvatore Del Popolo for kicking me with bugs.

This release contains number of bug fixes and ability to be used with packet sockets instead of netchannels.
And extended README with bits of documentation and examples.

New release is available at project's homepage.

/devel/networking :: Link / Comments (0)


WEAVER redundancy code.

I've started initial userspace implmentation of the WEAVER codes.
This is very simple XOR-based code and thus it is possible to miss the double bit error, so I will extend it with strong checksum. Essentially system splits the whole pool of available nodes (storages) into so called strips, which contains number of data and parity blocks (I will use sector-sized chunks). The latter is just a XOR of some data blocks, each data block which participate in given parity block is defined by parity defining sets of WEAVER code, which depends on selected number of fault tolerance, number of nodes used and selected step.
So far I plan to implement simple case for 3 fault tolerance (i.e. any 3 nodes can be turned off) in userspace in the way which will allow to construct storages with different fault tolerance number.
Stay tuned.

/devel/dst :: Link / Comments (0)


Mon, 24 Sep 2007

Climbing evening.

It is quite hard to call this training as climbing one, since most of the time I talked with Grange about recent happenings and discussed some future plans.
But nevertheless I climbed number of complex boulderings (since Grange as usual was late) from the last local championship and some warming traverses, I even completed one quite new complex traces on the vertical wall.
That was good time.

/life :: Link / Comments (0)


Sun, 23 Sep 2007

Windows DST target.

There is a port of userspace DST target to windows, which works with usual files (work with device nodes is in TODO list) in userspace, so I've started a stress testing utility implementation, which will randomly read and write blocks over the net. After this testing is completed I will test this utility with real DST system and put on the homepage.
Windows DST target was not written by me.

/devel/dst :: Link / Comments (0)


I've found what to do with presented by Oracle notebook.

I will draw small pictures in that red book, i.e. all I will see and have a time or interest to draw. Since I actually do not know and just can not draw something interesting, I will create small sized pictures. Maybe I will put something, which I think is good enough, from those drawings here.

/life :: Link / Comments (0)


Fri, 21 Sep 2007

Climbing evening.

That was interesting training, since almost every part of my body was aching after previous training, but nevertheless I managed to complete a lot of traces - from simple warming traverses and couple of trivial new traces upto quite complex old and new traces on verticall wall and negative wall.
Since Grange is slacking his ass at office (likely studying articles about distributed systems and search engines :-), I climb with local people, but since I almost do not know them, quite a lot of fun disappears.
Anyway, that was really good time there, I think I'm getting my old shape back...

/life :: Link / Comments (0)


Linux Kernel Summit group photo.

Click on photo to get full annotated version from LWN.

KS group photo

You will not find me there - I made photos on second camera with Michael Kerrisk.

/devel/other :: Link / Comments (0)


Wed, 19 Sep 2007

Climbing evening.

It was quite long ago (about three weeks) I climbed, so this training was really hard. There are many new traces: from simple to damn complex, so I tried number of them and managed to complete all tried ones (although not always without fall). Usual warming traverses, couple of boulderings and new starts at the begining of the training forced me into quite good shape, so the rest of the training was quite productive.
That was excellent time there.

/life :: Link / Comments (0)


Tue, 18 Sep 2007

New article about distributed storage on kerneltrap.

Article describes a short debate about place of the DST in the storage stack, its relation to filesystem and various ideas of creating distributed systems, which I had with Jeff Garzik (SATA and network drivers maintainer), Andreas Dilger (Lustre/Clusterfs principal software engineer) and other people.

There were two points of view - all existing distributed systems suck (too overbloated, too oriented to very expensive storage hardware, badly scaled and so on) and that existing (Lustre) is very good, so no need to reinvent the wheel, since distributed FS is quite complex, and likely will not succeed, but block device is simple and thus appealing.
Maybe it is right, we will see...

/devel/dst :: Link / Comments (4)


Mon, 17 Sep 2007

SWsoft wants me to work with them.

And they want me to work on my own projects without serious influence on todo list, but for the price of using openvz.org e-mail and working one quarter of my time on theirs kernel projects.
Looks quite attractive, although they are not interested in my non-kernel projects.

/devel/other :: Link / Comments (5)


Sat, 15 Sep 2007

Gogol bar.

Today I visited bar 'Gogol' in Stoleshnikov lane with WiJo (Evgeniy), Shurochka her sister Tatyana. We listened live ska band called "Pakava It'", I mostly saw how trumpet was used and found that I still do not know something serious, since my sounds are awful.
That was really great and fun time with good (although a bit loud) music.

/life :: Link / Comments (1)


Fri, 14 Sep 2007

New release of the distributed storage subsystem.

It only includes new configuration interface (connector over netlink socket) and fixes for number of bugs found during that move (in error path).
Enjoy.

/devel/dst :: Link / Comments (4)


Thu, 13 Sep 2007

London photos.

I've just added set of my London photos and several Cambridge photos to the gallery.

Please note, that I made all London photos without any automatic, since my camera is broken, so I needed to perform focus, aperture and exposure by hands, which sometimes resulted in bad quality. But actually I liked that process, since quite frequently it ended up with pictures I really wanted to see, but automatic was not able to detect my intentions. Unfortunately I did not get my tripod, otherwise I did not move from there that fast :)

Anyway, enjoy!

And here are my new books I brought from London:

New books

"Engineering a compiler" by Keith D. Cooper and Linda Torczon.
"The road to reality. A Complete Guide to the Laws of the Universe" by Roger Penrose.
"Introduction to drawing" and "How to draw head and body of the human". Yes, I will try to learn, but I think I'm pretty hopeless :)

I think I would like to stay in London for longer (a year or so), but have no plans right now.
I want to greatly thank Tanya, Andrey, Ira and Meph for the excellent time I spent with them there. That was really great!
I hope I will quickly resolve my paid job issues and will visit you again :)

/life :: Link / Comments (0)


Distributed storage testing.

Patch sent to linux-kernel@ and in archive is a bit broken, since it does not even compile (I messed with commits again), and I got no response about it.
Paul McKenney provided RCU review of the patchset and found it generally ok, although with couple questionable moments. RCU is not used in DST actually, so everything is good.

I will release new version soon (hopefully this week), which will include simple parts of the DST short-term todo list:

  • move from ioctl/char device to netlink based setup
  • store linear/mirror information at the end of the appropriate node's storage to allow extended autoconfiguration (if this will require a bit more work, then likely I will not put it to the next release)
Long term todo list includes:
  • WEAVER codes implementation (I fully understand it now, but will extend original design to store checksums of the data to catch double switched bits, which can lead to data corruption for XOR based codes).
    First in userspace.
  • start thinking about distributed filesystem (simple first steps) over distributed storage. I know, there is number of them, but I want my own, which will be tightly collaborated with underlying device for maximum performance and reliability.
    After Sun's announcement about buying ClusetFS (Lustre) I think about it more and more.

/devel/dst :: Link / Comments (0)


Sun, 09 Sep 2007

London does not deserve one day tour.

So I changed my ticket and will return wednesday. This is really very interesting city, I think I like it.

/life :: Link / Comments (0)


Sat, 08 Sep 2007

I have no words, just emotions.

Or short story about how I managed to walk in London.

Let me start from the beginning - I moved from Cambridge to meet with my friends in London, but I had only UK postal code of the destination and cached google maps and uk street maps pictures. The former with quite small resolution, i.e. without any street names, but with undeground station name. So I moved to the needed undeground station without any problems from King's Kross station, where I arrived from Cambridge.
When I moved out of the station building I found that my phone battery is completely discharged and I can not even turn phone on. So, first problems - I have no address, only postal code, and have no phone access. I was quite in a bad mood, since I managed to drop my camera today and it stopped to autofocus and make photos in automatic mode, but, well, I have curvy hands, so stop about that.
Anyway, I arrived to the needed undeground station and moved into needed direction, since I had roads on the map without names, I needed to select a distination intuitevly and got azimuth for the needed direction. Because of absence of street names on my map, I needed to make quite a big loop over main streets, but eventually I roughly was in the needed area. Actually I did not know what to do next, but eventually found the street for needed postal code. Street contained quite big number of houses, some of them are multi-appartment. Initial idea was to start calling to every bell and ask for my friends, but that was not a very good thing, so I started to talk with people on the street and asked them to show me what house has given postal code. No one could reply actually, but then I found Mike - a guy who asked me first about address, then after I said that I have only postal code he asked a number to call, when I said that my phone is fully discharged I saw that he has the same phone as mine, so I asked him to give me a battey, which he gladly agreed, so I called my friends and got a house number. He did not get a beer though, but I was quite happy that there are such people here. In russia, if anyone asks your phone then be ready he will run away with it.
It was quite fun journey.

I liked the whole summit - I saw very interesting people there, but could not actually talk with them - I did not know anyone so could not break other's conversation. I glad I was there and met those people. That was fun.
I'm about to drop my ticket back and return later - London is very interesting (although I like Cambridge more).
Thanks, that is really good meeting.

/life :: Link / Comments (0)


Fri, 07 Sep 2007

Walking in Cambridge.

I've added set of Cambridge photos I made walking with Oleg Nesterov, Kir Kolyshkin (OpenVZ) and Pavel Emelianov (OpenVZ) in Cambridge after kernel summit.

This is really special city.
Enjoy.

/devel/other :: Link / Comments (0)


NetApp is a real crap.

I've just read about a suit against Sun and ZFS about infrigment of WAFL and RAID patents.
Next one can be Oracle with btrfs and Linux in general because of RAID technology included in the kernel.
How hypocrisy is Dave's NetApp blog after that, shame on you. I'm glad I declined to work with them.

/devel/other :: Link / Comments (0)


Thu, 06 Sep 2007

Containers talk by Eric Biederman and Paul Menage.

Overall notes highlighted in this talk were overview of the support in linux kernel, splitted into namespaces: network, uid, pid, ipc, most of which is already completed and in the kernel, maybe except network, since there is no David Miller's approval on the whole idea. Namespaces TODO list includes additional features (time, dev and other virtual namespaces), isolation issues for physical devices, consolem printks and so on. Next control groups (task containers) were described: memory controller, i.e. limit usage for virtual server, CPU usage limiting, cpusets, task freezer and various per-container limits were noted. Another simple alternatives were shown like rlimits and existing groupping tools (uid/pgrp and others), and theirs limitations. Overhead of the containers was shown to be negligible, but it is possible under some circumstances to trade performance for QoS for some resource controllers. Control group TODO list include virtual servr support and more tight integration with namespaces.

/devel/other :: Link / Comments (0)


Kernel scalability talk by Matt Mackall and Nick Piggin.

Lockless page cache patch and its complexity were highlighted, SLAB/SLUB allocators were presented with short discussion about performance of both (I failed to distinguish SLAB from SLUB pronuncation, but one of them was blaimed as having worse performance, likely it is SLUB, so Matt requested a more precise benchamrk results and testing environment explaination). Number of cache issues and possible solution from avoiding cache misses, moving data between CPUs, MSI interrupt usage in network were shortly concerned by the audience.

There was a note from Christoph hellwig about need for faster block remapping algo used in block layer and short discussion about extent/block based remapping patches.

Problems with page flushing problems and possible ways to fix them were highlighted next. Other issues concerned are larger page usage, pago lock control from filesystems, extent based map, buffer head problems. Scaling down to embedded world showed number of problems with kernel size.

/devel/other :: Link / Comments (0)


Syslet/threadlet and realtime kernel talk from Ingo and Thomas.

Main idea beind -rt patchset is to make system more predictible, not exactly faster in some environments, but more predictible. Ingo highlighted that quite big part of his -rt kernel patchset moved into the kernel already, and that some other bits are pending. Number of features (like irq processing threads) likely will not be moved into the kernel because of its very special nature, although number of its positive sides for existing kernel was highlighted.

Threadlets were shown as a AIO successor, since it is much more easier to program than existing AIO models and any other generic state machines. Its design, implementation, usage cases and possible challenges and problematic places were shortly described.

/devel/other :: Link / Comments (0)


Linux and enterprises.

First enterprise presentation was from DreamWorks. They have more than 600 linux desktops and even higher number of linux machines in the rendering farm. They run own application both batching and iteractive and way how Linux memory management works is not always the best one. Swapping was the main problematic issue with short coverage of swap prefetch patches (each time this words were said the whole audience exploded :). Another issue is OOM condition and oom-killer, which usually kills not what is supposed to be, but it is quite small problem comparing to swap troubles. The last problem discussed is NFS mounting and attributes issues, discussion showed that problem is being solved and there are patches flying around to fix the issue.

Next enterprise client was Credit Suisse bank. This guys want to talk with kernel community directly, since work with distros usually turns out to be completely unproductive. Discussed issues include kernel scheduler, real-time linux ( it was showed that this patchset greatly improves theirs performance without any special tuning), linux diagnostics (some kind of SystemTap, uTRACE and other solutions), TCP/IP issues (Nagle algorithm jitter, various new features of the protocol, like quickacks and slowstart changes). Number of desired features was highlighted related to linux networking like message passing protocols, RDMA and tcp/ip offloading usage, small performance tests of the different technologies and NICs (with and without offloading features) was shown. This rised quite unhealthy discussion with pointing possible bugs in the presentation data, with possibly unconfigured things on the testing side. It was shown that having test setup handy will result in the immediate fix of the problem, but having such testing environment is not always possible.

The last enterprise presentation was from Linux Foundation. First virtualization was concerned with highlighted ideas of sponsoring community developers and providing some kind of management and workgroup for controlling the whole process (which was pointed by audience as a worthless idea). Next issue discussed was power management and so called 'green linux', it was pointed that some areas are not yet fully covered like embedded and servers, and fair amount of works needs to be done pushing hardware vendors. Driver development presentation showed a desire to have open source drivers (surprise), promoting NDA program to allow developers to have an access to hardware, and some kind of business model to work with open source drivers. Presentation briefly showed security issues (like encrypted filesystems and usability of existing features like selinux), scalability (NUMA features, FS and IO scalability isses were described), kernel debugger (it was shown the possibility to sponsor a developer to cleanup and submit KGDB), IPv6 (mostly requirements to make a sertification and meet telco market). Testing projects and efforts in automative process wre highlighted. ZFS easy administration was shown as example of a good taste. SystemTap market readiness was shown, but audience (especially Christoph Hellwig) replied very cold - code is not even remotely in the mergeable form, existense number of wrong design issues in DTrace and SystemTap was highlighted, so essentially probability of its merge is quite low. The last issue discussed is RDMA hooks and need for some kind of generic stack for this technology, which is a bit frowned upon in the community because of it exists like a black box without any ability to debug and fix bugs there.

/devel/other :: Link / Comments (0)


I had a short note about kernel development process.

And my view of the problem of the absence of reviwers and feedback. My point is that when people, which were put into copy list, do not provide any kind feedback, this is just a disrespect for the developer. To fix such hard demotivation I proposed an idea of always answering mails, i.e. if someone is added to Cc: list, then it have to reply. It can be different: 'I do not care, please drop me from copy list', 'I have not time for review', 'I do not like this because of ...', 'This sucks', 'I like it but' and so on. There is no need to answer to every mail, just to show that you got the message, understood idea (if wanted) and provided a feedback. Absence of such feedback really demotivates developers, and thus they will not provide a review for another work, so we have a closed circle: core kernel hackers do not provide feedback to other developers, which do not review other's work.
Idea was met quite cold - no one likes to reply to mails they do not care about, but I think people should start understanding, that until they are changed itself and provide a feedback, others will not move, and thus call from core developers for more reviews is just a hypocrisy.

/devel/other :: Link / Comments (4)


Wed, 05 Sep 2007

Added KS photos.

Two albums - flight to the London and views from the plain, and Linux kernel summit attendees - set of photos from the meeting.
All are awailable in gallery.

/devel/other :: Link / Comments (0)


Everyone likes to create a new userspace API and generally

no one can make this really good (at least for the first turn). Michel showed us how bad some errors in this area are and rised a discussion about how the situation could be if not fixed, but at least changed - he proposed to completely formalize userspace API development. Discussion though turned into proposing different ways of (automatic) testing.

/devel/other :: Link / Comments (0)


Bugs.

Andrew described how kernel bugzilla is being used and what can be improved in the way bug walks from original reporter to developer and eventual fix and what problems rise on this way like bugs which gets 'lost', i.e. when reporter does not return back or can not proceed with testing, timing issues in fixing bugs - if bug has not been fixed very quickly probability of the successful resolve drops dramatically. Discussion was rised about ways bugs are being fixed right now with pointed problematic places and how a situatin with unloved bugs and bad developers should be fixed. Discussion then proceeded about review process and how it can be improved further. One of the idea proposed by Andrew is to introduce new 'Reviewed-by' tag for patches, which will include a link for review so that people could determine quality of the patch and thus introduce some kind of virtual currency and make review process more attractive, which was objected by Linus at least for small patches.

/devel/other :: Link / Comments (0)


Kernel summit stated with brief introduction by Theodor Tso.

Then boring stuff took its place: Greg Kroah-Hartman started a discussion about IP, distros all related things. People talked about shorter/longer releases, about how will or will not entterprise customers and community happy with that, about tracking regressions... A long and quite emotional discussion about API breaking took place then. After passions were cooled down a bit, people talked about new hardware, about getting drivers upstream and related to this process problems. Switched to merge early motto and decided that even bad driver in the tree is better than no driver at all (questionable from my point of view).

/devel/other :: Link / Comments (1)


Next part is mini-conferences reports.

First one is power management report. Found that suspend to ram kind of works for majrity of people, but there are quite a lot of problems mostly in drivers. Suspend to disk is a thing that everyone hates, and second version (TuxOnIce) is out of the tree. Drivers are blamed for all problems, like some network cards (mostly wireless) can not be turned off or switched into power-saving mode (like OLPC wireless card). Next filesystem/storage report. It was held to connect different filesystem/storage developers together to understand how to have a progress in crossing areas (like unionfs, which touchs underlying filesystem in different ways) Number of new storage features (like self-correcting code usage (if I understood that correctly)) and object-based disks were briefly described. VM talk touched memory fragmentation, allocation, caches and theirs features (like shrinking). FS part contained generic delayed allocation and its problems and short description of various features. Containers and related problems were shortly introduced. Virtualization minisummit report included brief status of the different virtualization technologies existing today. number of issues were described: performance problem in the virtualized environment and ways to deal with them, interfaces and access methods, different virtualization mechanisms and theirs status and long way of merging virtualization support into different distros. This presentation was actually too technical, but still very interesting (even modulo my understanding).

/devel/other :: Link / Comments (0)


Tue, 04 Sep 2007

A day was spent with fun.

After I found a hotel and managed to turn my EU electricity jacks to UK sockets (I got the last adaptor in the nearest electricity shop) I read how to find filesystem conference, but it was already too late, so I missed the whole event.

Anyway, till dinner there was noting interesting, I tried some local beer, walked around and generally slacked. Dinner was fun - after some bits of food I opened a present - a liter of Nemiroff vodka and people started to feel themself good. I believe about one quarter of attendees sat with us and tried a russian present, but most of them usually ran away after that :)
Next time I will get two bottles.
After dinner I checked local pubs with Andi Kleen and his brother until late night (where I saw a person with OpenSolaris t-shirt btw).
Ugh, and I had a small talk about how linux maintainers and big-name developers suck when things come to patches from others and silence from core people.

I tried to say to people, that such crowdy meeting likely will not and can not end up in a good technical discussion, but eventually everyone dropped to it and started to talk about Linux, about kernel and related stuff...

Anyway, that was really fun day. Let's see how first day of the conference will go.

/devel/other :: Link / Comments (2)


I'm here.

I've seen already number of kernel hackers, although talked a bit only with Matt Mackall, since we both failed to get keys (wrong hotel, now everything is ok).
I found that I have terrible accent and people quite frequently can not understand me. Usually after louder pronuncation things became clear.

The only known for me people I saw are David Miller and Alan Cox.

So far I only advised to drop all our scheduled conversations and play football on the near field. No one replied yet.

/devel/other :: Link / Comments (1)


Mon, 03 Sep 2007

Linux Kernel Summit.

I'm about to leave Moscow in several hours and move to kernel summit.
I really do not know what to do there, but I think I will spent a good time there.
Have a nice time.

/devel/other :: Link / Comments (0)


Sun, 02 Sep 2007

Quotation of the week.

Jeff Garzik wrote:

Re: r.kernel.org

Your BSD software appears to have a bug in it. Your email's CC line was truncated at "netdev@vge", with the rest spilling into your email's subject line.

I'll wager this bug also triggered a buffer overflow on your side, leading to an unwanted public spew of anti-Linux conspiracy theories.

/devel/other :: Link / Comments (2)


Sat, 01 Sep 2007

Memory defragmentation.

Christoph Lameter from SGI has posted a patchset aimed to implement memory defragmentation in his SLUB memory allocator.
Main idea of the new version is to find pages, which are in the slab, but are not referenced, to free them and combine into bigger chunks (compound pages).

SLAB/SLUB/SLOB still does not support in-page defragmentation, which was one of the main issues in my network (tree) allocator, which combined any objects close to each other, so that allowed bigger allocations, but not only pages into compound pages (which is can do too). Main feature of the network allocator was the idea, that objects should never be freed on the different CPU than where it was allocated. In SLAB this approach is never used and objects can be freed on different than allocation CPUs which leads to the fragmentation.

/devel/networking/nta :: Link / Comments (0)