Search Results: "ron"

20 November 2009

Ian Wienand: Go L4!

By now everybody has now heard about Go, Google's expressive, concurrent, garbage collecting language. One big, glaring thing stuck out at me when I was reading the documentation:
Do not communicate by sharing memory; instead, share memory by communicating.
One of the examples given is a semaphore using a channel, which I'll copy here for posterity.
var sem = make(chan int, MaxOutstanding)
func handle(r *Request)  
    sem <- 1;    // Wait for active queue to drain.
    process(r);  // May take a long time.
    <-sem;       // Done; enable next request to run.
 
func Serve(queue chan *Request)  
    for  
        req := <-queue;
        go handle(req);  // Don't wait for handle to finish.
     
 
Here is a little illustration of that in operation. Semaphores with Google Go Serve creates goroutines via the go keyword; each of which tries to get a slot in the channel. In the example there are only 3 slots, so it acts like a semaphore of count 3. When done, each thread returns its slot to the channel, which allows anyone blocked to be woken and continued. This instantly reminded me of the very first thing you need to do if you ever want to pass Advanced Operating Systems -- write a semaphore server to provide synchronisation within your OS. In L4, threads communicate with each other via inter-process communication (IPC). IPC messages have a fixed format - you specify a target thread, bundle some data into the available slots in the IPC format and fire it off. By default you block waiting for a reply -- this all happens within a single call for efficiency. On the other side, you can write servers who are listening for remote IPC connections, where everything happens in reverse. Here's another illustration the of the trivial semaphore server concept Shehjar and I implemented. L4 semaphore server example Look familiar? Instead of a blocking push of a number into a slot into a channel, you make a blocking IPC call to a remote server. My point here is that both take the approach of sharing memory via communication. When using IPC, you bundle up all your information into the available slots in the IPC message and send it. When using a channel, you bundle your information into an entry in the channel and call your goroutine. Receiving the IPC is the same as draining a channel - both result in you getting the information that was bundled into it by the caller.
IPCGo
Start threadStart goroutine
New thread blocks listening for IPC messageGoroutine blocks draining empty channel
Bundle information into IPC messageBundle data into type of your channel
Send IPC to new threadPush data into channel
Remote thread unbundles IPCgoroutine drains channel and gets data
Whenever you mention the word "microkernel", people go off the deep-end and one thing they seem to forget about is the inherent advantages of sharing state only via communication. As soon as you do that, you've broken open an amazing new tool for concurrency, which is now implicitly implied. By communicating via messages/channels rather than shared global state, it doesn't matter where you run! One of those threads in the example could be running on another computer in your cloud, marshalling up it's IPC messages/channel entries and sending them over TCP/IP -- nobody would care! At any rate, do not communicate by sharing memory; instead, share memory by communicating is certainly an idea whose time has come.

19 November 2009

Russell Coker: First Dead Disk of Summer

Last night I was in the middle of checking my email when I found that clicking on a URL link wouldn t work. It turned out that my web browser had become unavailable due to a read error on the partition for my root filesystem (the usual IDE uncorrectable error thing). My main machine is a Thinkpad T41p, it is apparently possible to replace the CD-ROM drive with a second hard drive to allow RAID-1 but I haven t felt inclined to spend the money on that. So any hard drive error is a big problem. Fortunately I had made a backup of /home only a few days ago. I use offline IMAP for my email so that my recent email (the most variable data that matters to me) is stored on a server with a RAID-1 as well as on my laptop and my netbook. The amount of other stuff I ve been working on in my home directory is fairly small, and the amount of that which isn t on other systems is even smaller (I usually build packages on servers and then scp the relevant files to my laptop for Debian uploads, bug reports, etc. The first thing I did was to ssh to one of my servers and paste a bunch of text from various open programs into a file there. That was the contents of all open programs, the URLs of web pages I was reading, and the contents of an OpenOffice spread-sheet which I couldn t save directly (it seems that a read-only /tmp will prevent OpenOffice from saving anything). Then I used scp to copy 600M of ted.com videos that I hadn t backed up, I don t usually backup such things but I don t want to download them twice if I can avoid it (I only have a quota of 25G per month). After that I made new backups of all filesystems starting with /home. I then used tar to backup the root filesystem. The hard drive in the laptop only had a single bad sector, so I could have re-written it so that it would be remapped (as I have done before with that disk), but I think that on a 5yo disk it s probably best to replace it. I had been thinking of installing a larger disk anyway. On restore I restored the root filesystem from a month-old backup and then used diff -r to discover what had changed, it took me less than an hour to merge the changes from the corrupted root filesystem to the restored one. Now I have lots of free disk space and no data loss! I am now considering making an automated backup system for /home. My backup method is to make an LVM snapshot of the LV which is used and then copy that this gets the encrypted data so I can safely store it on USB devices while traveling. I could easily write a cron job that uses scp to transfer a backup to one of my servers at some strange time of the night. The next issue is how many other disks I will lose this summer. I have installed many small mail server and Internet gateway systems running RAID-1, it seems most likely that some of them will have dead disks with the expected record temperatures this summer.

Erich Schubert: If you are in Bavaria, sign up for the smoking ban vote!

Starting 01/01/2008, Bavaria had introduced a quite hard smoking ban, which also included bars and restaurants. It however contained a backdoor by excluding non-public locations, which led to the creation of 'smoker clubs' where you had to become a member to be admitted. At some point, most clubs were of this kind.In August 2009, however, the law was changed to exclude beer tents (Oktoberfest ...) and small bars. Many people belive that this was to get votes on the elections in september 2009 (which ended up in a minus of 6-7% compared to the previous election and a historical low for the biggest party).This caused several organizations to call for a public vote on restoring the smoking ban to the 2008 state (without the 'smokers club' backdoor). In order to force a public vote on a law (without the governments support!), we need 10% of the voters to register as supporters for the vote. You have to register at your registered home town. For Bavaria, this means about 940.000 supporters.If you are registered voter in Bavaria, please drop by your municipality and sign up. You need an ID and 5 Minutes, that's all. 940.000 supporters is an incredible lot of people to get to the offices, take along your friends!When we get enough supporters, the Bavarian government has two options: accepting the changes as proposed (and thus making the initative obsolete), or conducting a public vote on it, offering an alternative (e.g. the current law, no change) and have the voters decide (which is quite expensive, so if many many people sign up, they might save that money and just pass the proposed change themselves).For more information (german only), check the Nichtraucherschutz Bayern Website, including the sign up office locations.P.S. In other European countries, the introduction of a strong smoking ban has led to a 10-15% decrease in heart attacks (20% for non-smokers). The german constitutional court has also already ruled that the protection of non-smokers and employees from passive smoke weights stronger than the individual's freedom to smoke in enclosed spaces.

Josselin Mouette: Why python2.6 is still not in unstable

Getting python2.6 as the default ASAP is currently the #1 priority for the Python modules team. I also consider it very important and tried to help with it, but it is starting to get depressing. The plan is to fix all packages in unstable to be compatible with python2.6 first. This would be easy if there hadn t been a very badly planned change in the installation paths that came together. Because of it, quite a number of packages have to be fixed. Two months ago, I filed a lot of bugs in that order. I missed a number of issues, but overall, almost all packages have been fixed, thanks to Kumar Appaiah, Bastian Venthur and everyone else who sent patches and NMUs. One of the biggest issues, though, comes from python-central. Since it doesn t handle some of the new paths that were introduced (which is somehow ironic, since the python-central maintainer, Matthias Klose, is also the python maintainer who did this change), a large number of packages FTBFS when built against python2.6. In Ubuntu, it turned out to be a giant mess, most packages using python-central needing changes, and we wanted to avoid that. This is why Piotr O arowski sent a NMU for python-central that fixes these issues for good. Guess what happened? Matthias Klose uploaded a new version that does not include the python2.6 fixes, completely discarding the work that has been done. And of course, making the upload of python2.6 to unstable, which was ready to be done in a few days, impossible. I think it s fine if Ubuntu maintainers don t have the time to handle their packages in Debian. But it is clearly not acceptable to hold back development in Debian, nor to treat it as a garbage dumpster where you can send all the crappy software solutions that were badly designed in Ubuntu to duplicate them in Debian. This is what Matthias has been doing for several years. For how long are we going to tolerate such behavior? For how long will we leave such a critical package in the hands of a single person with no interest in Debian?

18 November 2009

Axel Beckert: Spam in SMTP not via SMTP

While examining the mail queue after a big mail server migration, I found the following reason for a bounce (hostnames replaced according to RFC2606):
550-5.1.1 - 
550-5.1.1 -
550-5.1.1 TO LEARN WHY YOUR EMAIL WAS REJECTED PLEASE GO HERE: 
550-5.1.1 - 
550-5.1.1 http://www.example.com/answers/dWtsb3R0b3NAdWtsb3R0ZXJ5LmNvLnVrPgA=AAA=/
550-5.1.1 - 
550-5.1.1 Cheap, Reliable Webhosting
550-5.1.1 http://www.example.com/a/hostgator/
550-5.1.1 -
550-5.1.1 Round-Trip Flights under $200 from Priceline!
550-5.1.1 http://www.example.com/a/pricelinertf/
550-5.1.1 -
550-5.1.1 Free Skype-to-Skype calls on your mobile
550-5.1.1 http://www.example.com/a/skype/
550-5.1.1 -
550 5.1.1 -
What s next? Advertisements in HTTP headers? Oh, I forgot, they already exist and are called referrer spam .

17 November 2009

Russell Coker: Debian SSH and SE Linux

I have just filed Debian bug report #556644 against the version of openssh-server in Debian/Unstable (Squeeze). It has a patch that moves the code to set the SE Linux context for the child process before calling chroot. Without this a chroot environment on a SE Linux system can only work correctly if /proc and /selinux are mounted in the chroot environment. deb http://www.coker.com.au squeeze selinux I ve created the above APT repository for Squeeze which has a package that fixes this bug. I will continue to use that repository for a variety of SE Linux patches to Squeeze packages, at the moment it s packages from Unstable but I will also modify released packages as needed. The bug report #498684 has a fix for a trivial uninitialised variable bug. The fix is also in my build. Also I filed the bug report #556648 about the internal version of sftp being
incompatible with SE Linux (it doesn t involve an exec so the context doesn t change). The correct thing to do is for sshd to refuse to run an internal sftpd at least if the system is in enforcing mode, and probably even in permissive mode. deb http://www.coker.com.au lenny selinux Update: I ve also backported my sshd changes to Lenny at the above APT repository.

16 November 2009

Gunnar Wolf: Personal assessment about myself: Being slow everywhere

Sigh I am starting to fill up my annual report for my real-life work. You know, that chore you must do every year where you score little bullets next to each completed project and talk well about yourself. For my workplace, fortunately, I do not have to lie and convince people I am worth rehiring - As this year I achieved definitividad as a T cnico Acad mico Asociado C de Tiempo Completo at my University, I can say for sure I have long-term job safety. UNAM is the best place for me to work, and I am most grateful Even if I do want to advance for the future, even though I would strongly like at some point to start working in a real academic position My job is mostly operative, limited to keeping things running smoothly in our network and servers. I work in a social sciences (Economics) research institute, and even though I have taken on an interesting project that is viewed from the social sciences I do expect to finish with a very interesting product in the near future, my interest lies in computing as a science. Anyway, back on track This is the time of year to start evaluating many things, many factors, from many different sides. And yes, for me that involves measuring how am I faring in my involvement in the projects I most care about Specifically, Debian, but also several other Free Software projects, even if my involvement in them is mostly organizational. I am once again going through a tough period in my personal life, and the impact it carries is obviously deep. However, I am not fond of finding excuses for my underachievement or underperformance. And that's what I feel now. Even more when I see posts such as Zack's and Tim's status updates, and when I see that we continue to be on a history-high streak of RC bugs. Regarding the several teams I am (at least formally) involved with in Debian, I have been away from the pkg-perl group for far too long... It is still my first group when it comes to identifying myself with - Both as on a personal level, as I consider them as good friends and great people to work with, and I do feel the responsability to share the load with them, as maintaining >1300 packages (even if they are so highly regular) is just not an easy task. But for over a year, my involvement has been basically zero. I have been a bit more active on pkg-ruby-extras, maybe paradoxically as it is a smaller team and with less packages (as I know it is much less probable for somebody to keep my packages in adequate shape if I don't do it)... and also because I am working more with Ruby than Perl nowadays. And finally, about Cherokee, I decided during DebConf9 to redo the packaging to fully use DH7 instead of our old-style quasimanual style. I have had several bursts of activity, and am almost-almost-ready to do the first newstyle upload... But so far, have been unable to do so. Of course, keyring-maint: With Jonathan's help, I have come to terms with most of the processes. Both Jonathan and I have been swamped lately, but at least I think I am finally helping speed up the process instead of holding it down. We do, yes, have several pending updates - but are working our way up the queue, and I hope not to leave people waiting for too long. And yes, we have discussed several ways of documenting and automating several of the tasks we currently sustain, and that should come soon I have been also leaving maybe a bit too much responsability aside on EDUSOL, for which today we are entering the second week of activity, and I'm very sorry to see our server is just too overloaded to even reply to even answer to me And even lacking admin powers myself, I should have worked earlier on setting up redundancy on a more automatic way (as we have an off-site backup we can promote to live and redirect to, but I am unable to do this... Given that I am the techie person on board/the only "professional" sysadmin). This year I also quietly finished the bulk of the Comas rewrite. What? Comas? Still alive? Yes, and you can expect me to show it off to more people soon, and get it used for more conferences. I will talk more about it (and its motivation, and its current status) later on But basically, the only two things that Comas shares in common with the mod_perl-based system most of you got to know (mainly at CONSOL 2004-2008 or at Debconf 5 and 6, although I know of several other conferences which used it) and the current incarnation are The (most) basic database structure and the name. The project underwent a full rewrite, and is now a far more flexible, far easier to install, Ruby-on-Rails based application. And most important, it does no longer involve your name being Gunnar Wolf as a prerequisite for successfully setting it up ;-) Regarding DebConf, I have promoted a Central American MiniDebConf, and we are right on track for holding it in late March in Panam City. Everybody's invited, and we will have (surprise, surprise!) the very professional involvement of Mr. Anto Recio as local team, as it seems he didn't have enough with last year's DebConf9 and wants to suffer further. What am I lacking here? Motivation. I have been quite pessimistic, possibly turning some people away, even though we have a good first sampling of interested people's profiles and expectations. If you want to get involved, tomorrow (Tuesday 17-nov) we will have a meeting at Freenode's #sl-centroamerica, 17:00 GMT-6. Please note we do need involvement from the Central American communities, it is more than just a motivational issue. Last meeting it seemed Anto and I were the only people pushing the MiniDebConf - and frankly, that would be a basis for not even holding it. We need motivation from the very people involved in it! Anyway You can see I have (and it seems to be a constant in my life) a series of contradictions going on. However, the excercise of putting it all into writing helps me understand better where I am standing. When I started writing this post I felt much heavier, much more at a loss Right now I feel I want to refocus my energy on the same projects and teams I have been involved with, yes, but feel it at least more plausible. Hope so.

Clint Adams: Let us all go converse obnoxiously in an art gallery

Some people are going on about personal relationships again. Personal relationships and ego are two things which I consider antithetical to free software ideals and goals, mainly because they tend to promote the justification of ownership and territoriality. In other words, they cause fiefdoms. Ironically, the same thing results from asociality.

15 November 2009

Jonathan McDowell: Playing with an e-reader

I've always preferred dead tree to reading things on screen; I just find it easier. I've tried reading fiction in the past off a laptop and just didn't find it as enjoyable an experience; whether it was the form factor (hard to curl up with a laptop, even a netbook), the quality of the screen or the interface I don't know. Equally with technical documentation if it's something I'm using a lot I prefer a printed copy to flick through. However e-ink based e-readers are becoming much more common and affordable and I figured I should give the whole ebook experience another try.

I spent 3 weeks in October in the Bay Area on work, so I borrowed my Dad's Sony PR505 for the trip. First problem is that it's picky about USB charging - works fine if attached to a computer, but using a Blackberry charger looks like it's fine but then results in what looks like a hanging reader. However once charged it lasts for ages - I charged it before I went and only hooked it up to my laptop once during the trip to transfer some new content onto it. The form factor is also quite good; a bit heavier than a book, but not excessively so. Holdable in one hand, big enough screen that I wasn't squinting at it. Slightly too big physically to easily go in a coat pocket the way a paperback would unfortunately, but perfectly fine for taking to read at breakfast every morning in the hotel.

The screen was also much better than I'd expected. I knew the technology was different and supposed to be easier to read than traditional LCDs, but I was sceptical. Overall I had no problems with it. I was even quite impressed with the Sony's zoom function - one of the PDFs I was reading was too small when view full screen, so I zoomed in so it was readable. The nice feature was that then the "next page" button gave me the next bit of text to read, rather than the actual next page, so it remained very easy to navigate through as I read. A small touch, but very welcome.

This isn't intended to be a review of the Sony reader; that just happened to be the model I was easily able to borrow. I happened to see a Kindle in use on the plane and I was struck by how much bulkier it seemed, though having looked at the relative specs it seems this is entirely due to the keyboard rather than any difference in screen size. The Nook was also announced during my trip and I'd quite like a play with that as it looks quite nice.

Despite my positive experience with the Sony I'm not planning to go out and get one just yet. And that's the lack of sensibly priced content. When I bought my first mp3 player I could take my exising CD collection, rip it and be able to play it on my new device. This meant I got an immediate benefit of having my entire music collection with me all the time, just by buying the player. If I buy an e-reader then in order to get all my existing books on it I have to go and buy them again. What's worse is they'll cost me the same or more than I paid for the paperbacks. I can't go and exchange my Pratchett collection for the electronic versions for a nominal fee. I can't easily scan them in myself and produce some decent ebooks. I can't even go and buy the entire set for 20; I'd have to spend something like ten times that. With mp3s I can continue to buy the real item and also have it on my portable player. Or, while albums still don't seem to be much cheaper electronically than on CD, there is at least the ability to buy a single track if that's all I want. Books don't have a comparison. I'm not going to want to buy a single chapter, am I?

There are some sites out there that can provide cheaper ebooks - Rachel Willmer runs ebookprice.info which lets you compare pricing from different vendors. There's also Project Gutenberg if you're looking for out of copyright books. Finally Peter Corlett pointed me at the Baen Free Library, which I haven't downloaded anything from but will definitely investigate at some point. I still maintain that none of these are enough and that content provision will continue to be a hinderance for e-reader mass adoption until there is some fundemental change in the way its provision is handled.

Russell Coker: Backing up MySQL

I run a number of MySQL databases, the number of mysqld installations that I run is something like 8, but I may have forgotten some. With the number of servers that I run on a do nothing except when it breaks basis it s difficult to remember the details. The number of actual databases that I run would be something like 30, four databases running on a database server (not counting mysql is fairly common. Now I need to maintain some sort of automated backup of these, this fact became obvious to me a couple of days ago when I found myself trying to recreate blog entries and comments from Google s cache There are two types of database that I run. There are ones of significant size (more than 1GB) and tiny ones I don t think I run any database which has a MySQL dump file that is more than 20M and less than 2G in size. For the machines with small databases I have the following script run daily from a cron job (with db1 etc replaced with real database names and /mysql-backup replaced by something more appropriate). The --skip-extended-insert option allows the possibility of running diff on the dump files but at the cost of increasing file size, when the raw file size is less than 20M this overhead doesn t matter and gzip should handle some extra redundancy well. #!/bin/bash -e for n in db1 etc ; do
/usr/bin/mysqldump --skip-extended-insert $n gzip -9 > /mysql-backup/$n- date +%Y-%m-%d .gz
done Then I have a backup server running the following script from a cron job to copy all the dump files off the machines. #!/bin/bash -e
cd /backup-store
for n in server1 server2 ; do
scp $n:/mysql-backup/*- date +%Y-%m-%d .gz $n
done This script relies on being run after the script that generates the dump files. Which is a little more tricky than it should be, it s a pity that cron jobs can t be set to have UTC run times. I could have run the dumps more frequently and used rsync to transfer the data, but it seems that the risk of losing one day s worth of data is acceptable. For my blog I can get any posts that I might lose from Planet installations in that time period. For the bigger databases my backup method starts by putting the database and the binary log files on the same filesystem not /var. This requires some minor hackery of the MySQL configuration. Then I use rsync to copy the contents of an LVM snapshot of the block device. The risks of data consistency problems involved in doing this should be no greater than the risks from an unexpected power fluctuation and the system should be able to recover from that without any problems. My experience with MySQL dumps is that they take too long and too much system resources for large databases so I only use them for backing up small databases (where a dump can be completed in a matter of seconds so even without using a transaction it doesn t hurt).

Stefano Zacchiroli: RC bugs of the week - week 10

RCBW - week #10 Here is this week squashes, by yours truly (also truly amazed by the simple fact of having reached the 10th RCBW week, my DDPO NMU section probably hates me now): This week I've made (once more) a friday/saturdary rush to keep up, mostly because during the week I've been traveling (again) back to Italy and also because on mon/tue we invited Luk in Paris to discuss some Mancoosi-powered Britney (potential) improvements (and yes, have some fun also. BTW, Yves, Ralf was not visiting, he has been teaching in Paris for quite a while now :-) ). More on this as soon as the advantages will turn potentiality into reality. To conclude ... drum roll ... please join me in cherishing this week new RCBW participant, welcome on board Tim!

14 November 2009

Andre Luis Lopes: Public service announcement : A LDAP directory won t do it all by itself

Recently I ve been dealing with requests for LDAP directories configs which clearly demonstrates how little people understand about directories and what they are capable of doing. A significant amount of people I know seems to really get it wrong when it comes to what they want from a directory. Actually, they somehow think that a LDAP directory will do whatever is needed for their application to store, retrieve, validate, authenticate and even take decisions based on no data provided at all. These people think that one should just deploy a directory using the minimum effort approach and suddenly everything will just work. They don t seem to realize that for their application to make use of a directory it should be prepared to do so. They can t accept it when they are told that the directory won t just work and by some unknow enchantment get their systems data stored, validated, authenticated and, shockingly for them, that it won t make their credentials consolidated so lots of different services will out of the box just start working using the same username/password pair. Also, some people don t understand the difference between a LDAP directory and a single sign-on (SSO) system. They don t realize that a directory won t, by itself (i.e. without additional software and some respectable amount of tweaking), provide them the ability to authenticate against it only a single time and have their credentials shared among all their systems. That s it. Said. Don t get me wrong. All that was metioned above is possible, but it isn t done by LDAP alone. LDAP is just a bunch of protocols and a directory is only one nice place to store information. What will be done with this information, how it wll be treated and how it could be used to produce meaningful results are almost always up to the application and/or to some middleware or added plugin/overlay/connector/whatever. Next time someone ask you to install LDAP so I can get rid of all my different username/passwords and use only one instead , be afraid. Be very afraid and present him/her some theorical knowledgment regarding the topic. Or, better said, insert some clue into his/her brain.

Steve Kemp: And if you fail gym, you'll never get into college.

Today I rebooted my desktop for the first time in a few months. This did not go well. Probably as a result of this issue with lvm/dmsetup/cryptsetup conflicting my system didn't boot, and the error message was non-helpful. The error shown just after grub2 had started to load a system was :
Cannot find LVM volume group gold-vol
The actual cause was that I was missing the mdadm package. D'oh. My desktop has 2x500Gb drives setup as:
 sda1 + sdb1 = md1  = /boot [1Gb]
 sda2 + sdb2 = md0  = LVM storage [460Gb]
(It's only as I write this that I'm surprised that md1 + md0 are opposite to the fashion I'd have expected them to be. I guess I just created them in the "wrong" order at install time. Oops) So without mdadm the LVM volume group on /dev/md0 couldn't be found, and that in turn meant my root filesystem couldn't be accessed at /dev/gold-vol/root. Fixing this was a real pain. Because the system is the PXE network host on my LAN I couldn't boot it that way, and the machine has no CD-ROM drive connected. My solution was to download and install System Rescue CD, which I placed upon a USB stick. This worked beautifully once I realised I had to boot with rescue64 to get a 64-bit kernel capable of letting me run chroot. Oddly enough I had problems booting from USB. If I powered down my system and hit the "on" switch the system just ignored the USB stick. I noticed that my USB mouse and card reader didn't show any power lights at all - not until after grub had failed to boot the system. So the process of booting from USB was eventually determined to be: Very very odd. I guess its a question of what does the "USB enabling". I'd previously assumed the BIOS would do this setup - but looking over at another system I notice that the USB mouse doesn't "come alive" until mid-way through the Linux boot process even though I know that BIOS has options for "Enabling USB mouse & keyboard". Maybe I'm missing something obvious ..? In conclusion .. I restarted GDM for the first time in weeks and rebooted, and this was a bad idea. ObFilm: Never Been Kissed

13 November 2009

C.J. Adams-Collier: Xen PV network driver

I haven t used Xen HVM until recently. When I was at Amazon and
hanging with the Xen provisioning folks, I recall complaints about the
performance of network drivers on HVM instances. I ve recently
discovered that this was due to the use of the ioemu virtual interface
(vif) system. In paravirtualized environments, Xen vif devices are
more efficient because the guest kernel can talk to the hypervisor to
schedule I/O. In hardware virtualized environments, the hypervisor
emulates the back end of a common network driver and the guest uses it
as if it is the real thing. The Xen team (or was it RedHat?) patched the 2.6.18 kernel such that
HVM guests got the best of both worlds. The guest ran in a HVM
environment, but also had a way of talking with the hypervisor by way
of the xen-vnif kernel driver
(kernel/drivers/xenpv_hvm/netfront/xen-vnif.ko). I may not be looking in the right places, but I can t seem to find
such a paravirtualized network driver for any kernels more recent than
2.6.18. This has recently become a bit of an issue, since karmic (and probably sid)
depends on udev 145, which depends on signalfd, and thus won t run on
kernels before (something like) 2.6.25. Unless I miss my guess (which is quite possible =]), this means one of
the following needs to happen: Has this already happened? Am I missing something?
<script>//<script language="javascript" src="http://reddit.com/button.js?t=1"></script>

Matthew Garrett: Legacy PC design misery

I've spent chunks of the last couple of days fighting a problem that's existed for about 25 years. The 8086 was a 16-bit processor with a 20-bit address space, limiting the maximum physical address that could be accessed to 1MB. However, quirks of the segmented memory system meant that addresses greater than 1MB could be constructed - these would wrap around to the bottom of memory. Because loading the segment registers was a time consuming operation, some programmers used this behaviour as a performance optimisation.

The 80286 introduced 24 bit address space. Unfortunately, this meant that the addresses that previously wrapped to the bottom of memory now pointed at real addresses - not ideal if you were expecting the old behaviour. IBM fixed this by tying the 21st address line (A20 - they're zero indexed) through an and gate, with the default behaviour being to keep it tied at 0 and thus maintaining the old wraparound behaviour. Applications that wanted to access the full address space needed to enable the A20 logic gate. IBM didn't want to add any extra hardware to their system if they could avoid it, so tied the other side of the and gate to a spare pin on the keyboard controller. By writing a couple of bytes to the keyboard controller, your PC-AT stopped pretending to be an XT and gave you access to all of the insanely expensive RAM it had stuffed in it. Hurray!

PCs have been emulating this behaviour since the AT was first cloned. Of course, this being the PC industry, many have got it wrong. There's a set of approaches for controlling the A20 gate that may work, varying in terms of performance and desirability. Most hardware will give the desired result (ie, I have no desire to run DOS executables from 1982, make my A20 work damnit) using any of the various methods of A20 enabling. Some hardware doesn't. The most common method used in bootloaders (where we still have access to system BIOS services) is to call int 15h with an ax of 0x2401, which asks the BIOS to enable A20 for us. This isn't implemented on all hardware, but we should get a failure back that lets us go and bang on the keyboard controller in an attempt to get it to pay attention[1].

Enter the Kohjinsha SC3.

I picked this up second hand in Japan. It's a ridiculously cute little tablet, only slightly larger than hardware that's comfortably in the MID range. It booted a Fedora liveCD perfectly, though having GMA500 graphics meant that what appeared wasn't terribly attractive. Installation proceeded happily enough, followed by a reboot and... nothing. Grub loaded the kernel and initrd, jumped to the kernel and everything hung.

So, for the past couple of days, I was stepping through the kernel setup code, trying to work out where and why it was hanging. I'd got it narrowed down to the region where the kernel tried to free the memory used by the initramfs, but the failure hopped around depending on my kernel build. Something was clearly very wrong. The strangest thing about this was that if I booted the liveCD boot menu and selected "Boot from local drive", everything worked perfectly. isolinux was clearly doing something that grub wasn't, but there's rather a lot of code to step through there.

Things became a lot easier once I found that the OpenSuse version of grub worked. Their grub has a rather smaller set of patches than ours, and only a few looked even plausibly relevant. It only took ten minutes or so to figure out that it was one that altered the A20 code. Things became much clearer then.

The main functional difference between the Suse A20 implementation and the upstream one[2] is that the Suse one explicitly tests whether the A20 enabling worked by putting values at two different addresses that would be the same if A20 is disabled. By comparing them, we know whether A20 is working properly or not. If not it can then fall back to other mechanisms. The Fedora code trusted the BIOS's claim that the int 15 call had worked. The Kohjinsha's BIOS lied, A20 remained disabled, grub copied the kernel and initramfs to chunks of address space that contained lies rather than RAM and everything fell over horribly.

Thankfully, not a difficult fix once the problem was identified. But seriously, people. How hard can it be not to screw this up?

(For an excrutiatingly detailed analysis of how hard it can be not to screw this up, see here)

[1] the Intel Macs don't implement the int 15 approach, but return a failure. They also don't have a legacy keyboard controller, so attempting to hit that resulted in grub falling over. The magic IO port approach works. Another example of how the Intel Macs aren't really PCs...

[2] grub2 implements the more paranoid check

Russell Coker: What to do When You Break a Server

Everyone who does any significant amount of sysadmin work will break a server. Most people who have any significant experience will have broken several. Anyone who has never broken one should be treated with suspicion by other members of the sysadmin team, they probably haven t learned the caution that most of us learn from stuffing something up badly. When you break a server there are some things that you can do to greatly mitigate the scale of the disaster. Firstly carefully watch what happens, for example don t type rm -rf * and then walk away, watch the command if it takes unusually long then press ^C and double-check that you are removing the right files. Fixing a half broken server is often easier than fixing one that has been broken properly and completely! If you don t know what to do then do nothing! Doing the wrong thing can make things worse. Seek advice from the most experienced sysadmin who is available. If backups are inadequate then leave the server in a broken state while seeking advice, particularly if you were working at the end of the day and it doesn t need to be up for a while. There is often time to seek advice by email before doing something. Do not reboot the system! Even if your backups are perfect there is probably some important data that has been recently modified and can be salvaged. Certain types of corruption (such as filesystem metadata corruption) will leave good data in memory where it can be recovered. Do not logout! If you do then you may not be able to login again and this may destroy your chances of fixing the system or recovering data. Do not terminate any programs that you have running. There have been more than a few instances where the first step towards recovering from disaster involved using an open editor session (such as vi or emacs). If the damage prevents an editor from being used (EG by removing the editor s program or a shared object it relies on) then having one running is very important. These procedures are particularly important if you are unable to visit the server. For example when using a hosted server at an ISP the more cost effective plans give you no option to ever gain physical access. So plugging the disks into another machine for recovery is not an option. Does anyone have any other suggestions as to what to do in such a catastrophy? PS This post is related to the fact that I had to recover the last couple of weeks of blog comments and posts from Google s cache Update: I got my data back, not I have to copy one day of blog stuff from one database to another.

12 November 2009

Russell Coker: Links November 2009

Credit Writedowns has a populist interpretation of the latest Boom-Bust cycle [1]. It s an interesting analysis of the way the US economy is working. Bono writes for the NY Times about Rebranding America [2]. He praises Barack Obama suggesting a different reason to believe that the peace prize is deserved and describes what he believes to be the world s hope for the US. IsMyBlogWorking.com is a useful site that analyses your blog [3]. It gives some advice on how to improve some things as well as links to feed validation sites. Evgeny Morozov gave an interesting TED talk How the Net Aids Dictatorships [4]. I don t agree with his conclusion, he has some evidence to support his claims but I think that a large part of that is due to people not using the Internet well. I expect things to improve. The one claim that was particularly weak was when he mentioned radio stations in Rwanda as an example of technology being used for bad purposes the entire point about the first-world discussion about such things is the radio vs the Internet. Ray Anderson gave an inspiring talk about The Business Logic of Sustainability [5]. He transformed his carpet company, decreasing it s environmental impact by 82% and it s impact per volume of product by more than 90% while also significantly increasing it s profitability. He says that corporate managers who don t protect the environment should be regarded as criminals. Making his company more environmentally friendly reduced expenses (through efficiency), attracted more skillful employees, and attracted environmentally aware customers. Managers who don t follow Ray s example are not only doing the wrong thing for the environment, they are doing the wrong thing for their stockholders! Ray s company Flor takes carpet orders over the web [6]. They won t ship a catalogue outside the US, so presumably they only sell carpet to the US too. Marc Koska gave an interesting TED talk about a new syringe design that prevents re-use [7]. His main aim is to prevent the spread of AIDS in the developing world where even hospital staff knowingly reuse syringes. It will also do some good in developed countries that try to prohibit drug use. David Logan gave an interesting TED talk about tribal leadership [8]. His use of the word tribe seems rather different from most other uses, and I am a bit dubious about some of his points. But it is definitely a talk worth seeing and considering. Deirdre Walker is a recently retired Assistant Chief of Police who has worked for 24 years as a police officer, she describes in detail her analysis of the flaws in the TSA security checks at US airports [9]. Brian Krebs wrote an article for the Washington Post recommending that Linux Live CDs be used for Internet banking [10]. Windows trojans have been used to take over bank accounts that were accessed by security tokens, that could only be accessed by certain IP addresses, and that required two people to login. It seems that nothing less than a Linux system that is solely used for banking is adequate when a lot of money is at stake. The NY Times has an interesting review of the book Ayn Rand and the World She Made [11]. It seems that Ayn was even madder than I thought. Gary Murphy has written an interesting analysis of the latest stage in the collapse of the US Republican party [12]. The ABC (AU) Law Report has an interesting article about Evony s (of China and the US) attempting to sue Bruce Everiss (of the UK) in Australia [13]. The Guardian has an insightful article about the IEA making bogus claims about the remaining oil reserves [14]. It seems that the experts who work for the IEA estimate that oil is running out rapidly while the US is forcing them to claim otherwise. Dean Baker of the Center for Economic and Policy Research has written an interesting article about the economic effects of the war in Iraq [15]. Apparently it caused the loss of over 2,000,000 jobs considerably more than the job losses that could ever result from efforts to combat global warming.

11 November 2009

John Goerzen: In-Depth Review: Motorola Droid (with some iPhone comparisons)

The Motorola Droid A855 is the first Android 2.0 phone. I have been using one since Monday, having switched from a BlackBerry Pearl. I also wrote about Terah s iPod Touch recently, so I ll be making comparisons to it too. Here s my review. Hardware Physically, the device is very nice. It fits well in my hand. It comes in a fairly small box. It s surprisingly heavy for such a small device, but it isn t so heavy as to be a problem. It feels solid, sturdy, and durable throughout. Terah has the most recent iPod Touch 8GB, and compared to that, the Droid is thicker and heavier. The Droid s screen is awesome; a little longer but not as wide as the iPod Touch s. The iPod Touch screen seemed to offer less friction as I d slide my finger over it, which was nice but not a terribly big deal. I don t share some other people s annoyance with the keyboard. It is far better than the BlackBerry Pearl, or many other BlackBerries I ve seen. Along the bottom of the screen are some silkscreened buttons. My gripe with them is that they are easy to accidentally press. I ve done that more than once while using the phone in speakerphone mode, but you can lock the phone keyboard while you re on a call. I also don t share the complaint about battery life. It is excellent compared to the Pearl. Despite having a long-life battery, if I had it charged fully when leaving work at 5PM, by the next morning at 7AM it would often be completely discharged (though sometimes only half discharged). I believe that has to do with my home being in a poor reception area, and it spending a lot of energy looking for signals. In any case, the Droid has impressed me with its battery life and I have no complaints there. The screen, as I said, is brilliant and sharp. It is readable in various lighting conditions. By default, its brightness adjusts with the brightness of the ambient light. That s normally fine, but it can be annoying to stand in front of a light with the Droid in a shadow, watch its screen darken, and then shift a bit and it becomes bright again. There is a setting to disable automatic brightness. Button-wise, it has four physical buttons: the power/lock button at the top, volume up/down on the side, and a camera button on the side. The camera button only works when the phone isn t suspended (locked), and disappointingly can t be remapped to something actually useful. Just beneath the screen are four touch buttons: back, menu, home, and search. These are the ones I complained were easy to accidentally press. MicroSD and USB The Droid comes by default with a 16GB MicroSD card already installed. This is one huge advantage over the iPhone or iPod Touch: you can actually put things on the phone yourself, directly, without having to use iTunes and its limited features. I have, for instance, downloaded a PDF on the Droid and later copied it to my PC. I also copied a KeePassX encrypted password database from my Linux computer to the Android, for use with KeePassDroid. The iPhone/iPod Touch password programs don t support this kind of copying of files from your PC to the device, though one will let you put a database up on a webserver you control and download it from there. Plugging in a MicroUSB cable will start charging the Droid automatically. In order to make the SD card mountable, you must simply drag down the notification bar (which is how you get detail about what it s telling you normally) and touch the USB icon. When the SD is mounted on the computer, the Droid won t see it, of course. Touch the USB icon again to mount it on the Droid again, or just unplug USB. Wireless and Wifi The wifi support works like you might expect: pretty well. The cell phone reception works well, as does its Bluetooth support. It has an easily-activated airplane mode which disables all wireless features, which can then later be re-enabled. You can also individually disable wifi and Bluetooth. Oddly, you can t disable the cell phone network individually. The only way I could find to disable it is via Airplane Mode. User Interface The user interface, overall, is very slick and polished. However, I would have to say it is not as slick and polished as the iPhone/Touch interface. A few of the animated effects have a low framerate, which isn t really a big deal. More of a big deal is that settings and options can be scattered in many different locations, making them hard to track down at times. The device also offers fewer visual cues than the iPhone/Touch, though that is perhaps not significant. Like Apple s device, the Android 2.0 UI offers you three home panels, which you switch between by dragging your finger left and right. The iPhone shows some dots at the bottom of the screen, a standard UI indicator on that device that you can flick left/right, while there is no such indication on the Android. This is somewhat nitpicky though. I would put Android 2.0 and iPhone in the same general class of user interfaces, way above any other such device I ve tried. The Droid has an on-screen keyboard similar to the iPhone/Touch, though somehow it felt like the keys were smaller or easier to mistype. I m not sure why that is; maybe they really are smaller. The physical keyboard can be used at any point too, of course. Background Apps This is an area where Android really shines over iPhone. Android supports background apps everywhere. That means that your weather widget can be always correct, instead of being hardcoded at the factory to show 73 degrees as iPhone s weather icon does until you tap to open it. It means that more apps remember where you were and what you were doing when you switch to/from them. And it means that you can do things while that PDF downloads. Finally, it means that you can have native Jabber clients on the Android without having to do some mess with Apple push notifications plus third party servers, significantly reducing the complexity of such apps. Browser Now moving on to the applications preloaded on the phone, I ll start with the browser. It is, in a word, awesome. It is far faster and reliable than the browser in my N810. Compared to BlackBerries, of course, this is a real browser, not their limited one; and even so, it is still faster. It is also faster than the iPhone/Touch browser, sometimes significantly so. The pinch to zoom feature of the iPhone/Touch is lacking, and it must be said is both useful and pretty. Zooming softkeys appear on the screen when you tap, and do work well. It also automatically zooms if you tap on the page to fill out a form, for instance. The bookmarks save thumbnail images similar to the iPhone, and you can put bookmarks on your home screens as well. Rotating the Droid to landscape orientation causes the browser to also rotate, and on most websites it will also zoom in by default at that point, since it s got a wider orientation and doesn t have to shrink stuff to fit as much. The physical keyboard is very nice for filling in usernames and passwords. iPhone-optimized sites, such as Bloglines, work great on the Android. Though many of them fail to autodetect the Android as an iPhone-like device, and thus you have to manually ferret out their iPhone-optimized URLs. Email This is both a strong and a weak spot of the Droid. First off, it comes with two email client apps preinstalled: one for Gmail, and one for everything else. I haven t used the Gmail one, so this review doesn t consider it. You can connect the email program to your IMAP, POP, SMTP, or Exchange (ActiveSync) accounts in the predictable way. Each account can be configured with its own notification preferences, so you can easily see an icon, vibration, or beep when you get new mail on one account and not the other. All folders on an IMAP account are accessible, which is a very nice feature that is not shared by the BlackBerry. You can view your mail as a unified INBOX if you prefer. In such a few, a thin color bar to the left of each message summary tells you which account it came from by its color. This is a nice way to quickly deal with all new email, wherever it may be from, and ought to be emulated by some desktop clients. You can, of course, also view each account individually. The email program supports attachments, both viewing and sending. It does not appear to have the iPhone/Touch bug if failing to display emails forwarded as attachments. Now to the drawbacks. First of all, it inexplicably doesn t support the IMAP IDLE command. As a result, IMAP accounts are polling-only; there is no near-instant notification of new mail as there is with Exchange accounts, even though IMAP supports that trivially. Like the iPhone/Touch, Android 2.0 s mail program has a great deal of trouble with self-signed SSL certs, or SSL certs that are unusual in any way. Both devices refuse, by default, to talk to mail servers with self-signed SSL certs. Neither one offers to let you add an exception to recognize a particular cert in the manner that the built-in web browser on these devices would do. On the iPhone/Touch, at this point you need to obtain the cert by other means, stick it up on a web server, browse to it from the device, and add it that way. This trick doesn t work on Android 2.0, nor does adding it using the import from SD option. There appears to be absolutely no way to teach the mail program to use a self-signed cert on Android. The good(?) news is that you can choose to have Android accept any certificate. Many people in forums suggest that, and it does let it connect. Of course, it also removes much of the security benefit of using SSL/TLS in the first place, and is a terrible excuse for the lack of proper self-signed cert support. Both iPhone and Android devices have a horrible user experience in this area Quickoffice The Droid comes with some sort of Quickoffice software pre-installed. It can be used to view PDF, Word, and Excel files (at least; maybe more). But it is a rather strange beast. It has no icon on the applications screen. The only way to open Quickoffice is by opening a file that it supports in another app. So, for instance, tap on a PDF in the browser or open a Word attachment in email. I haven t played with it much, but I can say that it s read-only but seems to have high-quality rendering of all document types. Its PDF viewer is glacially slow on any page that has graphics. Flip the page to one with graphics and up pops a progress bar. And good thing too, because it might take 15-30 seconds to render a page. I will be looking for better PDF viewers in the Market; there are quite a few. Lack of file manager And that brings us to the next surprising limitation: there is no built-in file manager. I downloaded a PDF from the browser, and saved it to the SD card, but there was no way to look at it from the phone! Absolutely none. No way to delete it, rename it, etc. Several people recommended Astro, which solved all of those problems. Not having such a program built in is a weird glaring oversight. Of course, the iPhone/Touch doesn t have one built in, but in their case the glaring oversight is not having any files to manage Calender, Contacts, and PIM features This is an area of exceptional strength for the Android. I believe it s got the best PIM features of any mobile device out there, though it s not without its quirks. There are two calendar apps on the Droid, and they both have virtually identical interfaces and feature sets. I am rather at a loss as to why we are burdened with two separate apps. In any case, the app called Calendar works with a local calendar, or with Google Calendar syncing. It supports all the features you d expect, and plenty you wouldn t, including excellent support for meetings, viewing other people s calendars that you ve configured access to on google.com/calendar, viewing subscribed iCal calendars, etc. It has push syncing with Google Calendar, so new events appear in about 10 seconds. It is well-executed and completely flawless in every way I could see. Corporate Calendar is the same, but for hooking into Exchange or Exchange-compatible calendars via ActiveSync. We are evaluating groupware, and have so far tested it with Zimbra and Scalix. It worked well with Zimbra, and not so well with Scalix. That s not to say there were no problems. The meeting invitation emails Corporate Calendar generated appeared to have no body in the Zimbra mail client, or in Thunderbird (though if you look at the raw email, you see it does have a vcal entry in it). Meeting invitations sent to the Android can be displayed in the Email program, but the Email program doesn t offer accept/decline buttons, so you have to manually pull up the event on your calendar to accept or decline it. Other than that, it worked flawlessly with Zimbra. Scalix exhibited several data integrity issues that will probably make it unsuitable for syncing with an Android at this time. There is a built-in Calendar widget you can put on your home screen. It will show you the date and info about your next appointment. I miss the BlackBerry Pearl theme that showed me the next two appointments. There are some apps that claim to do this, but none of them work well. Contacts are also quite powerful. The contacts viewer aggregates your contacts from multiple sources into a single view, which is nice. It can sync in Gmail contacts, ActiveSync, and Facebook contacts. (How s that for a device with corporate and personal appeal?) The viewer works better than Apple s, and creating a new contact lets you choose which source you d like to add it to if you have more than one available. Continuing the trend of many recent devices, the Droid has no task/todo list support built in. Maps I ve heard people be all excited about Google Maps, saying it s the best maps ever in a phone (though I suspect they have forgotten that Garmin has added on a phone to their GPS products in the past). In general, they are probably right. And also they are probably irrelevant. The first thing that must be said is that the maps on the Android, like the iPhone/Touch and other such devices, are not actually installed on the Android. Consequently, for mapping or navigation to work, you must have a data signal, either wifi or CDMA. That immediately turns this into a GPS accessory, not a go-to device, because who wants to be stuck without a working GPS someplace without cell phone reception? (Such as several areas right near my house) I have a Garmin Nuvi 500 (see my review), and despite not being a terribly expensive GPS, it runs circles around the mapping in Android 2.0 (or iPhone for that matter). The 3D display on the Nuvi is very helpful for driving in dense city streets, and that s not available on Android or iPhone. The Nuvi has nice features such as one-touch detour calculation, excellent geocaching integration, accurate and sensitive receiver, etc. I will not be leaving it at home for trips just because the Android supports maps. That said, there is something to be said for having maps of Android s quality. It can be a nice crutch if you re somewhere unfamiliar but didn t expect to be, and thus left your GPS at home. It also can give you routing on transit sources, which Garmin can t, so if you re in an urban area with bus/subway options, the Android maps could be very helpful. I will probably try that out when we re in Chicago next and still pack the Garmin unit for driving around rural Indiana. The Phone The last built-in app to discuss is the phone feature. Yes, the Android is a phone. As expected, the phone integrates well with the system. There is not much of any great interest to discuss here. It s a phone. It integrates with contacts. It works. I use Google Voice, and have had their BlackBerry app for some time now. The Google Voice android app is far nicer. You have the option to make all calls via Google Voice, none via Google Voice, prompt each time, or only international calls via GV (which is presumably cheaper for such than your carrier). A couple of annoyances, though. One is that you have to touch a button to activate the keypad (to send touch-tone digits while you re on a call). It should be activated by default. Android Market vs. App Store I know some people love it, but to me the Apple App Store is like a cross between the sleazy guy selling watches from his car trunk and the tourist trap strip malls that sell 50-cent useless plastic memorabilia for $20. Yes, there are some quality apps in the App Store that aren t overpriced, don t violate your privacy, and do something useful. But you ll have to look hard. It still boggles the mind that most of the secure password storage tools for Android think they need access to the GPS, Internet, and at least one of your contacts, phone number, logs, etc. Yes, you heard me right. A password storage tool wants GPS and Internet access. And, being Apple, we all know how tight they ve locked down the App Store. Emulators are banned. Useful apps get arbitrarily banned at various points. Now, the Android App Market is better than the Apple App Store in the sense that it has a lower percentage of the crappy apps, and perhaps more useful apps, at least to my taste. That s not to say it s without crappy apps. It boggles my mind why most weather applets on the Market think they need to know my phone s status and identity, and why some apps that have nothing to do with the Internet or location services want to know all of the above. I don t install such apps. But there are gems out there. The small 400K weather applets that do what they advertise, and do it well. My absolute favorite is droid48, an emulator for my beloved HP 48GX calculator. Yes, an emulator. You can also find various NES, SNES, and C-64 emulators on the Market; Apple famously removed the latter from their App Store recently. And you re not tied to the Market either; you can install apps from wherever you like. KeePassDroid is another one. It reads the same database as KeePassX for Linux or KeePass (.kdb format only) for Windows. It s a secure password management system, and I can periodically copy the file from my desktop over to the Droid and have all my passwords at my fingertips but encrypted, of course. There is simply nothing that convenient for the iPhone/Touch because the device doesn t permit it. Music and Video I haven t played with these much, but the music player seems to just see MP3s placed anywhere on the SD and presents them as you d expect a music player to do. It looks fully-functional and easy to use. Conclusion Overall, I think the Droid is a very nice phone. It isn t perfect, but it bests the iPhone in a number of areas. I think it s probably the best phone for many right now, and the iPhone for some others. Update Nov 11: Two other annoyances I forgot to mention. One is that the power-button shortcut menu, as well as the lock screen, have a quick shortcut to put the phone into silent mode. Very well. Except, confusingly, these buttons not only enable silent mode but also disable vibrate mode while checking the silent mode checkbox in settings does nothing to vibrate mode. There is no built-in shortcut to enable vibrate mode; you d have to unlock the device, use the volume keys to go down the vibrate. The app Silent Mode Jammer helps with this. Second is that the documentation is as poor as any other cell phone around. For instance, there s a setting that says Voice Privacy. It s a checkbox. The description is Enable enhanced privacy mode. Thanks, but that tells me nothing. Nobody online seems to know either. A few overconfident forum posters claim it s encryption, linking to posts from 2003 about a Sony phone with a checkbox with the same name. Maybe it is encryption, but that is hardly definitive. The bottom line is it s not documented anywhere. Neither of these change my conclusion above though.

Andrew Pollock: [life] Well this just sucks

I'd had bad feelings about this trip, mainly because it was so short. I didn't expect this to happen though... Back story: Smudge has always been fairly wary of Stumpy, for some unknown reason (perhaps her boisterousness?) It came to a head when we did our road trip to Atlanta. We got back home, and Smudge had pooped in all the wrong places, and was hissing and growling at Stumpy whenever Stumpy looked at her the wrong way. The cat sitter plead ignorance, but something must have happened while we were away. Smudge has been pretty hopeless around Stumpy ever since. One theory was that maybe Stumpy (or Smudge) had some health problem, so we had them both checked out and no red flags were raised. The other option was to put Smudge on Prozac for a while to see if she settled down. I didn't like the idea of drugging her, so we've opted to separate them for a while. Smudge is in our bedroom and Stumpy and Lily have the rest of the house. Smudge and Stumpy only have supervised time together. We've tried a bit of play therapy as time permits, but it hasn't made much of a difference. So fast forwarding to now, and we didn't want to leave Smudge in our bedroom all by herself for the week, so we thought we'd put Stumpy in a cat boarding place, since we figured she could handle it, and let Smudge and Lily have the run of the house. Our neighbour Carol was going to check in on Smudge and Lily. All good. I think it was yesterday (my brain is not dealing with the various timezones plus jet lag) Sarah got an email from Carol saying that the cat boarding place had called her because Stumpy hadn't been eating, and was all lethargic. Carol went and brought her home, and she didn't do much better at home, she was just lying around, so she took her to our vet. She was having breathing problems, and generally showing symptoms of congestive heart failure! Her blood work was otherwise okay. The vet said they couldn't do much and needed to send her to a specialist vet at Campbell, where they could do an ultrasound on her heart. This is where she currently is, in an oxygen tent on diuretics for fluid around the heart/lungs. The prognosis isn't very good at all. She managed to make it through the night, but I don't know if she's going to make it until I can get home. I've moved my flight a day earlier to Friday night, so I can get out to the vet's on Saturday. The vet was saying that even if she does make it through this, her long-term prospects aren't good. Maybe a year. This is only a four year old cat! The vet said she has an enlarged heart, so it's some sort of congenital condition she's always had, but was probably triggered by the stress of being in the boarding place. It's just come as a total shock to us as she's always been really healthy, and the most hyperactive of the three cats. Sarah, being the cat lover that she is, is particularly upset, because this is "her" cat, and she feels terrible because Stumpy is all by herself. I'm really hoping Stumpy can at least hang in there until I get there. I don't want her to die alone, despite how frustrating she can be. We owe an enormous debt of gratitude to our neighbour Carol for doing a lot of running around for us. I don't doubt for a moment that Stumpy would be dead by now if it weren't for her.

Yves-Alexis Perez: Key transition (this is _not_ a meme)

Ok, so following the trend, I created some time ago a new GPG key, which I'm now transitioning too. I've set up a transition document, available at http://molly.corsac.net/~corsac/key-transition.txt. It's signed by both the old and the new keys and is reproduced below:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: RIPEMD160,SHA512
Wed, 11 Nov 2009 13:44:05 +0100
I've recently set up a new RSA-based GPG key, and will be transitioning away
from my old DSA-based one.  The old key will be revoked soon, so I prefer all
future correspondence to use the new one.  I would also like to ensure that
this new key is well-integrated into the web of trust.  This message is signed
by both keys to certify the transition.
The old DSA key was:
pub   1024D/C5C05BAE 2004-11-11
      Key fingerprint = DE26 2FC4 7097 FFC6 DE2C  D8C0 4D44 C020 C5C0 5BAE
The new RSA key is:
pub   4096R/71EF0BA8 2009-05-06
      Key fingerprint = 4510 DCB5 7ED4 7040 60C6  6476 3055 0F78 71EF 0BA8
If you already know my old key, you can verify that the new key is
signed by the old one:
  gpg --check-sigs 71EF0BA8
If you don't already know my old key, or if you're extra-paranoid, you
can check the fingerprint against the one given above:
  gpg --fingerprint 71EF0BA8
If you have previously signed my old DSA key, and if you're satisfied
that you've got the correct new RSA key, then I'd appreciate it if you
would sign my new key as well:
  caff 71EF0BA8
The caff program is in the signing-party package in Debian.  Please be careful
to generate signatures that don't rely on the weakening SHA-1 hash algorithm,
which requires some careful configuration even if you've already configured
gpg correctly.  See http://www.gag.com/bdale/blog/posts/Strong_Keys.html for
the gory details.
Thanks,
- --
Yves-Alexis Perez
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
iEYEAREDAAYFAkr6sqQACgkQTUTAIMXAW64HiACeIyabQueDHAeiAX8EkIeApiDj
++UAn2z7YkjHx0lQh0+s5WdhikG0YztiiQIcBAEBCgAGBQJK+rKkAAoJEDBVD3hx
7wuodUcQAKMbG9Rehxz+uZ6fST99cHt5Fjnv9TorY4hQaQK+85ZgiwPaHMHfYM1G
5hcrXI+JFUpz8j40deZuaWuspOdHBHwnHNQril8MqT0CJgtB6HFTo+w/7Lmmui5M
DDMMed39UJl7bF73hV9ywGecxPpeh+dtoVnh0VT16uK2xTvW6ICEZgaPw1xfPUHS
+jxQ7I05X1OWQkPpmhxXJqGclDyO+qx4CJZsOxUAvt2LphHxhZxB3QE5OUdudGKQ
AH6KhC4rpNQdJVMX20SG8PybL/AipN3Y8N/63VkoqVC2heRlaQ69HjsuqIAkIyan
hHnqmJH8Q+TDTbdKZvOQv6jcd4o3VSibz0T9MwnOfqQ0uRYyTpaXC0vLUH6lXaC4
eK+VVWbY8vCAFHR3h80Q61i2me2HU5ly7a/W22dz19zzDNNC5q9MO78uIYkUK78N
Z0wzJrmOxRyhvs5DOSOpNVlXZhffNQM1f42xxG8cUDaIf7pR5jK+xqHV7tIBQE1D
CrD0mt+YQCnngK0i4wQTO7VT/vjypf4A9W+VSsoJJpRhBbngU4pHu9JWqO84/7AA
j5FN8ug15MWysaS+FQ/EqzHmT7BGBWaTPv3yGlHKUjx0w4bPEpbH7y3fwHAcmOFf
xFRzvZFQ03zeer06yAqTVNuwr77HZgrCzgyQVgIkegAg6iUPiZcs
=CBT+
-----END PGP SIGNATURE-----

Next.

Previous.