Home Home > 2010 > 06 > 14
Sign up | Login

Archive for June 14th, 2010

Hello Word

June 14th, 2010 by

Hello Word…I’m the new openSUSE  Member.

Use the forçe, USE openSUSE!

“Collaborate attract friends, compete attract enemy”

http://pt.opensuse.org/Usuario:Cabelo

Hackweek V: Local caching for CIFS network file system

June 14th, 2010 by

Hackweek

It’s that time of the year when SUSE/Novell developers use their Innovation Time-off to do a project of their interest/wish – called as Hackweek. Last week was Hackweek V. I worked on making the Common Internet File System (CIFS) cache aware, i.e. local caching for CIFS Network File System.

Linux FS-Cache

Caching can result in performance improvements in network filesystems where access to network and media is slow. The cache can indirectly improve performance of the network and the server by reduced network calls. Caching can be also viewed as a preparatory work for making disconnected operation (Offline) work with network filesystems.

The Linux Kernel recently added a generic caching facility (FS-Cache) that any network filesystem like NFS or CIFS or other service can use to cache data locally. FS-Cache supports a variety of cache backends i.e. different types of cache that have different trade-offs (like CacheFiles, CacheFS etc.) FS-Cache mediates between cache backends and the network filesystems. Some of the network filesystems such as NFS and AFS are already integrated with FS-Cache.

Making CIFS FS-Cache capable

To make any network filesystem FS-Cache aware, there are a few things to consider. Let’s consider them step by step (though not in detail):

* First, we need to define the network filesystem and it should be able to register/unregister with the FS-Cache interface.
* The network filesystem has to define the index hierarchy which could be used to locate a file object or discard a certain subset of all the files cached.
* We need to define the objects and the methods associated.
* All the indices in the index hierarchy and the data file need to be registered. This could be done by requesting a cookie for each index or data file. Upon successful registration, a corresponding cookie is returned.
* Functions to store and retrieve pages in the cache.
* Way to identify whether the cache for a file is valid or not.
* Function to release any in-memory representation for the network filesystem page.
* Way to invalidate a data file or index subtree and relinquish cookies.

Implementation

I wanted to get the prototype working within a week. So the way I have implemented it is rudimentary and has lot of room for improvement.

The index hierarchy is not very deep. It has three levels – Server, Share and Inode. The only way that I know of identifying files with CIFS is by ‘UniqueId’ which is supposed to be unique. However, some server do not ensure that the ‘UniqueId’ is always unique (for example when there is more than one filesystem in the exported share). The cache coherency is currently ensured by verifying the ‘LastWriteTime’ and size of the file. This is not a reliable way of detecting changes as some CIFS servers will not update the time until the filehandle is closed.

The rudimentary implementation is ready and the cumulative patch can be found here:

http://www.kernel.org/pub/linux/kernel/people/jays/patches/

[WARNING: The patch is lightly tested and of prototype quality.]

Here are some initial performance numbers with the patch:

Copying one big file of size ~150 MB.

$time cp /mnt/cifs/amuse.zip .
(Cache initialized)

real 1m18.603s
user 0m0.016s
sys 0m8.569s

$time cp /mnt/cifs/amuse.zip /
(Read from Cache)

real 0m28.055s
user 0m0.008s
sys 0m1.140s

openSUSE Edu: Li-f-e theme for 11.3

June 14th, 2010 by

For openSUSE Edu: Linux for Education based on openSUSE 11.3 we will be going with great new default openSUSE 11.3 theme by Jakub “Jimmac”  Steiner with small addition of our own, here is how it looks.

(more…)

Some wrap-up from LinuxTag

June 14th, 2010 by

Just traveling back by train from LinuxTag, Berlin to Nürnberg. How was LinuxTag? In general it seems to me that LinuxTag may should change their motto “Were .com meets .org” as the event changed over the years more and more to an community project events with a few companies attending and a few business visitors passing by. I wonder who’s willing to pay the bill for LinuxTag ongoing? But that’s not of my business. Apart of the trade show the LinuxTag team served a pretty broad and high quality 4 days conference. For the community guys and girls I’d say it was a pretty good event with much conversation and meeting of people you normally just meet on mailingslists, forums or IRC and with a bunch of poeple new or intersted in Linux and open source.

We had big fun at the openSUSE booth showing mainly the openSUSE Build Service 2.0 and milestone 7 of openSUSE 11.3. Additional of this usual trade show program we served daily 3-4 small hack sessions on the booth to teach people in things like, Roll your first package in the Build Service, Insights into GNOME 3.0 or learning some Inkscape magic.  They all were well attended and gave room for intensive 1:few conversations. The biggest fun we had with “Henne’s handicraft workshop” which took place daily at 5pm at the booth and covered stuff like creating your openSUSE bag, match LinuxNacht dress cody by wearing an openSUSE pin etc.

In the conference I visited a few presentation to get more knowledge about SUSE Studio, Mono, open sourc in companies etc. I visited as well Microsoft’s keynote and I was not alone in the room 😉
The keynote was given by James Utzschneider who’s heading the open source department at Microsoft since less then a year but is with Microsoft for over 15 years. He’s a good talker and it looks to me that he’s a smart guy as well. He was pretty clear on the open source strategy Microsoft is following:

  • Microsoft changed heavily. Everything can be put on the table for disussion today but should be backed with good arguments.
  • Customer are asking that Microsoft products work seamlessly with open source products where ever they are used at customers location. So, main goal here is to follow common standards and improve the interoperability in literally all areas to make the customers confident and stay with Microsoft products.
  • Microsoft is a business company and is mainly driven through business cases – if the open source path is beneficial in $ for Microsoft – Microsoft will take it further down. Its pretty unlikely that things are done for the open source community just to make them happy.

We might get in touch with James as Microsoft could spice up the openSUSE conference in October. Ahh, with regards to that we informed pretty many other projects and developers at LinuxTag about the openSUSE conference and this years motto “Collaboration accross borders” and it was well received and we should be able to cover a number of interesting topics working together with communities other then the openSUSE one. Now it the time to shape the conference, call for papers is open till July 31.

Pavol put up a collection of photos which give a good summary of openSUSE @ LinuxTag 2010. We had fun at LinuxTag 2010, had many good conversations, got new valuable input in many areas and are keen on how LinuxTag evolves in the future.