All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: cg-clone not fetching all tags?
From: Johannes Sixt @ 2006-04-29 22:54 UTC (permalink / raw)
  To: git
In-Reply-To: <20060429221114.557FC35288F@atlas.denx.de>

On Sunday 30 April 2006 00:11, Wolfgang Denk wrote:
> In message <200604292342.16306.johannes.sixt@telecom.at> you wrote:
> > There are two types of tags: They can point to
> > 1. a commit object
> > 2. a proper tag object (which in turn references the commit)
> >
> > git-update-server-info seems to generate info only for case 2, and so are
> > the only ones that http can fetch.
>
> And git-cvsimport (at least older versions of it)  imports  CVS  tags
> only as type 1 ?
>
> That would perfectly explain the situation. How can this be fixed?

Something like this tells you which one points to a commit or a tag:

for i in `find .git/refs/tags -type f`; do
  echo -n "$i "; git-cat-file -t $(cat $i);
done

Then for each commit-type $tag you do

git-tag -m ' ' $tag-new $tag
mv .git/refs/tags/$tag-new .git/refs/tags/$tag

(git-tag does not accept an empty tag message - if you dislike the 
single-blank-message, you have to manufacture your tags with git-mktag 
manually.)

-- Hannes

^ permalink raw reply

* Re: [linux-lvm] vgchange -ay Killed
From: Alasdair G Kergon @ 2006-04-29 22:24 UTC (permalink / raw)
  To: LVM general discussion and development
In-Reply-To: <445394B9.6040104@volved.com>

The code has not been optimised for large numbers of LVs.

Use the latest dm/lvm2 versions for a start as there's a memory
leak in your libdevmapper.

Each device device uses up a fixed amount of (unswappable) kernel 
memory, and when all your memory is used out you can't have any 
more devices.

Use standard diagnostic tools to work out which limit you're hitting.
(top; ps; slabtop; sysreq; strace etc.)

Alasdair

^ permalink raw reply

* Re: cg-clone not fetching all tags?
From: Wolfgang Denk @ 2006-04-29 22:11 UTC (permalink / raw)
  To: Johannes Sixt; +Cc: git, Petr Baudis
In-Reply-To: <200604292342.16306.johannes.sixt@telecom.at>

In message <200604292342.16306.johannes.sixt@telecom.at> you wrote:
>
> There are two types of tags: They can point to
> 1. a commit object
> 2. a proper tag object (which in turn references the commit)
> 
> git-update-server-info seems to generate info only for case 2, and so are the 
> only ones that http can fetch.

And git-cvsimport (at least older versions of it)  imports  CVS  tags
only as type 1 ?

That would perfectly explain the situation. How can this be fixed?

Best regards,
Viele Grüße,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de
There is a multi-legged creature crawling on your shoulder.
	-- Spock, "A Taste of Armageddon", stardate 3193.9

^ permalink raw reply

* Re: cg-clone not fetching all tags?
From: Wolfgang Denk @ 2006-04-29 22:11 UTC (permalink / raw)
  To: Petr Baudis; +Cc: Git Mailing List
In-Reply-To: <20060429170542.GJ27689@pasky.or.cz>

Dear Petr,

in message <20060429170542.GJ27689@pasky.or.cz> you wrote:
> 
>   you need to run git-update-server-info every time you add or update a
> tag (or best every time you push). See the NOTES section of

I do this. Also, this does not seem to explain why  I  can  only  see
recent tags, but not old ones?

> cg-admin-setuprepo documentation for details on how to set it up to be
> called automagically at every push.

Actually I don't use push, but "cg-update" on the receiving  end.  Is
this a problem? 


Best regards,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de
There's an old proverb that says just about whatever you want it to.

^ permalink raw reply

* Re: netboot related projects
From: vincent guffens @ 2006-04-29 22:03 UTC (permalink / raw)
  To: The development of GRUB 2
In-Reply-To: <200604292254.29555.okuji@enbug.org>

Yoshinori K. Okuji wrote:
> On Saturday 29 April 2006 22:15, Marco Gerards wrote:
> 
>>vincent guffens <v.guffens@imperial.ac.uk> writes:
>>
>>Hi Vincent,
>>
>>
>>>I just wanted to let you know that I contacted the maintainer of
>>>Etherboot to inform him of my current attempt to port the etherboot
>>>drivers to grub2.
>>
>>Is he willing to cooperate with us so it will be easier to share code?
>>I think I once sent him an email about it...  But I am not sure
>>anymore. :-)
> 
> 
> Honestly, I don't like to copy Etherboot's drivers to GRUB any longer. I 
> rather consider how to use the UNDI interface provided by Etherboot. When I 
> worked on netboot in GRUB Legacy, Etherboot didn't support UNDI, so I had to 
> copy the drivers. According to him, the current Etherboot supports UNDI, so 
> it should be feasible to use Etherboot's drivers via UNDI.
> 
> I think the difficulty is the case where GRUB is not loaded by Etherboot, for 
> example, when GRUB boots from a disk directly. In this case, one way would be 
> to hack Etherboot so that Etherboot can be invoked by GRUB and give the 
> control back to GRUB.
> 
> From the experience of GRUB Legacy, I know how painful to synchronize code 
> with an external project, so I'd like to investigate this direction.

true, but this is why the idea here is to use the drivers without
modification or at least with as few modifications as possible. The
driver that I have working now (ns8390 to drive the qemu NE2000
emulation) works with no modification at all, it only requires the
inclusion of a few lines of code before the driver code and at the end
(i.e could be scripted in a general way). Further it does not put any
constraint on the GRUB interface. I don't know much about UNDI but I
checked that there is an UNDI driver in etherboot that could, I think,
be included just as mentioned above.


Of course, this require an additional "glue layer" which is not
particularly elegant. Please, let me know what you think about this way
of doing think as am I still spending some time of it in the hope that
it could be usefull for grub2 (the latest version can be found at
http://www.inma.ucl.ac.be/~guffens/grub2_netboot/ ).


--
	Vincent Guffens




^ permalink raw reply

* Re: better leve triggered IRQ management needed
From: Linus Torvalds @ 2006-04-29 21:58 UTC (permalink / raw)
  To: Alan Cox; +Cc: Stephen Hemminger, Andrew Morton, linux-kernel
In-Reply-To: <1146345911.3302.36.camel@localhost.localdomain>



On Sat, 29 Apr 2006, Alan Cox wrote:
> 
> Trying to guess the current IRQ level v edge on a PC is very hard.
> Trying to set it correctly from the driver is rather easier.

I disagree. It's not any easier at all.

On PC's (x86 and x86-64) we actually already set the ELCR as well as we 
can (look for "eisa_set_level_irq()"). And a driver _literally_ cannot 
change it from the system value, because of the polarity confusion.

In the other cases (IO-APIC) we usually have it level, but when we have it 
marked as an edge, there is almost always a real reason for that too (ie 
legacy interrupt, it really _is_ edge-high, not level-low).

		Linus

^ permalink raw reply

* Re: e1000_down and tx_timeout worker race cleaning the transmit buffers
From: Shaw Vrana @ 2006-04-29 21:57 UTC (permalink / raw)
  To: Auke Kok
  Cc: Andy Gospodarek, Michael Chan, Herbert Xu, netdev, auke-jan.h.kok,
	davem, jgarzik
In-Reply-To: <44504EA7.5050901@foo-projects.org>

Hi Auke,

On 4/26/06, Auke Kok <sofar@foo-projects.org> wrote:

> > I'm concerned about the addition of the netif_running check to
> > e1000_down.  While something like this is needed, I'm not familiar
> > enough w/ the code to know if this is okay.
> > All explanations and comments are greatly appreciated.
> While I appreciate patches ;^) I think we're on a better path by making these
> cleanups, and actually reducing the code in large places. I hope to be able to
> push something out for RFC soon. Added benefit will be that we're dropping a
> whole bunch of irq operations where we didn't need to (soft resets).

Well, it looks like my patch won't work as the e1000_close is called
by dev.c only after it clears the __LINK_STATE_START bit, which means
that e1000_down will exit prematurely when called from e1000_close in
my approach.  Any feedback on the approach would be appreciated, as
your upcoming patch sounds like it might be too aggressive to get put
into a stabilization patch.  ;)

I understand the need to fix the problems associated with the
watchdog_task as well, though I wonder if it wouldn't be better to
remove it altogether given the complexity of cleaning up after these
tasks in general.  I've personally had more problems with the watchdog
task than with the possible sleep in the watchdog timer code.  I can't
help but siding with the RedHat folks who currently ship a version of
the e1000 driver that fixes the mechanism used to sleep instead of the
watchdog_task approach.  Perhaps I missed the discussion of this, I'm
only finding the patch itself with google.

Thanks,
Shaw

^ permalink raw reply

* strange things going on, raid5&evms
From: Christian Pedaschus @ 2006-04-29 21:56 UTC (permalink / raw)
  To: linux-raid

Hi list,

i'll try to make it short, but raid-problems seem to have sooo long
descriptions ;)

A week ago i got a 200GB Sata drive and an Adapted 1210SA and decided to
do some tests with evms and software-raid and so i created a Raid5 out
of 3 Partitions using evmsgui:
15gb sda6 (Scsi Disk)
15gb sdb6 (Scsi Disk)
15gb sdc6 (Sata Disk)
No spares.
(i know this is not the best disk-config, but it was purely for testing,
neither important data nor high performance)

Worked like a charm for some days, but 2 days ago the system crashed
(while i was away). I don't know if it happened because of the raid, but
my sys hasn't crashed for over a year, so i highly suspect it.
After rebooting, the raid5 did not come back, i got boot-messages like:

[   34.232750] md: md2: raid array is not clean -- starting background
reconstruction
[   34.317923] raid5: device dm-5 operational as raid disk 1
[   34.403238] raid5: device dm-4 operational as raid disk 0
[   34.487662] raid5: cannot start dirty degraded array for md2
[   34.571717] RAID5 conf printout:
[   34.655027]  --- rd:3 wd:2 fd:1
[   34.737736]  disk 0, o:1, dev:dm-4
[   34.820023]  disk 1, o:1, dev:dm-5
[   34.901839] raid5: failed to run raid set md2
[   34.983871] md: pers->run() failed ...
[   35.070053] md: bind<dm-26>
[   35.150748] md: bind<dm-27>
[   35.309622] md: array md2 already has disks!
[   35.388342] md: array md2 already has disks!
[   35.466417] md: array md2 already has disks!
[   35.544040] md: array md2 already has disks!
[snip]
[   42.500546] md: array md2 already has disks!
[   42.562950] md: array md2 already has disks!
[   42.623025] md: array md2 already has disks!
[   42.686593] md: array md2 already has disks!
[   42.744099] md: array md2 already has disks!
[snip]
[   50.918891] md: array md2 already has disks!
[   50.919045] md: array md2 already has disks!
[   50.919169] md: array md2 already has disks!
[   50.919290] md: array md2 already has disks!
[   50.919454] md: array md2 already has disks!
[   50.919565] md: array md2 already has disks!

The rest of the sata-drive, which run as single evms-volumes (namely
sdc7/sdc8 both with 80gb) run fine. Even after removing the sata-drive
from the system i'm still not able to start the raid5 with the 2 scsi
discs, i always get:
# mdadm --manage --run /dev/md2
mdadm: failed to run array /dev/md2: Input/output error

But the scsi-disks are fine and the other raid0/1 which i have on the
scsi-discs are running without problems. I really wonder why i can't
start a raid5 with 2 disks and instead get I/O Errors. It doesn't matter
if i have the sata disk connected or not, it's always the same.

For now i did not upgrade any software, still running:

# uname -a
Linux pc1 2.6.15-gentoo-r1 #6 SMP PREEMPT Fri Apr 21 14:16:34 CEST 2006
i686 Intel(R) Xeon(TM) CPU 2.40GHz GenuineIntel GNU/Linux

# mdadm --version
mdadm - v1.12.0 - 14 June 2005

Any advice how to start the raid5 or shall i update mdadm (seems kinda old)?
Like i said, i have no important data on it, so i could live with a
reset, but the reason for my test was to find out if i can trust md+evms
and so i'm highly interested what to do now.

Greets, Chris















^ permalink raw reply

* Re: [linux-lvm] vgchange -ay Killed
From: Ming Zhang @ 2006-04-29 21:56 UTC (permalink / raw)
  To: Jonathan E Brassow; +Cc: linux-lvm
In-Reply-To: <1146323005.15799.8.camel@localhost.localdomain>

[-- Attachment #1: Type: text/plain, Size: 4844 bytes --]

forgot cc to lvm.

-------------------------
Hi Jonathan

I found out the reason, OOM, though no time to find out why vgchange
invoke that. vgchange seems to need ~3MB memory per lv it handled. quite
scary and poor scalability. I attached several logs to show this
problem. The oomlog is the kernel msg about oom killer. The toplog is
the last a few output from a top run. The vgscanlog is the last few scan
log.

  LVM version:     2.02.01 (2005-11-23)
  Library version: 1.02.02 (2006-01-04)
  Driver version:  4.4.0

Ming

On Sat, 2006-04-29 at 11:03 -0400, Ming Zhang wrote:
> On Sat, 2006-04-29 at 10:01 -0500, Jonathan E Brassow wrote:
> > Ming,
> > 
> > I remember you having a conversation about increasing the metadatasize 
> > of pvs (June 6th,2005) to accommodate large numbers of volumes... 
> > apparently, this didn't help?
> 
> yes, that helps. if without larger metadata size, i can not create that
> large number of lv at all.
> 
> > 
> > It seems to me that LVM might not be able to allocate enough memory... 
> > perhaps its internal memory cache is to small...  Use four v's for more 
> > verbose output.  Maybe it will give us some clues.
> 
> yes, same to me. i will redo the test soon and use 4v this time.
> 
> thanks.
> 
> 
> > 
> >   brassow
> > 
> > 
> > On Apr 28, 2006, at 5:10 PM, Ming Zhang wrote:
> > 
> > > no.  i do
> > >
> > > lvcreate -L1G -nlv1 vg1
> > > ...
> > > lvcreate -L1G -nlv3000 vg1
> > >
> > > so total 3000 logical volumes.
> > >
> > > then optionally i do lvscan, vgscan, pvscan. all kinds of scan. seems
> > > not fast.
> > >
> > > then i reboot, and then the vg will fail to activate all lv.
> > >
> > > ming
> > >
> > >
> > > On Fri, 2006-04-28 at 17:09 -0500, Jonathan E Brassow wrote:
> > >> You mean:
> > >> 1) lvcreate -L 3k -n lv vg
> > >> 2) vgchange -an vg
> > >> 3) vgchange -ay vg
> > >>
> > >> or do you mean something else?
> > >>
> > >>   brassow
> > >>
> > >> On Apr 28, 2006, at 11:10 AM, Ming Zhang wrote:
> > >>
> > >>> This is what i get when try to active a VG with 3K LVs. repeatable.
> > >>>
> > >>>   LVM version:     2.02.01 (2005-11-23)
> > >>>   Library version: 1.02.02 (2006-01-04)
> > >>>   Driver version:  4.4.0
> > >>>
> > >>>
> > >>> [root@dualxeon ~]# vgchange -ay
> > >>> Killed
> > >>>
> > >>>
> > >>> seem that "Locking memory" only appear once, and then stuck till
> > >>> killed.
> > >>>
> > >>> --------some debug output if i use vgchang -ay -vvv--------------
> > >>>     Found volume group "vg1"
> > >>>         Getting device info for vg1-v678
> > >>>         dm info
> > >>> LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367 
> > >>> N
> > >>> [16384]
> > >>>         Locking LV
> > >>> 8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCeL0DcqwlzsZSb0p6eIhXnV2uyE8KNAZG2 (R)
> > >>>       Finding volume group for uuid
> > >>> 8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCeL0DcqwlzsZSb0p6eIhXnV2uyE8KNAZG2
> > >>>       /dev/md0: lvm2 label detected
> > >>>       /dev/md1: lvm2 label detected
> > >>>       /dev/md0: lvm2 label detected
> > >>>       /dev/md1: lvm2 label detected
> > >>>         Read vg1 metadata (3001) from /dev/md0 at 272384 size 706783
> > >>>       /dev/md0: lvm2 label detected
> > >>>       /dev/md1: lvm2 label detected
> > >>>         Read vg1 metadata (3001) from /dev/md1 at 272384 size 706783
> > >>>     Found volume group "vg1"
> > >>>         Getting device info for vg1-v679
> > >>>         dm info
> > >>> LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCeL0DcqwlzsZSb0p6eIhXnV2uyE8KNAZG2 
> > >>> N
> > >>> [16384]
> > >>>         Locking LV
> > >>> 8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCeccjyapQkKwo75je1cFLyZ84RO4LWQnk5 (R)
> > >>>       Finding volume group for uuid
> > >>> 8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCeccjyapQkKwo75je1cFLyZ84RO4LWQnk5
> > >>>       /dev/md0: lvm2 label detected
> > >>>       /dev/md1: lvm2 label detected
> > >>>       /dev/md0: lvm2 label detected
> > >>>       /dev/md1: lvm2 label detected
> > >>>         Read vg1 metadata (3001) from /dev/md0 at 272384 size 706783
> > >>>       /dev/md0: lvm2 label detected
> > >>>       /dev/md1: lvm2 label detected
> > >>>         Read vg1 metadata (3001) from /dev/md1 at 272384 size 706783
> > >>>     Found volume group "vg1"
> > >>>         Getting device info for vg1-v680
> > >>>         dm info
> > >>> LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCeccjyapQkKwo75je1cFLyZ84RO4LWQnk5 
> > >>> N
> > >>> [16384]
> > >>>         dm info
> > >>> 8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCeccjyapQkKwo75je1cFLyZ84RO4LWQnk5 N
> > >>> [16384]
> > >>>         dm info vg1-v680  N   [16384]
> > >>>       Locking memory
> > >>>
> > >>>
> > >>> _______________________________________________
> > >>> linux-lvm mailing list
> > >>> linux-lvm@redhat.com
> > >>> https://www.redhat.com/mailman/listinfo/linux-lvm
> > >>> read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/
> > >>>
> > >>
> > >
> > 
> 

[-- Attachment #2: oomlog --]
[-- Type: text/plain, Size: 1967 bytes --]

oom-killer: gfp_mask=0xd0, order=0
Mem-info:
Node 0 DMA per-cpu:
cpu 0 hot: low 2, high 6, batch 1 used:5
cpu 0 cold: low 0, high 2, batch 1 used:0
cpu 1 hot: low 2, high 6, batch 1 used:2
cpu 1 cold: low 0, high 2, batch 1 used:0
cpu 2 hot: low 2, high 6, batch 1 used:2
cpu 2 cold: low 0, high 2, batch 1 used:1
cpu 3 hot: low 2, high 6, batch 1 used:4
cpu 3 cold: low 0, high 2, batch 1 used:0
Node 0 Normal per-cpu:
cpu 0 hot: low 62, high 186, batch 31 used:158
cpu 0 cold: low 0, high 62, batch 31 used:55
cpu 1 hot: low 62, high 186, batch 31 used:114
cpu 1 cold: low 0, high 62, batch 31 used:47
cpu 2 hot: low 62, high 186, batch 31 used:120
cpu 2 cold: low 0, high 62, batch 31 used:29
cpu 3 hot: low 62, high 186, batch 31 used:116
cpu 3 cold: low 0, high 62, batch 31 used:50
Node 0 HighMem per-cpu: empty
Free pages:       14884kB (0kB HighMem)
Active:244667 inactive:250322 dirty:0 writeback:0 unstable:0 free:3721 slab:9194 mapped:494595 pagetables:1325
Node 0 DMA free:8168kB min:44kB low:52kB high:64kB active:1804kB inactive:1108kB present:15976kB pages_scanned:3088 all_unreclaimable? yes
lowmem_reserve[]: 0 2031 2031
Node 0 Normal free:6716kB min:5740kB low:7172kB high:8608kB active:976736kB inactive:1000180kB present:2080192kB pages_scanned:255545 all_unreclaimable? no
lowmem_reserve[]: 0 0 0
Node 0 HighMem free:0kB min:128kB low:160kB high:192kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
lowmem_reserve[]: 0 0 0
Node 0 DMA: 0*4kB 1*8kB 0*16kB 1*32kB 1*64kB 1*128kB 1*256kB 1*512kB 1*1024kB 1*2048kB 1*4096kB = 8168kB
Node 0 Normal: 313*4kB 43*8kB 2*16kB 3*32kB 2*64kB 0*128kB 1*256kB 1*512kB 0*1024kB 0*2048kB 1*4096kB = 6716kB
Node 0 HighMem: empty
Swap cache: add 483211, delete 2156, find 52/65, race 0+0
Free swap  = 2260368kB
Total swap = 4192956kB
Free swap:       2260368kB
524144 pages of RAM
10297 reserved pages
81676 pages shared
481083 pages swap cached
Out of Memory: Killed process 4550 (lvm).

[-- Attachment #3: toplog --]
[-- Type: text/plain, Size: 46878 bytes --]

top - 11:27:09 up 9 min,  4 users,  load average: 0.99, 0.70, 0.33
Tasks:  91 total,   2 running,  89 sleeping,   0 stopped,   0 zombie
Cpu(s): 22.8% us,  3.3% sy,  0.0% ni, 73.8% id,  0.2% wa,  0.0% hi,  0.0% si
Mem:   2055388k total,  2004028k used,    51360k free,    12184k buffers
Swap:  4192956k total,        0k used,  4192956k free,   100016k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND            
 4550 root      21   0 1836m 1.8g  48m R 98.7 91.2   4:45.39 lvm                
 9305 root      16   0  6212  976  744 R  0.3  0.0   0:00.16 top                
10572 root      16   0  6212  992  760 S  0.3  0.0   0:00.08 top                
    1 root      16   0  4820  560  464 S  0.0  0.0   0:01.23 init               
    2 root      RT   0     0    0    0 S  0.0  0.0   0:00.01 migration/0        
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0        
    4 root      RT   0     0    0    0 S  0.0  0.0   0:00.01 migration/1        
    5 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/1        
    6 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/2        
    7 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/2        
    8 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/3        
    9 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/3        
   10 root      10  -5     0    0    0 S  0.0  0.0   0:00.01 events/0           
   11 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/1           
   12 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/2           
   13 root      10  -5     0    0    0 S  0.0  0.0   0:00.01 events/3           
   14 root      10  -5     0    0    0 S  0.0  0.0   0:00.05 khelper            
   15 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kthread            
   21 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kacpid             
  123 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/0          
  124 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/1          
  125 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/2          
  126 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/3          
  201 root      20   0     0    0    0 S  0.0  0.0   0:00.00 pdflush            
  202 root      15   0     0    0    0 S  0.0  0.0   0:00.00 pdflush            
  203 root      16   0     0    0    0 S  0.0  0.0   0:00.00 kswapd0            
  204 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 aio/0              
  205 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 aio/1              
  206 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 aio/2              
  207 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 aio/3              
  282 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kseriod            
  344 root      16   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_0          
  345 root      15   0     0    0    0 S  0.0  0.0   0:00.00 ahd_dv_0           
  347 root      16   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_1          
  348 root      15   0     0    0    0 S  0.0  0.0   0:00.00 ahd_dv_1           
  361 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/0          
  362 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/1          
  363 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/2          
  364 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/3          
  365 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/0          
  366 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/1          
  367 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/2          
  368 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/3          
  369 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kmirrord           
  389 root      15   0     0    0    0 S  0.0  0.0   0:00.23 kjournald          
 1220 root      10  -5  3680  456  368 S  0.0  0.0   0:00.17 udevd              
 1343 root      19   0     0    0    0 S  0.0  0.0   0:00.00 shpchpd_event      
 1456 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kauditd            
 1605 root      19   0     0    0    0 S  0.0  0.0   0:00.00 kjournald          
 2613 root      16   0  4500 1284  772 S  0.0  0.1   0:00.00 dhclient           
 2653 root      16   0  3696  620  504 S  0.0  0.0   0:00.04 syslogd            
 2657 root      16   0  2612  496  412 S  0.0  0.0   0:00.00 klogd              
 2668 root      16   0  2628  524  416 S  0.0  0.0   0:00.01 irqbalance         
 2796 root      18   0  2920  868  616 S  0.0  0.0   0:00.00 smartd             
 2806 root      19   0  2608  552  464 S  0.0  0.0   0:00.00 acpid              
 2854 root      15   0 22020 2088 1640 S  0.0  0.1   0:00.03 sshd               
 2869 root      15   0  8784  880  708 S  0.0  0.0   0:00.00 xinetd             
 2888 ntp       16   0 18632 5368 4224 S  0.0  0.3   0:00.01 ntpd               
 2898 root      16   0  4252  528  444 S  0.0  0.0   0:00.00 gpm                
 2908 root      16   0 57120 1188  740 S  0.0  0.1   0:00.00 crond              
 2931 xfs       18   0 10320 1712  772 S  0.0  0.1   0:00.02 xfs                
 2941 root      35  19  2604  648  536 S  0.0  0.0   0:00.00 anacron            
 2950 root      16   0  9032  808  648 S  0.0  0.0   0:00.00 atd                
 2960 dbus      16   0  9760 1232 1060 S  0.0  0.1   0:00.17 dbus-daemon-1      
 3020 root      17   0 27632 1312 1004 S  0.0  0.1   0:00.01 login              
 3021 root      16   0 27636 1316 1004 S  0.0  0.1   0:00.00 login              
 3022 root      16   0 27632 1312 1004 S  0.0  0.1   0:00.00 login              
 3023 root      16   0 27632 1312 1004 S  0.0  0.1   0:00.01 login              
 3024 root      18   0  2600  412  344 S  0.0  0.0   0:00.00 mingetty           
 3025 root      18   0  2600  416  344 S  0.0  0.0   0:00.00 mingetty           
 3521 root      16   0 54040 1620 1192 S  0.0  0.1   0:00.03 bash               
 3571 root      17   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_2          
 3572 root      18   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_3          
 3573 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_4          
 3574 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_5          
 3575 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_6          
 3576 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_7          
 3577 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_8          
 3578 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_9          
 3975 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_10         
 3976 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_11         
 3977 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_12         
 3979 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_13         
 3980 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_14         
 3981 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_15         
 3982 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_16         
 3983 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_17         
 4727 root      15   0 54040 1616 1192 S  0.0  0.1   0:00.03 bash               
 5397 root      16   0 53800  572  472 S  0.0  0.0   0:00.21 tail               
 6355 root      15   0 54044 1620 1192 S  0.0  0.1   0:00.03 bash               
 9581 root      15   0 54040 1616 1192 S  0.0  0.1   0:00.03 bash               


top - 11:27:12 up 9 min,  4 users,  load average: 0.99, 0.70, 0.33
Tasks:  91 total,   2 running,  89 sleeping,   0 stopped,   0 zombie
Cpu(s): 22.3% us,  3.4% sy,  0.0% ni, 74.1% id,  0.2% wa,  0.0% hi,  0.0% si
Mem:   2055388k total,  2022264k used,    33124k free,    12184k buffers
Swap:  4192956k total,        0k used,  4192956k free,   100016k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND            
 4550 root      18   0 1853m 1.8g  48m R 98.7 92.1   4:48.36 lvm                
    1 root      16   0  4820  560  464 S  0.0  0.0   0:01.23 init               
    2 root      RT   0     0    0    0 S  0.0  0.0   0:00.01 migration/0        
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0        
    4 root      RT   0     0    0    0 S  0.0  0.0   0:00.01 migration/1        
    5 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/1        
    6 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/2        
    7 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/2        
    8 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/3        
    9 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/3        
   10 root      10  -5     0    0    0 S  0.0  0.0   0:00.01 events/0           
   11 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/1           
   12 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/2           
   13 root      10  -5     0    0    0 S  0.0  0.0   0:00.01 events/3           
   14 root      10  -5     0    0    0 S  0.0  0.0   0:00.05 khelper            
   15 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kthread            
   21 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kacpid             
  123 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/0          
  124 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/1          
  125 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/2          
  126 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/3          
  201 root      20   0     0    0    0 S  0.0  0.0   0:00.00 pdflush            
  202 root      15   0     0    0    0 S  0.0  0.0   0:00.00 pdflush            
  203 root      16   0     0    0    0 S  0.0  0.0   0:00.00 kswapd0            
  204 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 aio/0              
  205 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 aio/1              
  206 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 aio/2              
  207 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 aio/3              
  282 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kseriod            
  344 root      16   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_0          
  345 root      15   0     0    0    0 S  0.0  0.0   0:00.00 ahd_dv_0           
  347 root      16   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_1          
  348 root      15   0     0    0    0 S  0.0  0.0   0:00.00 ahd_dv_1           
  361 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/0          
  362 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/1          
  363 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/2          
  364 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/3          
  365 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/0          
  366 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/1          
  367 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/2          
  368 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/3          
  369 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kmirrord           
  389 root      15   0     0    0    0 S  0.0  0.0   0:00.23 kjournald          
 1220 root      10  -5  3680  456  368 S  0.0  0.0   0:00.17 udevd              
 1343 root      19   0     0    0    0 S  0.0  0.0   0:00.00 shpchpd_event      
 1456 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kauditd            
 1605 root      19   0     0    0    0 S  0.0  0.0   0:00.00 kjournald          
 2613 root      16   0  4500 1284  772 S  0.0  0.1   0:00.00 dhclient           
 2653 root      16   0  3696  620  504 S  0.0  0.0   0:00.04 syslogd            
 2657 root      16   0  2612  496  412 S  0.0  0.0   0:00.00 klogd              
 2668 root      16   0  2628  524  416 S  0.0  0.0   0:00.01 irqbalance         
 2796 root      18   0  2920  868  616 S  0.0  0.0   0:00.00 smartd             
 2806 root      19   0  2608  552  464 S  0.0  0.0   0:00.00 acpid              
 2854 root      15   0 22020 2088 1640 S  0.0  0.1   0:00.03 sshd               
 2869 root      15   0  8784  880  708 S  0.0  0.0   0:00.00 xinetd             
 2888 ntp       16   0 18632 5368 4224 S  0.0  0.3   0:00.01 ntpd               
 2898 root      16   0  4252  528  444 S  0.0  0.0   0:00.00 gpm                
 2908 root      16   0 57120 1188  740 S  0.0  0.1   0:00.00 crond              
 2931 xfs       18   0 10320 1712  772 S  0.0  0.1   0:00.02 xfs                
 2941 root      35  19  2604  648  536 S  0.0  0.0   0:00.00 anacron            
 2950 root      16   0  9032  808  648 S  0.0  0.0   0:00.00 atd                
 2960 dbus      16   0  9760 1232 1060 S  0.0  0.1   0:00.17 dbus-daemon-1      
 3020 root      17   0 27632 1312 1004 S  0.0  0.1   0:00.01 login              
 3021 root      16   0 27636 1316 1004 S  0.0  0.1   0:00.00 login              
 3022 root      16   0 27632 1312 1004 S  0.0  0.1   0:00.00 login              
 3023 root      16   0 27632 1312 1004 S  0.0  0.1   0:00.01 login              
 3024 root      18   0  2600  412  344 S  0.0  0.0   0:00.00 mingetty           
 3025 root      18   0  2600  416  344 S  0.0  0.0   0:00.00 mingetty           
 3521 root      16   0 54040 1620 1192 S  0.0  0.1   0:00.03 bash               
 3571 root      17   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_2          
 3572 root      18   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_3          
 3573 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_4          
 3574 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_5          
 3575 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_6          
 3576 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_7          
 3577 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_8          
 3578 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_9          
 3975 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_10         
 3976 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_11         
 3977 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_12         
 3979 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_13         
 3980 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_14         
 3981 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_15         
 3982 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_16         
 3983 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_17         
 4727 root      15   0 54040 1616 1192 S  0.0  0.1   0:00.03 bash               
 5397 root      16   0 53800  572  472 S  0.0  0.0   0:00.21 tail               
 6355 root      15   0 54044 1620 1192 S  0.0  0.1   0:00.03 bash               
 9305 root      16   0  6212  976  744 R  0.0  0.0   0:00.16 top                
 9581 root      15   0 54040 1616 1192 S  0.0  0.1   0:00.03 bash               
10572 root      16   0  6212  992  760 S  0.0  0.0   0:00.08 top                


top - 11:27:15 up 9 min,  4 users,  load average: 0.99, 0.70, 0.33
Tasks:  91 total,   2 running,  89 sleeping,   0 stopped,   0 zombie
Cpu(s): 21.8% us,  3.9% sy,  0.0% ni, 72.2% id,  1.9% wa,  0.1% hi,  0.1% si
Mem:   2055388k total,  2034504k used,    20884k free,    11888k buffers
Swap:  4192956k total,        0k used,  4192956k free,    94804k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND            
 4550 root      18   0 1870m 1.8g  48m R 98.1 92.9   4:51.31 lvm                
    1 root      16   0  4820  560  464 S  0.0  0.0   0:01.23 init               
    2 root      RT   0     0    0    0 S  0.0  0.0   0:00.01 migration/0        
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0        
    4 root      RT   0     0    0    0 S  0.0  0.0   0:00.01 migration/1        
    5 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/1        
    6 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/2        
    7 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/2        
    8 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/3        
    9 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/3        
   10 root      10  -5     0    0    0 S  0.0  0.0   0:00.01 events/0           
   11 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/1           
   12 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/2           
   13 root      10  -5     0    0    0 S  0.0  0.0   0:00.01 events/3           
   14 root      10  -5     0    0    0 S  0.0  0.0   0:00.05 khelper            
   15 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kthread            
   21 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kacpid             
  123 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/0          
  124 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/1          
  125 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/2          
  126 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/3          
  201 root      15   0     0    0    0 S  0.0  0.0   0:00.00 pdflush            
  202 root      15   0     0    0    0 S  0.0  0.0   0:00.00 pdflush            
  203 root      15   0     0    0    0 S  0.0  0.0   0:00.00 kswapd0            
  204 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 aio/0              
  205 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 aio/1              
  206 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 aio/2              
  207 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 aio/3              
  282 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kseriod            
  344 root      16   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_0          
  345 root      15   0     0    0    0 S  0.0  0.0   0:00.00 ahd_dv_0           
  347 root      16   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_1          
  348 root      15   0     0    0    0 S  0.0  0.0   0:00.00 ahd_dv_1           
  361 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/0          
  362 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/1          
  363 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/2          
  364 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/3          
  365 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/0          
  366 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/1          
  367 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/2          
  368 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/3          
  369 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kmirrord           
  389 root      15   0     0    0    0 S  0.0  0.0   0:00.23 kjournald          
 1220 root      10  -5  3680  456  368 S  0.0  0.0   0:00.17 udevd              
 1343 root      19   0     0    0    0 S  0.0  0.0   0:00.00 shpchpd_event      
 1456 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kauditd            
 1605 root      19   0     0    0    0 S  0.0  0.0   0:00.00 kjournald          
 2613 root      16   0  4500 1284  772 S  0.0  0.1   0:00.00 dhclient           
 2653 root      16   0  3696  620  504 S  0.0  0.0   0:00.04 syslogd            
 2657 root      16   0  2612  496  412 S  0.0  0.0   0:00.00 klogd              
 2668 root      16   0  2628  524  416 S  0.0  0.0   0:00.01 irqbalance         
 2796 root      18   0  2920  868  616 S  0.0  0.0   0:00.00 smartd             
 2806 root      19   0  2608  552  464 S  0.0  0.0   0:00.00 acpid              
 2854 root      15   0 22020 2088 1640 S  0.0  0.1   0:00.03 sshd               
 2869 root      15   0  8784  880  708 S  0.0  0.0   0:00.00 xinetd             
 2888 ntp       16   0 18632 5368 4224 S  0.0  0.3   0:00.01 ntpd               
 2898 root      16   0  4252  528  444 S  0.0  0.0   0:00.00 gpm                
 2908 root      16   0 57120 1188  740 S  0.0  0.1   0:00.00 crond              
 2931 xfs       18   0 10320 1712  772 S  0.0  0.1   0:00.02 xfs                
 2941 root      35  19  2604  648  536 S  0.0  0.0   0:00.00 anacron            
 2950 root      16   0  9032  808  648 S  0.0  0.0   0:00.00 atd                
 2960 dbus      16   0  9760 1232 1060 S  0.0  0.1   0:00.17 dbus-daemon-1      
 3020 root      17   0 27632 1312 1004 S  0.0  0.1   0:00.01 login              
 3021 root      16   0 27636 1316 1004 S  0.0  0.1   0:00.00 login              
 3022 root      16   0 27632 1312 1004 S  0.0  0.1   0:00.00 login              
 3023 root      16   0 27632 1312 1004 S  0.0  0.1   0:00.01 login              
 3024 root      18   0  2600  412  344 S  0.0  0.0   0:00.00 mingetty           
 3025 root      18   0  2600  416  344 S  0.0  0.0   0:00.00 mingetty           
 3521 root      16   0 54040 1620 1192 S  0.0  0.1   0:00.03 bash               
 3571 root      17   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_2          
 3572 root      18   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_3          
 3573 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_4          
 3574 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_5          
 3575 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_6          
 3576 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_7          
 3577 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_8          
 3578 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_9          
 3975 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_10         
 3976 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_11         
 3977 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_12         
 3979 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_13         
 3980 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_14         
 3981 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_15         
 3982 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_16         
 3983 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_17         
 4727 root      15   0 54040 1616 1192 S  0.0  0.1   0:00.03 bash               
 5397 root      16   0 53800  572  472 S  0.0  0.0   0:00.21 tail               
 6355 root      15   0 54044 1620 1192 S  0.0  0.1   0:00.03 bash               
 9305 root      16   0  6212  976  744 R  0.0  0.0   0:00.16 top                
 9581 root      15   0 54040 1616 1192 S  0.0  0.1   0:00.03 bash               
10572 root      16   0  6212  992  760 S  0.0  0.0   0:00.08 top                


top - 11:27:18 up 9 min,  4 users,  load average: 0.99, 0.71, 0.33
Tasks:  91 total,   2 running,  89 sleeping,   0 stopped,   0 zombie
Cpu(s): 21.0% us,  4.7% sy,  0.0% ni, 69.6% id,  4.8% wa,  0.0% hi,  0.0% si
Mem:   2055388k total,  2033760k used,    21628k free,     6468k buffers
Swap:  4192956k total,        0k used,  4192956k free,    82476k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND            
 4550 root      23   0 1886m 1.8g  48m R 96.9 93.7   4:54.22 lvm                
  203 root      15   0     0    0    0 S  1.0  0.0   0:00.03 kswapd0            
    1 root      16   0  4820  560  464 S  0.3  0.0   0:01.24 init               
 9305 root      16   0  6212  976  744 R  0.3  0.0   0:00.17 top                
10572 root      16   0  6212  992  760 S  0.3  0.0   0:00.09 top                
    2 root      RT   0     0    0    0 S  0.0  0.0   0:00.01 migration/0        
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0        
    4 root      RT   0     0    0    0 S  0.0  0.0   0:00.01 migration/1        
    5 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/1        
    6 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/2        
    7 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/2        
    8 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/3        
    9 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/3        
   10 root      10  -5     0    0    0 S  0.0  0.0   0:00.01 events/0           
   11 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/1           
   12 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/2           
   13 root      10  -5     0    0    0 S  0.0  0.0   0:00.01 events/3           
   14 root      10  -5     0    0    0 S  0.0  0.0   0:00.05 khelper            
   15 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kthread            
   21 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kacpid             
  123 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/0          
  124 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/1          
  125 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/2          
  126 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/3          
  201 root      15   0     0    0    0 S  0.0  0.0   0:00.00 pdflush            
  202 root      15   0     0    0    0 S  0.0  0.0   0:00.00 pdflush            
  204 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 aio/0              
  205 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 aio/1              
  206 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 aio/2              
  207 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 aio/3              
  282 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kseriod            
  344 root      16   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_0          
  345 root      15   0     0    0    0 S  0.0  0.0   0:00.00 ahd_dv_0           
  347 root      16   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_1          
  348 root      15   0     0    0    0 S  0.0  0.0   0:00.00 ahd_dv_1           
  361 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/0          
  362 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/1          
  363 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/2          
  364 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/3          
  365 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/0          
  366 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/1          
  367 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/2          
  368 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/3          
  369 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kmirrord           
  389 root      15   0     0    0    0 S  0.0  0.0   0:00.23 kjournald          
 1220 root      10  -5  3680  456  368 S  0.0  0.0   0:00.17 udevd              
 1343 root      19   0     0    0    0 S  0.0  0.0   0:00.00 shpchpd_event      
 1456 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kauditd            
 1605 root      19   0     0    0    0 S  0.0  0.0   0:00.00 kjournald          
 2613 root      16   0  4500 1284  772 S  0.0  0.1   0:00.00 dhclient           
 2653 root      16   0  3696  620  504 S  0.0  0.0   0:00.04 syslogd            
 2657 root      16   0  2612  496  412 S  0.0  0.0   0:00.00 klogd              
 2668 root      16   0  2628  524  416 S  0.0  0.0   0:00.01 irqbalance         
 2796 root      18   0  2920  868  616 S  0.0  0.0   0:00.00 smartd             
 2806 root      19   0  2608  552  464 S  0.0  0.0   0:00.00 acpid              
 2854 root      15   0 22020 2088 1640 S  0.0  0.1   0:00.03 sshd               
 2869 root      15   0  8784  880  708 S  0.0  0.0   0:00.00 xinetd             
 2888 ntp       16   0 18632 5368 4224 S  0.0  0.3   0:00.01 ntpd               
 2898 root      16   0  4252  528  444 S  0.0  0.0   0:00.00 gpm                
 2908 root      16   0 57120 1188  740 S  0.0  0.1   0:00.00 crond              
 2931 xfs       18   0 10320 1712  772 S  0.0  0.1   0:00.02 xfs                
 2941 root      35  19  2604  648  536 S  0.0  0.0   0:00.00 anacron            
 2950 root      16   0  9032  808  648 S  0.0  0.0   0:00.00 atd                
 2960 dbus      16   0  9760 1232 1060 S  0.0  0.1   0:00.17 dbus-daemon-1      
 3020 root      17   0 27632 1312 1004 S  0.0  0.1   0:00.01 login              
 3021 root      16   0 27636 1316 1004 S  0.0  0.1   0:00.00 login              
 3022 root      16   0 27632 1312 1004 S  0.0  0.1   0:00.00 login              
 3023 root      16   0 27632 1312 1004 S  0.0  0.1   0:00.01 login              
 3024 root      18   0  2600  412  344 S  0.0  0.0   0:00.00 mingetty           
 3025 root      18   0  2600  416  344 S  0.0  0.0   0:00.00 mingetty           
 3521 root      16   0 54040 1620 1192 S  0.0  0.1   0:00.03 bash               
 3571 root      17   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_2          
 3572 root      18   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_3          
 3573 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_4          
 3574 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_5          
 3575 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_6          
 3576 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_7          
 3577 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_8          
 3578 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_9          
 3975 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_10         
 3976 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_11         
 3977 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_12         
 3979 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_13         
 3980 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_14         
 3981 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_15         
 3982 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_16         
 3983 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_17         
 4727 root      15   0 54040 1616 1192 S  0.0  0.1   0:00.03 bash               
 5397 root      16   0 53800  572  472 S  0.0  0.0   0:00.21 tail               
 6355 root      15   0 54044 1620 1192 S  0.0  0.1   0:00.03 bash               
 9581 root      15   0 54040 1616 1192 S  0.0  0.1   0:00.03 bash               


top - 11:27:21 up 10 min,  4 users,  load average: 0.99, 0.71, 0.34
Tasks:  91 total,   2 running,  89 sleeping,   0 stopped,   0 zombie
Cpu(s): 19.9% us,  6.3% sy,  0.0% ni, 69.6% id,  4.1% wa,  0.1% hi,  0.1% si
Mem:   2055388k total,  2032396k used,    22992k free,     1252k buffers
Swap:  4192956k total,       44k used,  4192912k free,    70580k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND            
 4550 root      22   0 1902m 1.9g  48m R 97.5 94.5   4:57.15 lvm                
  203 root      15   0     0    0    0 S  2.3  0.0   0:00.10 kswapd0            
   14 root      10  -5     0    0    0 S  0.3  0.0   0:00.06 khelper            
 5397 root      16   0 53800  572  472 S  0.3  0.0   0:00.22 tail               
10572 root      16   0  6212  992  760 S  0.3  0.0   0:00.10 top                
    1 root      16   0  4820  560  464 S  0.0  0.0   0:01.24 init               
    2 root      RT   0     0    0    0 S  0.0  0.0   0:00.01 migration/0        
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0        
    4 root      RT   0     0    0    0 S  0.0  0.0   0:00.01 migration/1        
    5 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/1        
    6 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/2        
    7 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/2        
    8 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/3        
    9 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/3        
   10 root      10  -5     0    0    0 S  0.0  0.0   0:00.01 events/0           
   11 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/1           
   12 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/2           
   13 root      10  -5     0    0    0 S  0.0  0.0   0:00.01 events/3           
   15 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kthread            
   21 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kacpid             
  123 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/0          
  124 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/1          
  125 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/2          
  126 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/3          
  201 root      15   0     0    0    0 S  0.0  0.0   0:00.00 pdflush            
  202 root      15   0     0    0    0 S  0.0  0.0   0:00.00 pdflush            
  204 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 aio/0              
  205 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 aio/1              
  206 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 aio/2              
  207 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 aio/3              
  282 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kseriod            
  344 root      16   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_0          
  345 root      15   0     0    0    0 S  0.0  0.0   0:00.00 ahd_dv_0           
  347 root      16   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_1          
  348 root      15   0     0    0    0 S  0.0  0.0   0:00.00 ahd_dv_1           
  361 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/0          
  362 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/1          
  363 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/2          
  364 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/3          
  365 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/0          
  366 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/1          
  367 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/2          
  368 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/3          
  369 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kmirrord           
  389 root      15   0     0    0    0 S  0.0  0.0   0:00.23 kjournald          
 1220 root      10  -5  3680  456  368 S  0.0  0.0   0:00.17 udevd              
 1343 root      19   0     0    0    0 S  0.0  0.0   0:00.00 shpchpd_event      
 1456 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kauditd            
 1605 root      19   0     0    0    0 S  0.0  0.0   0:00.00 kjournald          
 2613 root      16   0  4500 1212  744 S  0.0  0.1   0:00.00 dhclient           
 2653 root      16   0  3696  620  504 S  0.0  0.0   0:00.04 syslogd            
 2657 root      16   0  2612  496  412 S  0.0  0.0   0:00.00 klogd              
 2668 root      16   0  2628  524  416 S  0.0  0.0   0:00.01 irqbalance         
 2796 root      18   0  2920  868  616 S  0.0  0.0   0:00.00 smartd             
 2806 root      19   0  2608  552  464 S  0.0  0.0   0:00.00 acpid              
 2854 root      15   0 22020 2088 1640 S  0.0  0.1   0:00.03 sshd               
 2869 root      15   0  8784  880  708 S  0.0  0.0   0:00.00 xinetd             
 2888 ntp       16   0 18632 5368 4224 S  0.0  0.3   0:00.01 ntpd               
 2898 root      16   0  4252  528  444 S  0.0  0.0   0:00.00 gpm                
 2908 root      16   0 57120 1188  740 S  0.0  0.1   0:00.00 crond              
 2931 xfs       18   0 10320 1712  772 S  0.0  0.1   0:00.02 xfs                
 2941 root      35  19  2604  648  536 S  0.0  0.0   0:00.00 anacron            
 2950 root      16   0  9032  808  648 S  0.0  0.0   0:00.00 atd                
 2960 dbus      16   0  9760 1232 1060 S  0.0  0.1   0:00.17 dbus-daemon-1      
 3020 root      17   0 27632 1312 1004 S  0.0  0.1   0:00.01 login              
 3021 root      16   0 27636 1316 1004 S  0.0  0.1   0:00.00 login              
 3022 root      16   0 27632 1312 1004 S  0.0  0.1   0:00.00 login              
 3023 root      16   0 27632 1312 1004 S  0.0  0.1   0:00.01 login              
 3024 root      18   0  2600  412  344 S  0.0  0.0   0:00.00 mingetty           
 3025 root      18   0  2600  416  344 S  0.0  0.0   0:00.00 mingetty           
 3521 root      16   0 54040 1620 1192 S  0.0  0.1   0:00.03 bash               
 3571 root      17   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_2          
 3572 root      18   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_3          
 3573 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_4          
 3574 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_5          
 3575 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_6          
 3576 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_7          
 3577 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_8          
 3578 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_9          
 3975 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_10         
 3976 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_11         
 3977 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_12         
 3979 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_13         
 3980 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_14         
 3981 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_15         
 3982 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_16         
 3983 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_17         
 4727 root      15   0 54040 1616 1192 S  0.0  0.1   0:00.03 bash               
 6355 root      15   0 54044 1620 1192 S  0.0  0.1   0:00.03 bash               
 9305 root      16   0  6212  976  744 R  0.0  0.0   0:00.17 top                
 9581 root      15   0 54040 1616 1192 S  0.0  0.1   0:00.03 bash               


top - 11:27:24 up 10 min,  4 users,  load average: 0.99, 0.71, 0.34
Tasks:  91 total,   1 running,  90 sleeping,   0 stopped,   0 zombie
Cpu(s): 18.7% us,  5.9% sy,  0.0% ni, 67.3% id,  8.0% wa,  0.0% hi,  0.0% si
Mem:   2055388k total,  2041136k used,    14252k free,      192k buffers
Swap:  4192956k total,     2304k used,  4190652k free,    58236k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND            
 4550 root      18   0 1927m 1.9g  48m D 94.9 95.6   5:00.00 lvm                
  203 root      15   0     0    0    0 D  3.3  0.0   0:00.20 kswapd0            
 9305 root      17   0  6212  968  736 R  1.0  0.0   0:00.20 top                
   13 root      10  -5     0    0    0 S  0.3  0.0   0:00.02 events/3           
    1 root      16   0  4820  464  440 S  0.0  0.0   0:01.24 init               
    2 root      RT   0     0    0    0 S  0.0  0.0   0:00.01 migration/0        
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0        
    4 root      RT   0     0    0    0 S  0.0  0.0   0:00.01 migration/1        
    5 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/1        
    6 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/2        
    7 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/2        
    8 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/3        
    9 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/3        
   10 root      10  -5     0    0    0 S  0.0  0.0   0:00.01 events/0           
   11 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/1           
   12 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/2           
   14 root      10  -5     0    0    0 S  0.0  0.0   0:00.06 khelper            
   15 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kthread            
   21 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kacpid             
  123 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/0          
  124 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/1          
  125 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/2          
  126 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/3          
  201 root      15   0     0    0    0 S  0.0  0.0   0:00.00 pdflush            
  202 root      15   0     0    0    0 S  0.0  0.0   0:00.00 pdflush            
  204 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 aio/0              
  205 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 aio/1              
  206 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 aio/2              
  207 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 aio/3              
  282 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kseriod            
  344 root      16   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_0          
  345 root      15   0     0    0    0 S  0.0  0.0   0:00.00 ahd_dv_0           
  347 root      16   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_1          
  348 root      15   0     0    0    0 S  0.0  0.0   0:00.00 ahd_dv_1           
  361 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/0          
  362 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/1          
  363 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/2          
  364 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kcryptd/3          
  365 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/0          
  366 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/1          
  367 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/2          
  368 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kmpathd/3          
  369 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kmirrord           
  389 root      15   0     0    0    0 S  0.0  0.0   0:00.23 kjournald          
 1220 root      10  -5  3680  412  364 S  0.0  0.0   0:00.17 udevd              
 1343 root      19   0     0    0    0 S  0.0  0.0   0:00.00 shpchpd_event      
 1456 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kauditd            
 1605 root      19   0     0    0    0 S  0.0  0.0   0:00.00 kjournald          
 2613 root      16   0  4500  472  472 S  0.0  0.0   0:00.00 dhclient           
 2653 root      16   0  3696  472  472 S  0.0  0.0   0:00.04 syslogd            
 2657 root      16   0  2612  392  392 S  0.0  0.0   0:00.00 klogd              
 2668 root      16   0  2628  484  412 S  0.0  0.0   0:00.01 irqbalance         
 2796 root      18   0  2920  484  484 S  0.0  0.0   0:00.00 smartd             
 2806 root      19   0  2608  448  448 S  0.0  0.0   0:00.00 acpid              
 2854 root      15   0 22020  604  604 S  0.0  0.0   0:00.03 sshd               
 2869 root      15   0  8784  552  552 S  0.0  0.0   0:00.00 xinetd             
 2888 ntp       16   0 18632 5368 4224 S  0.0  0.3   0:00.01 ntpd               
 2898 root      16   0  4252  516  444 S  0.0  0.0   0:00.00 gpm                
 2908 root      16   0 57120 1072  668 S  0.0  0.1   0:00.00 crond              
 2931 xfs       18   0 10320 1708  772 S  0.0  0.1   0:00.02 xfs                
 2941 root      35  19  2604  648  536 S  0.0  0.0   0:00.00 anacron            
 2950 root      16   0  9032  676  576 S  0.0  0.0   0:00.00 atd                
 2960 dbus      16   0  9760 1084  948 S  0.0  0.1   0:00.17 dbus-daemon-1      
 3020 root      17   0 27632 1212  904 S  0.0  0.1   0:00.01 login              
 3021 root      16   0 27636 1216  904 S  0.0  0.1   0:00.00 login              
 3022 root      16   0 27632 1212  904 S  0.0  0.1   0:00.00 login              
 3023 root      16   0 27632 1212  904 S  0.0  0.1   0:00.01 login              
 3024 root      18   0  2600  412  344 S  0.0  0.0   0:00.00 mingetty           
 3025 root      18   0  2600  416  344 S  0.0  0.0   0:00.00 mingetty           
 3521 root      16   0 54040 1616 1188 S  0.0  0.1   0:00.03 bash               
 3571 root      17   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_2          
 3572 root      18   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_3          
 3573 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_4          
 3574 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_5          
 3575 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_6          
 3576 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_7          
 3577 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_8          
 3578 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_9          
 3975 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_10         
 3976 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_11         
 3977 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_12         
 3979 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_13         
 3980 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_14         
 3981 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_15         
 3982 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_16         
 3983 root      19   0     0    0    0 S  0.0  0.0   0:00.00 scsi_eh_17         
 4727 root      15   0 54040 1612 1188 S  0.0  0.1   0:00.03 bash               
 5397 root      16   0 53800  516  416 S  0.0  0.0   0:00.22 tail               
 6355 root      15   0 54044 1616 1188 S  0.0  0.1   0:00.03 bash               
 9581 root      15   0 54040 1612 1188 S  0.0  0.1   0:00.03 bash               
10572 root      16   0  6212  984  752 S  0.0  0.0   0:00.10 top                

[-- Attachment #4: vgscanlog --]
[-- Type: text/plain, Size: 10742 bytes --]


#mm/memlock.c:118       Unlocking memory
#mm/memlock.c:137         memlock_count dec to 0
#activate/fs.c:171       Linking /dev/vg1/v676 -> /dev/mapper/vg1-v676
#locking/file_locking.c:245         Locking LV 8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2 (R)
#metadata/metadata.c:1171       Finding volume group for uuid 8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2
#label/label.c:167       /dev/md0: lvm2 label detected
#label/label.c:167       /dev/md1: lvm2 label detected
#label/label.c:167       /dev/md0: lvm2 label detected
#label/label.c:167       /dev/md1: lvm2 label detected
#format_text/format-text.c:320         Read vg1 metadata (3001) from /dev/md0 at 272384 size 706783
#label/label.c:167       /dev/md0: lvm2 label detected
#label/label.c:167       /dev/md1: lvm2 label detected
#format_text/format-text.c:320         Read vg1 metadata (3001) from /dev/md1 at 272384 size 706783
#metadata/metadata.c:1177     Found volume group "vg1"
#activate/activate.c:359         Getting device info for vg1-v677
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2 N   [16384]
#ioctl/libdm-iface.c:1450         dm info  8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2 N   [16384]
#ioctl/libdm-iface.c:1450         dm info vg1-v677  N   [16384]
#mm/memlock.c:99       Locking memory
#mm/memlock.c:130         memlock_count inc to 1
#activate/dev_manager.c:588         Getting device info for vg1-v677 [LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2]
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2 O   [16384]
#ioctl/libdm-iface.c:1450         dm info  8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2 O   [16384]
#ioctl/libdm-iface.c:1450         dm info vg1-v677  O   [16384]
#activate/dev_manager.c:588         Getting device info for vg1-v677-real [LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2-real]
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2-real O   [16384]
#ioctl/libdm-iface.c:1450         dm info  8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2-real O   [16384]
#ioctl/libdm-iface.c:1450         dm info vg1-v677-real  O   [16384]
#activate/dev_manager.c:588         Getting device info for vg1-v677-cow [LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2-cow]
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2-cow O   [16384]
#ioctl/libdm-iface.c:1450         dm info  8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2-cow O   [16384]
#ioctl/libdm-iface.c:1450         dm info vg1-v677-cow  O   [16384]
#libdm-deptree.c:1134     Creating vg1-v677
#ioctl/libdm-iface.c:1450         dm create vg1-v677 LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2 N   [16384]
#libdm-deptree.c:1352     Loading vg1-v677 table
#libdm-deptree.c:1303         Adding target: 0 2097152 linear 9:0 1417678976
#ioctl/libdm-iface.c:1450         dm table   (253:676) O   [16384]
#ioctl/libdm-iface.c:1450         dm reload   (253:676) N   [16384]
#libdm-deptree.c:877     Resuming vg1-v677 (253:676)
#ioctl/libdm-iface.c:1450         dm resume   (253:676) N   [16384]
#activate/dev_manager.c:588         Getting device info for vg1-v677 [LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2]
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2 O   [16384]
#ioctl/libdm-iface.c:1450         dm deps   (253:676) O   [16384]
#activate/dev_manager.c:588         Getting device info for vg1-v677-real [LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2-real]
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2-real O   [16384]
#ioctl/libdm-iface.c:1450         dm info  8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2-real O   [16384]
#ioctl/libdm-iface.c:1450         dm info vg1-v677-real  O   [16384]
#activate/dev_manager.c:588         Getting device info for vg1-v677-cow [LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2-cow]
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2-cow O   [16384]
#ioctl/libdm-iface.c:1450         dm info  8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCezkCi0wgOPSHTHZbalc5R7a2iAVL0LRT2-cow O   [16384]
#ioctl/libdm-iface.c:1450         dm info vg1-v677-cow  O   [16384]
#mm/memlock.c:118       Unlocking memory
#mm/memlock.c:137         memlock_count dec to 0
#activate/fs.c:171       Linking /dev/vg1/v677 -> /dev/mapper/vg1-v677
#locking/file_locking.c:245         Locking LV 8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367 (R)
#metadata/metadata.c:1171       Finding volume group for uuid 8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367
#label/label.c:167       /dev/md0: lvm2 label detected
#label/label.c:167       /dev/md1: lvm2 label detected
#label/label.c:167       /dev/md0: lvm2 label detected
#label/label.c:167       /dev/md1: lvm2 label detected
#format_text/format-text.c:320         Read vg1 metadata (3001) from /dev/md0 at 272384 size 706783
#label/label.c:167       /dev/md0: lvm2 label detected
#label/label.c:167       /dev/md1: lvm2 label detected
#format_text/format-text.c:320         Read vg1 metadata (3001) from /dev/md1 at 272384 size 706783
#metadata/metadata.c:1177     Found volume group "vg1"
#activate/activate.c:359         Getting device info for vg1-v678
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367 N   [16384]
#ioctl/libdm-iface.c:1450         dm info  8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367 N   [16384]
#ioctl/libdm-iface.c:1450         dm info vg1-v678  N   [16384]
#mm/memlock.c:99       Locking memory
#mm/memlock.c:130         memlock_count inc to 1
#activate/dev_manager.c:588         Getting device info for vg1-v678 [LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367]
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367 O   [16384]
#ioctl/libdm-iface.c:1450         dm info  8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367 O   [16384]
#ioctl/libdm-iface.c:1450         dm info vg1-v678  O   [16384]
#activate/dev_manager.c:588         Getting device info for vg1-v678-real [LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367-real]
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367-real O   [16384]
#ioctl/libdm-iface.c:1450         dm info  8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367-real O   [16384]
#ioctl/libdm-iface.c:1450         dm info vg1-v678-real  O   [16384]
#activate/dev_manager.c:588         Getting device info for vg1-v678-cow [LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367-cow]
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367-cow O   [16384]
#ioctl/libdm-iface.c:1450         dm info  8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367-cow O   [16384]
#ioctl/libdm-iface.c:1450         dm info vg1-v678-cow  O   [16384]
#libdm-deptree.c:1134     Creating vg1-v678
#ioctl/libdm-iface.c:1450         dm create vg1-v678 LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367 N   [16384]
#libdm-deptree.c:1352     Loading vg1-v678 table
#libdm-deptree.c:1303         Adding target: 0 2097152 linear 9:0 1419776128
#ioctl/libdm-iface.c:1450         dm table   (253:677) O   [16384]
#ioctl/libdm-iface.c:1450         dm reload   (253:677) N   [16384]
#libdm-deptree.c:877     Resuming vg1-v678 (253:677)
#ioctl/libdm-iface.c:1450         dm resume   (253:677) N   [16384]
#activate/dev_manager.c:588         Getting device info for vg1-v678 [LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367]
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367 O   [16384]
#ioctl/libdm-iface.c:1450         dm deps   (253:677) O   [16384]
#activate/dev_manager.c:588         Getting device info for vg1-v678-real [LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367-real]
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367-real O   [16384]
#ioctl/libdm-iface.c:1450         dm info  8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367-real O   [16384]
#ioctl/libdm-iface.c:1450         dm info vg1-v678-real  O   [16384]
#activate/dev_manager.c:588         Getting device info for vg1-v678-cow [LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367-cow]
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367-cow O   [16384]
#ioctl/libdm-iface.c:1450         dm info  8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCejSzi1SuM3uO3NWrpDB2Fle5A3Uv6i367-cow O   [16384]
#ioctl/libdm-iface.c:1450         dm info vg1-v678-cow  O   [16384]
#mm/memlock.c:118       Unlocking memory
#mm/memlock.c:137         memlock_count dec to 0
#activate/fs.c:171       Linking /dev/vg1/v678 -> /dev/mapper/vg1-v678
#locking/file_locking.c:245         Locking LV 8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCeL0DcqwlzsZSb0p6eIhXnV2uyE8KNAZG2 (R)
#metadata/metadata.c:1171       Finding volume group for uuid 8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCeL0DcqwlzsZSb0p6eIhXnV2uyE8KNAZG2
#label/label.c:167       /dev/md0: lvm2 label detected
#label/label.c:167       /dev/md1: lvm2 label detected
#label/label.c:167       /dev/md0: lvm2 label detected
#label/label.c:167       /dev/md1: lvm2 label detected
#format_text/format-text.c:320         Read vg1 metadata (3001) from /dev/md0 at 272384 size 706783
#label/label.c:167       /dev/md0: lvm2 label detected
#label/label.c:167       /dev/md1: lvm2 label detected
#format_text/format-text.c:320         Read vg1 metadata (3001) from /dev/md1 at 272384 size 706783
#metadata/metadata.c:1177     Found volume group "vg1"
#activate/activate.c:359         Getting device info for vg1-v679
#ioctl/libdm-iface.c:1450         dm info  LVM-8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCeL0DcqwlzsZSb0p6eIhXnV2uyE8KNAZG2 N   [16384]
#ioctl/libdm-iface.c:1450         dm info  8ZZaL55BvKV1b8qj3z60KZBVJOrnHyCeL0DcqwlzsZSb0p6eIhXnV2uyE8KNAZG2 N   [16384]
#ioctl/libdm-iface.c:1450         dm info vg1-v679  N   [16384]
#mm/memlock.c:99       Locking memory

^ permalink raw reply

* Re: [Bluez-devel] obtainining client BTADDR during obexserver (1.0-3) session?
From: Collin R. Mulliner @ 2006-04-29 21:49 UTC (permalink / raw)
  To: bluez-devel
In-Reply-To: <4453D6C5.6090905@gmail.com>

Hi,

checkout sobexsrv at http://www.mulliner.org/bluetooth/sobexsrv.php its
a secriptable obexserver.


Collin

On Sat, 2006-04-29 at 17:12 -0400, JP Freeley wrote:
> How would I obtain the BTADDR of the connecting remote device when it 
> connects to obexserver (1.0-3)? I would like the server to accept a 
> file, parse it and reply accordingly to the device which sent it.
> 
> Any help, direction, pointers, snippets would be greatly appreciated.
> 
> Thanks,
> 
> jpf
> 
> 
> -------------------------------------------------------
> Using Tomcat but need to do more? Need to support web services, security?
> Get stuff done quickly with pre-integrated technology to make your job easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> _______________________________________________
> Bluez-devel mailing list
> Bluez-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/bluez-devel
--
Collin R. Mulliner <collin@betaversion.net>
BETAVERSiON Systems [www.betaversion.net]
info/pgp: finger collin@betaversion.net
If Bill Gates had a nickel for every time Windows crashed... Oh wait, he
does!



-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Bluez-devel mailing list
Bluez-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bluez-devel

^ permalink raw reply

* [PATCH] cg-admin-rewritehist: fix reappearing files with --filter-tree.
From: Johannes Sixt @ 2006-04-29 21:45 UTC (permalink / raw)


With --filter-tree a working copy is checked out for each commit.
However, if a file is removed by a commit, the file is _not_ removed
from the working copy by git-checkout-index. This must be done explicitly,
otherwise the file becomes added back again.

Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at>

---

 cg-admin-rewritehist |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

26bb71a2d3d583d9eee10f4e950ff1b7d400e975
diff --git a/cg-admin-rewritehist b/cg-admin-rewritehist
index 7dd83cf..13ffb5d 100755
--- a/cg-admin-rewritehist
+++ b/cg-admin-rewritehist
@@ -213,10 +213,13 @@ while read commit; do
 
 	if [ "$filter_tree" ]; then
 		git-checkout-index -f -u -a
+		# files that $commit removed are now still in the working tree;
+		# remove them, else they would be added again
+		git-ls-files -z --others | xargs -0 rm -f
 		eval "$filter_tree"
 		git-diff-index -r $commit | cut -f 2- | tr '\n' '\0' | \
 			xargs -0 git-update-index --add --replace --remove
-		git-ls-files --others | tr '\n' '\0' | \
+		git-ls-files -z --others | \
 			xargs -0 git-update-index --add --replace --remove
 	fi
 
-- 
1.3.1.gaa6b

^ permalink raw reply related

* [PATCH] cg-admin-rewritehist: Seed the commit map with the parents specified with -r.
From: Johannes Sixt @ 2006-04-29 21:45 UTC (permalink / raw)


When the first commit is manufactured, its parents are looked up in the
commit map. However, without this patch the map is always empty at that time.
If the entire history is rewritten, this is no problem because the first
commit does not have any parents anyway. However, if -r is used to constrain
rewriting to only part of the history, this first commit is manufactured
incorrectly without parents because 'cat' fails.

Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at>

---

 cg-admin-rewritehist |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

977fc81815877a1e72040355b221fe8d62593eb7
diff --git a/cg-admin-rewritehist b/cg-admin-rewritehist
index 9fa4c2a..7dd83cf 100755
--- a/cg-admin-rewritehist
+++ b/cg-admin-rewritehist
@@ -141,6 +141,7 @@ _git_requires_root=1
 
 tempdir=.git-rewrite
 startrev=
+startrevparents=
 filter_env=
 filter_tree=
 filter_index=
@@ -152,6 +153,7 @@ while optparse; do
 		tempdir="$OPTARG"
 	elif optparse -r=; then
 		startrev="^$OPTARG^ $OPTARG $startrev"
+		startrevparents="$OPTARG^ $startrevparents"
 	elif optparse --env-filter=; then
 		filter_env="$OPTARG"
 	elif optparse --tree-filter=; then
@@ -186,6 +188,12 @@ ret=0
 
 mkdir ../map # map old->new commit ids for rewriting parents
 
+# seed with identity mappings for the parents where we start off
+for commit in $startrevparents; do
+	commit="$(git-rev-parse $commit)"
+	echo $commit > ../map/$commit
+done
+
 git-rev-list --topo-order HEAD $startrev | tac >../revs
 commits=$(cat ../revs | wc -l)
 
-- 
1.3.1.gaa6b

^ permalink raw reply related

* Re: [PATCH 10/12] fbdev: Static pseudocolor with depth less than 4 does exist
From: Antonino A. Daplas @ 2006-04-29 21:42 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Linux Frame Buffer Device Development, Andrew Morton, Linux/m68k
In-Reply-To: <Pine.LNX.4.62.0604292025410.4557@pademelon.sonytel.be>

Geert Uytterhoeven wrote:
> [ linux-mac68k@mac.linux-m68k.org removed as it seems to bounce? ]
> 
> On Sat, 29 Apr 2006, Antonino A. Daplas wrote:
>> Geert Uytterhoeven wrote:
>>> On Sat, 29 Apr 2006, Antonino A. Daplas wrote:
>>>> A static pseudocolor visual with depth less than 4 does exist, so let's
>>>> not accidentally upscale the depth with this configuration
>>> Yes it does, at least on Mac/m68k.
>>>
>>> Now the real question is: why doesn't macfb set FB_VISUAL_STATIC_PSEUDOCOLOR if
>>> there's no macfb_setpalette routine?
>> It should.  The other question is, what to do with static pseudocolor?
>> Do we always assume console colors?  Or do we make drivers fill their own
>> info->cmap entries and not alter the contents when fb_set_cmap() is called?
> 
> I don't think you can always assume console colors. Only the driver (if anyone
> knows at all) knows the palette.
> 
> On the other hand, at least on Mac/m68k the palette is inherited from MacOS.
> It would be possible for the Penguin booter to programs the standard console
> palette under MacOS, just before booting the kernel, but as I don't know much
> about Penguin, I have no idea whether that's currently done.
> 

Making the palette match the console would be the simplest solution.  Otherwise,
we make the drivers export a color map which will be read-only.  Then fbcon and
other clients will just have to alter their palette to best fit the hardware.

Tony


-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

^ permalink raw reply

* Re: cg-clone not fetching all tags?
From: Johannes Sixt @ 2006-04-29 21:42 UTC (permalink / raw)
  To: git
In-Reply-To: <20060429170542.GJ27689@pasky.or.cz>

On Saturday 29 April 2006 19:05, Petr Baudis wrote:
>   Hi,
>
> Dear diary, on Sat, Apr 29, 2006 at 04:00:42PM CEST, I got a letter
> where Wolfgang Denk <wd@denx.de> said that...
>
> > it seems that "cg-clone" does not fetch all tags any more - only  the
> > most  recent ones (modiufied in the last N days?) seem to be fetched?
> > [Eventually the "N days"  might  correspond  to  "changing  tools  to
> > version X", but I have no way to find out.]
> >
> > This happens only when using HTTP; using ssh  or  rsync  works  fine.
> > Also,  if  we follow the "cg-clone" by a "git-fetch -t" command, this
> > will load the missing tags.
> >
> > Is this intentional, or am I doing anything wrong?
> >
> > [For testing, try "cg-clone http://www.denx.de/git/u-boot.git"]
>
>   you need to run git-update-server-info every time you add or update a
> tag (or best every time you push). See the NOTES section of
> cg-admin-setuprepo documentation for details on how to set it up to be
> called automagically at every push.

There are two types of tags: They can point to
1. a commit object
2. a proper tag object (which in turn references the commit)

git-update-server-info seems to generate info only for case 2, and so are the 
only ones that http can fetch.

-- Hannes

^ permalink raw reply

* Log flood: "scheduling while atomic" (2.6.15.x, 2.6.16.x)
From: Darren Salt @ 2006-04-29 20:45 UTC (permalink / raw)
  To: linux-kernel

I'm seeing bouts of log flooding caused by something presumably not releasing
a lock. I've looked at some of the messages, but at around 100/s, I'm not too
keen to look through the whole lot :-)

  scheduling while atomic: swapper/0xafbfffff/0
   [show_trace+19/32]
   [dump_stack+30/32]
   [schedule+1278/1472]
   [cpu_idle+88/96]
   [stext+44/64]
   [start_kernel+574/704]
   [L6+0/2] 0xc0100199

(Trailing parts of some lines have been omitted; it's all repeated data. And
some sort of rate-limiting of these messages would be nice, but some other
way to draw attention to the problem, e.g. an occasional beep, would be
good.)

The most recent instance occurred a few minutes into recording a TV programme
(via vdr) from a cx88-based Nova-T. (I'm currently using stock drivers rather
than ones built from the v4l-dvb repository.)

Config, lspci, dmesg, modules list are attached.

Once the problem has manifest itself, attempts to shutdown tend to hang with
reports of soft lockups; keypresses trigger more scheduling-while-atomic
reports. Normal reboot fails, but rebooting via sysrq works.

I find it curious that it started happening after a power failure (actually,
a significant reduction in the supply - lights were dim, and I could power up
my printer). It's happened identically with several different kernels; I
first noticed with, IIRC, 2.6.15.4. In case it's of any significance, there's
signal booster between the aerial and the DVB cards (I'm not ruling out the
possibility that this is triggered by some weird hardware problem).

Any clues, anybody?

-- 
| Darren Salt    | linux or ds at              | nr. Ashington, | Toon
| RISC OS, Linux | youmustbejoking,demon,co,uk | Northumberland | Army
|   <URL:http://www.youmustbejoking.demon.co.uk/progs.packages.html>

To neutralise unholy water, boil the hell out of it.

begin 644 dmesg,fff
M3&EN=7@@=F5R<VEO;B`R+C8N,38N,3$@*')O;W1`9FQI8F)L92D@*&=C8R!V
M97)S:6]N(#0N,"XS("A$96)I86X@-"XP+C,M,2DI(",Q(%1U92!!<'(@,C4@
M,#,Z,S$Z-3@@0E-4(#(P,#8*0DE/4RUP<F]V:61E9"!P:'ES:6-A;"!204T@
M;6%P.@H@0DE/4RUE.#(P.B`P,#`P,#`P,#`P,#`P,#`P("T@,#`P,#`P,#`P
M,#`Y9F,P,"`H=7-A8FQE*0H@0DE/4RUE.#(P.B`P,#`P,#`P,#`P,#EF8S`P
M("T@,#`P,#`P,#`P,#!A,#`P,"`H<F5S97)V960I"B!"24]3+64X,C`Z(#`P
M,#`P,#`P,#`P9C`P,#`@+2`P,#`P,#`P,#`P,3`P,#`P("AR97-E<G9E9"D*
M($))3U,M93@R,#H@,#`P,#`P,#`P,#$P,#`P,"`M(#`P,#`P,#`P,&9F9C`P
M,#`@*'5S86)L92D*($))3U,M93@R,#H@,#`P,#`P,#`P9F9F,#`P,"`M(#`P
M,#`P,#`P,&9F9C,P,#`@*$%#4$D@3E93*0H@0DE/4RUE.#(P.B`P,#`P,#`P
M,#!F9F8S,#`P("T@,#`P,#`P,#`Q,#`P,#`P,"`H04-022!D871A*0H@0DE/
M4RUE.#(P.B`P,#`P,#`P,&9F9F8P,#`P("T@,#`P,#`P,#$P,#`P,#`P,"`H
M<F5S97)V960I"C(U-4U"($Q/5TU%32!A=F%I;&%B;&4N"D]N(&YO9&4@,"!T
M;W1A;'!A9V5S.B`V-34R,`H@($1-02!Z;VYE.B`T,#DV('!A9V5S+"!,249/
M(&)A=&-H.C`*("!$34$S,B!Z;VYE.B`P('!A9V5S+"!,249/(&)A=&-H.C`*
M("!.;W)M86P@>F]N93H@-C$T,C0@<&%G97,L($Q)1D\@8F%T8V@Z,34*("!(
M:6=H365M('IO;F4Z(#`@<&%G97,L($Q)1D\@8F%T8V@Z,`I$34D@,BXS('!R
M97-E;G0N"D%#4$DZ(%)31%`@*'8P,#`@2U0R-C8@("`@("`@("`@("`@("`@
M("`@("`@("`@("`@("`@("`I($`@,'@P,#!F-S4W,`I!0U!).B!24T14("AV
M,#`Q($M4,C8V("!!5U)$04-022`P>#0R,S`R93,Q($%74D0@,'@P,#`P,#`P
M,"D@0"`P>#!F9F8S,#`P"D%#4$DZ($9!1%0@*'8P,#$@2U0R-C8@($%74D1!
M0U!)(#!X-#(S,#)E,S$@05=21"`P>#`P,#`P,#`P*2!`(#!X,&9F9C,P-#`*
M04-023H@1%-$5"`H=C`P,2!+5#(V-B`@05=21$%#4$D@,'@P,#`P,3`P,"!-
M4T94(#!X,#$P,#`P,&,I($`@,'@P,#`P,#`P,`I!0U!).B!032U4:6UE<B!)
M3R!0;W)T.B`P>#0P,#@*06QL;V-A=&EN9R!00TD@<F5S;W5R8V5S('-T87)T
M:6YG(&%T(#(P,#`P,#`P("AG87`Z(#$P,#`P,#`P.F5F9F8P,#`P*0I"=6EL
M="`Q('IO;F5L:7-T<PI+97)N96P@8V]M;6%N9"!L:6YE.B!A=71O($)/3U1?
M24U!1T4]3&EN=7@@<F\@<F]O=#TS,#(@86-P:5]I<G%?:7-A/3$R(&%P:6,]
M=F5R8F]S92!L87!I8PI,;V-A;"!!4$E#(&1I<V%B;&5D(&)Y($))3U,@+2T@
M<F5E;F%B;&EN9RX*1F]U;F0@86YD(&5N86)L960@;&]C86P@05!)0R$*;6%P
M<&5D($%024,@=&\@9F9F9F0P,#`@*&9E93`P,#`P*0I%;F%B;&EN9R!F87-T
M($9052!S879E(&%N9"!R97-T;W)E+BXN(&1O;F4N"D5N86)L:6YG('5N;6%S
M:V5D(%-)340@1E!5(&5X8V5P=&EO;B!S=7!P;W)T+BXN(&1O;F4N"DEN:71I
M86QI>FEN9R!#4%4C,`I0240@:&%S:"!T86)L92!E;G1R:65S.B`Q,#(T("AO
M<F1E<CH@,3`L(#$V,S@T(&)Y=&5S*0I$971E8W1E9"`R,#`X+CDT-"!-2'H@
M<')O8V5S<V]R+@I5<VEN9R!P;71M<B!F;W(@:&EG:"UR97,@=&EM97-O=7)C
M90I#;VYS;VQE.B!C;VQO=7(@5D=!*R`X,'@R-0I$96YT<GD@8V%C:&4@:&%S
M:"!T86)L92!E;G1R:65S.B`V-34S-B`H;W)D97(Z(#8L(#(V,C$T-"!B>71E
M<RD*26YO9&4M8V%C:&4@:&%S:"!T86)L92!E;G1R:65S.B`S,C<V."`H;W)D
M97(Z(#4L(#$S,3`W,B!B>71E<RD*365M;W)Y.B`R-34U,3)K+S(V,C`X,&L@
M879A:6QA8FQE("@R,SDX:R!K97)N96P@8V]D92P@-C`R,&L@<F5S97)V960L
M(#<R,VL@9&%T82P@,3@P:R!I;FET+"`P:R!H:6=H;65M*0I#:&5C:VEN9R!I
M9B!T:&ES('!R;V-E<W-O<B!H;VYO=7)S('1H92!74"!B:70@979E;B!I;B!S
M=7!E<G9I<V]R(&UO9&4N+BX@3VLN"D-A;&EB<F%T:6YG(&1E;&%Y('5S:6YG
M('1I;65R('-P96-I9FEC(')O=71I;F4N+B`T,#(S+C$R($)O9V]-25!3("AL
M<&H].#`T-C(T."D*4V5C=7)I='D@1G)A;65W;W)K('8Q+C`N,"!I;FET:6%L
M:7IE9`I#87!A8FEL:71Y($Q332!I;FET:6%L:7IE9`I-;W5N="UC86-H92!H
M87-H('1A8FQE(&5N=')I97,Z(#4Q,@I#4%4Z($%F=&5R(&=E;F5R:6,@:61E
M;G1I9GDL(&-A<',Z(#`S.#-F8F9F(&,Q8S-F8F9F(#`P,#`P,#`P(#`P,#`P
M,#`P(#`P,#`P,#`P(#`P,#`P,#`P(#`P,#`P,#`P"D-053H@069T97(@=F5N
M9&]R(&ED96YT:69Y+"!C87!S.B`P,S@S9F)F9B!C,6,S9F)F9B`P,#`P,#`P
M,"`P,#`P,#`P,"`P,#`P,#`P,"`P,#`P,#`P,"`P,#`P,#`P,`I#4%4Z($PQ
M($D@0V%C:&4Z(#8T2R`H-C0@8GET97,O;&EN92DL($0@8V%C:&4@-C1+("@V
M-"!B>71E<R]L:6YE*0I#4%4Z($PR($-A8VAE.B`R-39+("@V-"!B>71E<R]L
M:6YE*0I#4%4Z($%F=&5R(&%L;"!I;FET<RP@8V%P<SH@,#,X,V9B9F8@8S%C
M,V9B9F8@,#`P,#`P,#`@,#`P,#`T,C`@,#`P,#`P,#`@,#`P,#`P,#`@,#`P
M,#`P,#`*26YT96P@;6%C:&EN92!C:&5C:R!A<F-H:71E8W1U<F4@<W5P<&]R
M=&5D+@I);G1E;"!M86-H:6YE(&-H96-K(')E<&]R=&EN9R!E;F%B;&5D(&]N
M($-052,P+@I#4%4Z($%-1"!!=&AL;VXH=&TI(%A0(#(T,#`K('-T97!P:6YG
M(#`Q"D-H96-K:6YG("=H;'0G(&EN<W1R=6-T:6]N+BXN($]++@I!0U!).B!S
M971T:6YG($5,0U(@=&\@,#(P,"`H9G)O;2`P93`P*0IE;F%B;&5D($5X=$E.
M5"!O;B!#4%4C,`I5<VEN9R!L;V-A;"!!4$E#('1I;65R(&EN=&5R<G5P=',N
M"F-A;&EB<F%T:6YG($%024,@=&EM97(@+BXN"BXN+BXN($-052!C;&]C:R!S
M<&5E9"!I<R`R,#`X+C(X-#8@34AZ+@HN+BXN+B!H;W-T(&)U<R!C;&]C:R!S
M<&5E9"!I<R`R-C<N,S,Q,B!-2'HN"DY%5#H@4F5G:7-T97)E9"!P<F]T;V-O
M;"!F86UI;'D@,38*04-023H@8G5S('1Y<&4@<&-I(')E9VES=&5R960*<W!U
M<FEO=7,@.#(U.4$@:6YT97)R=7!T.B!)4E$W+@I00TDZ(%!#22!"24]3(')E
M=FES:6]N(#(N,3`@96YT<GD@870@,'AF8C0W,"P@;&%S="!B=7,],0I00TDZ
M(%5S:6YG(&-O;F9I9W5R871I;VX@='EP92`Q"D%#4$DZ(%-U8G-Y<W1E;2!R
M979I<VEO;B`R,#`V,#$R-PI!0U!).B!);G1E<G!R971E<B!E;F%B;&5D"D%#
M4$DZ(%5S:6YG(%!)0R!F;W(@:6YT97)R=7!T(')O=71I;F<*04-023H@4$-)
M(%)O;W0@0G)I9&=E(%M00TDP72`H,#`P,#HP,"D*4$-).B!0<F]B:6YG(%!#
M22!H87)D=V%R92`H8G5S(#`P*0I!0U!).B!!<W-U;64@<F]O="!B<FED9V4@
M6UQ?4T)?+E!#23!=(&)U<R!I<R`P"D)O;W0@=FED96\@9&5V:6-E(&ES(#`P
M,#`Z,#$Z,#`N,`I!0U!).B!00TD@26YT97)R=7!T(%)O=71I;F<@5&%B;&4@
M6UQ?4T)?+E!#23`N7U!25%T*04-023H@4$-)($EN=&5R<G5P="!,:6YK(%M,
M3DM!72`H25)1<R`Q(#,@-"`U(#8@-R`Q,"`J,3$@,3(@,30@,34I"D%#4$DZ
M(%!#22!);G1E<G)U<'0@3&EN:R!;3$Y+0ET@*$E247,@,2`S(#0@-2`V(#<@
M*C$P(#$Q(#$R(#$T(#$U*0I!0U!).B!00TD@26YT97)R=7!T($QI;FL@6TQ.
M2T-=("A)4E%S(#$@,R`T(#4@-B`W(#$P("HQ,2`Q,B`Q-"`Q-2D*04-023H@
M4$-)($EN=&5R<G5P="!,:6YK(%M,3DM$72`H25)1<R`Q(#,@-"`U(#8@-R`J
M,3`@,3$@,3(@,30@,34I"DQI;G5X(%!L=6<@86YD(%!L87D@4W5P<&]R="!V
M,"XY-R`H8RD@061A;2!"96QA>0IP;G`Z(%!N4"!!0U!)(&EN:70*<&YP.B!0
M;E`@04-023H@9F]U;F0@,30@9&5V:6-E<PIU<V)C;W)E.B!R96=I<W1E<F5D
M(&YE=R!D<FEV97(@=7-B9G,*=7-B8V]R93H@<F5G:7-T97)E9"!N97<@9')I
M=F5R(&AU8@I00TDZ(%5S:6YG($%#4$D@9F]R($E242!R;W5T:6YG"E!#23H@
M268@82!D979I8V4@9&]E<VXG="!W;W)K+"!T<GD@(G!C:3UR;W5T96ER<2(N
M("!)9B!I="!H96QP<RP@<&]S="!A(')E<&]R=`I00TDZ($)R:61G93H@,#`P
M,#HP,#HP,2XP"B`@24\@=VEN9&]W.B!C,#`P+6-F9F8*("!-14T@=VEN9&]W
M.B!E-#`P,#`P,"UE-69F9F9F9@H@(%!2149%5$-(('=I;F1O=SH@9#`P,#`P
M,#`M9&9F9F9F9F8*4$-).B!3971T:6YG(&QA=&5N8WD@=&EM97(@;V8@9&5V
M:6-E(#`P,#`Z,#`Z,#$N,"!T;R`V-`I-86-H:6YE(&-H96-K(&5X8V5P=&EO
M;B!P;VQL:6YG('1I;65R('-T87)T960N"DEN<W1A;&QI;F<@:VYF<V0@*&-O
M<'ER:6=H="`H0RD@,3DY-B!O:VER0&UO;F%D+G-W8BYD92DN"DEN:71I86QI
M>FEN9R!#<GEP=&]G<F%P:&EC($%020II;R!S8VAE9'5L97(@;F]O<"!R96=I
M<W1E<F5D"FEO('-C:&5D=6QE<B!A;G1I8VEP871O<GD@<F5G:7-T97)E9"`H
M9&5F875L="D*:6\@<V-H961U;&5R(&1E861L:6YE(')E9VES=&5R960*:6\@
M<V-H961U;&5R(&-F<2!R96=I<W1E<F5D"D%#4$DZ(%!#22!);G1E<G)U<'0@
M3&EN:R!;3$Y+05T@96YA8FQE9"!A="!)4E$@,3$*4$-).B!S971T:6YG($E2
M42`Q,2!A<R!L979E;"UT<FEG9V5R960*04-023H@4$-)($EN=&5R<G5P="`P
M,#`P.C`Q.C`P+C!;05T@+3X@3&EN:R!;3$Y+05T@+3X@1U-)(#$Q("AL979E
M;"P@;&]W*2`M/B!)4E$@,3$*<F%D96]N9F(Z($9O=6YD($EN=&5L('@X-B!"
M24]3(%)/32!);6%G90IR861E;VYF8CH@4F5T<FEE=F5D(%!,3"!I;F9O<R!F
M<F]M($))3U,*<F%D96]N9F(Z(%)E9F5R96YC93TR-RXP,"!-2'H@*%)E9D1I
M=CTQ,BD@365M;W)Y/3(P,"XP,"!-:'HL(%-Y<W1E;3TQ-C8N,#`@34AZ"G)A
M9&5O;F9B.B!03$P@;6EN(#(P,#`P(&UA>"`T,#`P,`IR861E;VYF8CH@36]N
M:71O<B`Q('1Y<&4@0U)4(&9O=6YD"G)A9&5O;F9B.B!%1$E$('!R;V)E9`IR
M861E;VYF8CH@36]N:71O<B`R('1Y<&4@;F\@9F]U;F0*0V]N<V]L93H@<W=I
M=&-H:6YG('1O(&-O;&]U<B!F<F%M92!B=69F97(@9&5V:6-E(#$V,'@V-`IR
M861E;VYF8B`H,#`P,#HP,3HP,"XP*3H@051)(%)A9&5O;B!99"`*04-023H@
M4&]W97(@0G5T=&]N("A&1BD@6U!74D9="D%#4$DZ(%!O=V5R($)U='1O;B`H
M0TTI(%M05U)"70I!0U!).B!3;&5E<"!"=71T;VX@*$--*2!;4TQ00ET*04-0
M23H@1F%N(%M&04Y=("AO;BD*04-023H@0U!5,"`H<&]W97(@<W1A=&5S.B!#
M,5M#,5T@0S);0S)=*0I!0U!).B!4:&5R;6%L(%IO;F4@6U1(4DU=("@T,2!#
M*0I296%L(%1I;64@0VQO8VL@1')I=F5R('8Q+C$R86,*3&EN=7@@86=P9V%R
M="!I;G1E<F9A8V4@=C`N,3`Q("AC*2!$879E($IO;F5S"F%G<&=A<G0Z($1E
M=&5C=&5D(%9)02!+5#(V-B]+63(V-G@O2U0S,S,@8VAI<'-E=`IA9W!G87)T
M.B!!1U`@87!E<G1U<F4@:7,@-C1-($`@,'AE,#`P,#`P,`I;9')M72!);FET
M:6%L:7IE9"!D<FT@,2XP+C$@,C`P-3$Q,#(*04-023H@4$-)($EN=&5R<G5P
M="`P,#`P.C`Q.C`P+C!;05T@+3X@3&EN:R!;3$Y+05T@+3X@1U-)(#$Q("AL
M979E;"P@;&]W*2`M/B!)4E$@,3$*6V1R;5T@26YI=&EA;&EZ960@<F%D96]N
M(#$N,C(N,"`R,#`U,3(R.2!O;B!M:6YO<B`P"E!.4#H@4%,O,B!#;VYT<F]L
M;&5R(%M03E`P,S`S.E!3,DLL4$Y0,&8Q,SI04S)-72!A="`P>#8P+#!X-C0@
M:7)Q(#$L,3(*<V5R:6\Z(&DX,#0R($%56"!P;W)T(&%T(#!X-C`L,'@V-"!I
M<G$@,3(*<V5R:6\Z(&DX,#0R($M"1"!P;W)T(&%T(#!X-C`L,'@V-"!I<G$@
M,0IP87)P;W)T.B!0;E!"24]3('!A<G!O<G0@9&5T96-T960N"G!A<G!O<G0P
M.B!00RUS='EL92!A="`P>#,W."P@:7)Q(#<@6U!#4U!0+%1225-4051%70I&
M;&]P<'D@9')I=F4H<RDZ(&9D,"!I<R`Q+C0T30I&1$,@,"!I<R!A('!O<W0M
M,3DY,2`X,C`W-PHX,3,Y=&]O($9A<W0@171H97)N970@9')I=F5R(#`N.2XR
M-PI!0U!).B!00TD@26YT97)R=7!T($QI;FL@6TQ.2T-=(&5N86)L960@870@
M25)1(#$Q"D%#4$DZ(%!#22!);G1E<G)U<'0@,#`P,#HP,#HP82XP6T%=("T^
M($QI;FL@6TQ.2T-=("T^($=322`Q,2`H;&5V96PL(&QO=RD@+3X@25)1(#$Q
M"F5T:#`Z(%)E86Q496L@4E1,.#$S.2!A="`P>&0P.#!E,#`P+"`P,#HS,#IB
M9#HR-SHQ8SHW-2P@25)1(#$Q"F5T:#`Z("!)9&5N=&EF:65D(#@Q,SD@8VAI
M<"!T>7!E("=25$PM.#$P,$(O.#$S.40G"E5N:69O<FT@375L=&DM4&QA=&9O
M<FT@12U)1$4@9')I=F5R(%)E=FES:6]N.B`W+C`P86QP:&$R"FED93H@07-S
M=6UI;F<@,S--2'H@<WES=&5M(&)U<R!S<&5E9"!F;W(@4$E/(&UO9&5S.R!O
M=F5R<FED92!W:71H(&ED96)U<SUX>`I64%])1$4Z($E$12!C;VYT<F]L;&5R
M(&%T(%!#22!S;&]T(#`P,#`Z,#`Z,3$N,0I!0U!).B!00TD@26YT97)R=7!T
M(#`P,#`Z,#`Z,3$N,5M!72`M/B!,:6YK(%M,3DM!72`M/B!'4TD@,3$@*&QE
M=F5L+"!L;W<I("T^($E242`Q,0I00TDZ(%9I82!)4E$@9FEX=7`@9F]R(#`P
M,#`Z,#`Z,3$N,2P@9G)O;2`R-34@=&\@,3$*5E!?241%.B!C:&EP<V5T(')E
M=FES:6]N(#8*5E!?241%.B!N;W0@,3`P)2!N871I=F4@;6]D93H@=VEL;"!P
M<F]B92!I<G%S(&QA=&5R"E907TE$13H@5DE!('9T.#(S,V$@*')E=B`P,"D@
M241%(%5$34$Q,S,@8V]N=')O;&QE<B!O;B!P8VDP,#`P.C`P.C$Q+C$*("`@
M(&ED93`Z($)-+41-02!A="`P>&4P,#`M,'AE,#`W+"!"24]3('-E='1I;F=S
M.B!H9&$Z1$U!+"!H9&(Z<&EO"B`@("!I9&4Q.B!"32U$34$@870@,'AE,#`X
M+3!X93`P9BP@0DE/4R!S971T:6YG<SH@:&1C.D1-02P@:&1D.D1-00I0<F]B
M:6YG($E$12!I;G1E<F9A8V4@:61E,"XN+@IH9&$Z($5X8V5L4W1O<B!496-H
M;F]L;V=Y($HS-C`L($%402!$25-+(&1R:79E"FED93`@870@,'@Q9C`M,'@Q
M9C<L,'@S9C8@;VX@:7)Q(#$T"E!R;V)I;F<@241%(&EN=&5R9F%C92!I9&4Q
M+BXN"FAD8SH@4$E/3D5%4B!$5D0M4E<@1%92+3$Q,$0L($%405!)($-$+T16
M1"U23TT@9')I=F4*:&1D.B!304U354Y'($161"U23TT@4T0M-C$V42P@051!
M4$D@0T0O1%9$+5)/32!D<FEV90II9&4Q(&%T(#!X,3<P+3!X,3<W+#!X,S<V
M(&]N(&ER<2`Q-0IH9&$Z(&UA>"!R97%U97-T('-I>F4Z(#4Q,DMI0@IH9&$Z
M(#$R,#$P,S(P,"!S96-T;W)S("@V,30Y,B!-0BD@=R\Q.#(Q2VE"($-A8VAE
M+"!#2%,],38S.#,O,C4U+S8S+"!51$U!*#$P,"D*:&1A.B!C86-H92!F;'5S
M:&5S('-U<'!O<G1E9`H@:&1A.B!H9&$Q(&AD83(@:&1A,R!H9&$T(#P@:&1A
M-2!H9&$V(&AD83<@:&1A."!H9&$Y(&AD83$P(#X*:&1C.B!!5$%022`T,%@@
M1%9$+5)/32!$5D0M4B!#1"U2+U)7(&1R:79E+"`R,#`P:T(@0V%C:&4L(%5$
M34$H-C8I"E5N:69O<FT@0T0M4D]-(&1R:79E<B!2979I<VEO;CH@,RXR,`IH
M9&0Z($%405!)(#0X6"!$5D0M4D]-(&1R:79E+"`U,3)K0B!#86-H92P@541-
M02@S,RD*=7-B;6]N.B!D96)U9V9S(&ES(&YO="!A=F%I;&%B;&4*;6EC93H@
M4%,O,B!M;W5S92!D979I8V4@8V]M;6]N(&9O<B!A;&P@;6EC90II;G!U=#H@
M050@5')A;G-L871E9"!3970@,B!K97EB;V%R9"!A<R`O8VQA<W,O:6YP=70O
M:6YP=70P"FEN<'5T.B!00R!3<&5A:V5R(&%S("]C;&%S<R]I;G!U="]I;G!U
M=#$*:3)C("]D978@96YT<FEE<R!D<FEV97(*=S@S-C(W:&8@.3$Y,2TP,CDP
M.B!%;F%B;&EN9R!T96UP,BP@<F5A9&EN9W,@;6EG:'0@;F]T(&UA:V4@<V5N
M<V4*061V86YC960@3&EN=7@@4V]U;F0@07)C:&ET96-T=7)E($1R:79E<B!6
M97)S:6]N(#$N,"XQ,7)C,B`H5V5D($IA;B`P-"`P.#HU-SHR,"`R,#`V(%54
M0RDN"D%,4T$@9&5V:6-E(&QI<W0Z"B`@3F\@<V]U;F1C87)D<R!F;W5N9"X*
M3D54.B!296=I<W1E<F5D('!R;W1O8V]L(&9A;6EL>2`R"DE0(')O=71E(&-A
M8VAE(&AA<V@@=&%B;&4@96YT<FEE<SH@-#`Y-B`H;W)D97(Z(#(L(#$V,S@T
M(&)Y=&5S*0I40U`@97-T86)L:7-H960@:&%S:"!T86)L92!E;G1R:65S.B`Q
M-C,X-"`H;W)D97(Z(#0L(#8U-3,V(&)Y=&5S*0I40U`@8FEN9"!H87-H('1A
M8FQE(&5N=')I97,Z(#$V,S@T("AO<F1E<CH@-"P@-C4U,S8@8GET97,I"E1#
M4#H@2&%S:"!T86)L97,@8V]N9FEG=7)E9"`H97-T86)L:7-H960@,38S.#0@
M8FEN9"`Q-C,X-"D*5$-0(')E;F\@<F5G:7-T97)E9`I40U`@8FEC(')E9VES
M=&5R960*3D54.B!296=I<W1E<F5D('!R;W1O8V]L(&9A;6EL>2`Q"DY%5#H@
M4F5G:7-T97)E9"!P<F]T;V-O;"!F86UI;'D@,3<*57-I;F<@25!)(%-H;W)T
M8W5T(&UO9&4*5D93.B!-;W5N=&5D(')O;W0@*&5X=#(@9FEL97-Y<W1E;2D@
M<F5A9&]N;'DN"D9R965I;F<@=6YU<V5D(&ME<FYE;"!M96UO<GDZ(#$X,&L@
M9G)E960*:6YP=70Z($EM17A04R\R($=E;F5R:6,@17AP;&]R97(@36]U<V4@
M87,@+V-L87-S+VEN<'5T+VEN<'5T,@I,:6YU>"!V:61E;R!C87!T=7)E(&EN
M=&5R9F%C93H@=C$N,#`*55-"(%5N:79E<G-A;"!(;W-T($-O;G1R;VQL97(@
M26YT97)F86-E(&1R:79E<B!V,BXS"D%#4$DZ(%!#22!);G1E<G)U<'0@3&EN
M:R!;3$Y+1%T@96YA8FQE9"!A="!)4E$@,3`*4$-).B!S971T:6YG($E242`Q
M,"!A<R!L979E;"UT<FEG9V5R960*04-023H@4$-)($EN=&5R<G5P="`P,#`P
M.C`P.C$Q+C);1%T@+3X@3&EN:R!;3$Y+1%T@+3X@1U-)(#$P("AL979E;"P@
M;&]W*2`M/B!)4E$@,3`*=6AC:5]H8V0@,#`P,#HP,#HQ,2XR.B!52$-)($AO
M<W0@0V]N=')O;&QE<@IU:&-I7VAC9"`P,#`P.C`P.C$Q+C(Z(&YE=R!54T(@
M8G5S(')E9VES=&5R960L(&%S<VEG;F5D(&)U<R!N=6UB97(@,0IU:&-I7VAC
M9"`P,#`P.C`P.C$Q+C(Z(&ER<2`Q,"P@:6\@8F%S92`P>#`P,#!E-#`P"G5S
M8B!U<V(Q.B!C;VYF:6=U<F%T:6]N(",Q(&-H;W-E;B!F<F]M(#$@8VAO:6-E
M"FAU8B`Q+3`Z,2XP.B!54T(@:'5B(&9O=6YD"FAU8B`Q+3`Z,2XP.B`R('!O
M<G1S(&1E=&5C=&5D"D%#4$DZ(%!#22!);G1E<G)U<'0@,#`P,#HP,#HQ,2XS
M6T1=("T^($QI;FL@6TQ.2T1=("T^($=322`Q,"`H;&5V96PL(&QO=RD@+3X@
M25)1(#$P"G5H8VE?:&-D(#`P,#`Z,#`Z,3$N,SH@54A#22!(;W-T($-O;G1R
M;VQL97(*=6AC:5]H8V0@,#`P,#HP,#HQ,2XS.B!N97<@55-"(&)U<R!R96=I
M<W1E<F5D+"!A<W-I9VYE9"!B=7,@;G5M8F5R(#(*=6AC:5]H8V0@,#`P,#HP
M,#HQ,2XS.B!I<G$@,3`L(&EO(&)A<V4@,'@P,#`P93@P,`IU<V(@=7-B,CH@
M8V]N9FEG=7)A=&EO;B`C,2!C:&]S96X@9G)O;2`Q(&-H;VEC90IH=6(@,BTP
M.C$N,#H@55-"(&AU8B!F;W5N9`IH=6(@,BTP.C$N,#H@,B!P;W)T<R!D971E
M8W1E9`I397)I86PZ(#@R-3`O,38U-3`@9')I=F5R("12979I<VEO;CH@,2XY
M,"`D(#(@<&]R=',L($E242!S:&%R:6YG(&1I<V%B;&5D"G-E<FEA;#@R-3`Z
M('1T>5,P(&%T($DO3R`P>#-F."`H:7)Q(#T@-"D@:7,@82`Q-C4U,$$*<V5R
M:6%L.#(U,#H@='1Y4S$@870@22]/(#!X,F8X("AI<G$@/2`S*2!I<R!A(#$V
M-34P00HP,#HP.#H@='1Y4S`@870@22]/(#!X,V8X("AI<G$@/2`T*2!I<R!A
M(#$V-34P00HP,#HP.3H@='1Y4S$@870@22]/(#!X,F8X("AI<G$@/2`S*2!I
M<R!A(#$V-34P00IS86$W,30V.B!R96=I<W1E<B!E>'1E;G-I;VX@)V)U9&=E
M=%]C:2!D=F(G+@I!0U!).B!00TD@26YT97)R=7!T(#`P,#`Z,#`Z,&,N,%M!
M72`M/B!,:6YK(%M,3DM!72`M/B!'4TD@,3$@*&QE=F5L+"!L;W<I("T^($E2
M42`Q,0IS86$W,30V.B!F;W5N9"!S86$W,30V($`@;65M(&0Q.&%A,#`P("AR
M979I<VEO;B`Q+"!I<G$@,3$I("@P>#$S8S(L,'@Q,#$Q*2X*1%9".B!R96=I
M<W1E<FEN9R!N97<@861A<'1E<B`H5%0M0G5D9V5T+U=I;E16+4Y/5D$M5`D@
M4$-)*2X*8W@R,S@X>"!D=F(@9')I=F5R('9E<G-I;VX@,"XP+C4@;&]A9&5D
M"F-X,C,X.'@@=C1L,B!D<FEV97(@=F5R<VEO;B`P+C`N-2!L;V%D960*861A
M<'1E<B!H87,@34%#(&%D9'(@/2`P,#ID,#HU8SHR,CHQ93IF,@II;G!U=#H@
M0G5D9V5T+4-)(&1V8B!I<B!R96-E:79E<B!S86$W,30V("@P*2!A<R`O8VQA
M<W,O:6YP=70O:6YP=70S"D160CH@<F5G:7-T97)I;F<@9G)O;G1E;F0@,"`H
M4&AI;&EP<R!41$$Q,#`T-4@@1%9"+50I+BXN"D-/4D4@8W@X.%LP73H@<W5B
M<WES=&5M.B`P,#<P.CDP,#(L(&)O87)D.B!(875P<&%U9V4@3F]V82U4($16
M0BU4(%MC87)D/3$X+&%U=&]D971E8W1E9%T*5%8@='5N97(@-"!A="`P>#%F
M92P@4F%D:6\@='5N97(@+3$@870@,'@Q9F4*=7-B(#$M,3H@;F5W(&QO=R!S
M<&5E9"!54T(@9&5V:6-E('5S:6YG('5H8VE?:&-D(&%N9"!A9&1R97-S(#(*
M='9E97!R;VT@-BTP,#4P.B!(875P<&%U9V4@;6]D96P@.3`P,#(L(')E=B!#
M,3<V+"!S97)I86PC(#0P-C8X,@IT=F5E<')O;2`V+3`P-3`Z($U!0R!A9&1R
M97-S(&ES(#`P+3!$+49%+3`V+3,T+3E!"G1V965P<F]M(#8M,#`U,#H@='5N
M97(@;6]D96P@:7,@5&AO;7!S;VX@1%14-S4Y,B`H:61X(#<V+"!T>7!E(#0I
M"G1V965P<F]M(#8M,#`U,#H@5%8@<W1A;F1A<F1S($%44T,O1%9"($1I9VET
M86P@*&5E<')O;2`P>#@P*0IT=F5E<')O;2`V+3`P-3`Z(&%U9&EO('!R;V-E
M<W-O<B!I<R!.;VYE("AI9'@@,"D*='9E97!R;VT@-BTP,#4P.B!D96-O9&5R
M('!R;V-E<W-O<B!I<R!#6#@X,B`H:61X(#(U*0IT=F5E<')O;2`V+3`P-3`Z
M(&AA<R!N;R!R861I;RP@:&%S($E2(')E;6]T90IC>#@X6S!=.B!H875P<&%U
M9V4@965P<F]M.B!M;V1E;#TY,#`P,@II;G!U=#H@8W@X."!)4B`H2&%U<'!A
M=6=E($YO=F$M5"!$5D(M5"!A<R`O8VQA<W,O:6YP=70O:6YP=70T"D%#4$DZ
M(%!#22!);G1E<G)U<'0@3&EN:R!;3$Y+0ET@96YA8FQE9"!A="!)4E$@,3`*
M04-023H@4$-)($EN=&5R<G5P="`P,#`P.C`P.C`Y+C);05T@+3X@3&EN:R!;
M3$Y+0ET@+3X@1U-)(#$P("AL979E;"P@;&]W*2`M/B!)4E$@,3`*8W@X.%LP
M72\R.B!F;W5N9"!A="`P,#`P.C`P.C`Y+C(L(')E=CH@-2P@:7)Q.B`Q,"P@
M;&%T96YC>3H@,S(L(&UM:6\Z(#!X93<P,#`P,#`*8W@X.%LP72\R.B!C>#(S
M.#AX(&)A<V5D(&1V8B!C87)D"D160CH@<F5G:7-T97)I;F<@;F5W(&%D87!T
M97(@*&-X.#A;,%TI+@I$5D(Z(')E9VES=&5R:6YG(&9R;VYT96YD(#$@*$-O
M;F5X86YT($-8,C(W,#(@1%9"+50I+BXN"D%#4$DZ(%!#22!);G1E<G)U<'0@
M,#`P,#HP,#HP.2XP6T%=("T^($QI;FL@6TQ.2T)=("T^($=322`Q,"`H;&5V
M96PL(&QO=RD@+3X@25)1(#$P"F-X.#A;,%TO,#H@9F]U;F0@870@,#`P,#HP
M,#HP.2XP+"!R978Z(#4L(&ER<3H@,3`L(&QA=&5N8WDZ(#,R+"!M;6EO.B`P
M>&4V,#`P,#`P"F-X.#A;,%TO,#H@<F5G:7-T97)E9"!D979I8V4@=FED96\P
M(%MV-&PR70IC>#@X6S!=+S`Z(')E9VES=&5R960@9&5V:6-E('9B:3`*<V5T
M7V-O;G1R;VP@:60],'@Y.#`Y,#`@<F5G/3!X,S$P,3$P('9A;#TP>#`P("AM
M87-K(#!X9F8I"G-E=%]C;VYT<F]L(&ED/3!X.3@P.3`Q(')E9STP>#,Q,#$Q
M,"!V86P],'@S9C`P("AM87-K(#!X9F8P,"D*<V5T7V-O;G1R;VP@:60],'@Y
M.#`Y,#,@<F5G/3!X,S$P,3$X('9A;#TP>#`P("AM87-K(#!X9F8I"G-E=%]C
M;VYT<F]L(&ED/3!X.3@P.3`R(')E9STP>#,Q,#$Q-"!V86P],'@U83=F("AM
M87-K(#!X9F9F9BD*<V5T7V-O;G1R;VP@:60],'@Y.#`Y,#D@<F5G/3!X,S(P
M-3DT('9A;#TP>#0P("AM87-K(#!X-#`I(%MS:&%D;W=E9%T*<V5T7V-O;G1R
M;VP@:60],'@Y.#`Y,#4@<F5G/3!X,S(P-3DT('9A;#TP>#(P("AM87-K(#!X
M,V8I(%MS:&%D;W=E9%T*<V5T7V-O;G1R;VP@:60],'@Y.#`Y,#8@<F5G/3!X
M,S(P-3DX('9A;#TP>#0P("AM87-K(#!X-V8I(%MS:&%D;W=E9%T*04-023H@
M4$-)($EN=&5R<G5P="`P,#`P.C`P.C$Q+C5;0UT@+3X@3&EN:R!;3$Y+0UT@
M+3X@1U-)(#$Q("AL979E;"P@;&]W*2`M/B!)4E$@,3$*4$-).B!3971T:6YG
M(&QA=&5N8WD@=&EM97(@;V8@9&5V:6-E(#`P,#`Z,#`Z,3$N-2!T;R`V-`IU
M<V(@,2TQ.B!C;VYF:6=U<F%T:6]N(",Q(&-H;W-E;B!F<F]M(#$@8VAO:6-E
M"F-X,C,X.'@@8FQA8VMB:7)D(&1R:79E<B!V97)S:6]N(#`N,"XU(&QO861E
M9`I!0U!).B!00TD@26YT97)R=7!T(#`P,#`Z,#`Z,#@N,%M!72`M/B!,:6YK
M(%M,3DM!72`M/B!'4TD@,3$@*&QE=F5L+"!L;W<I("T^($E242`Q,0II;G!U
M=#H@5VER96QE<W,@36]U<V4@5VER96QE<W,@36]U<V4@87,@+V-L87-S+VEN
M<'5T+VEN<'5T-0II;G!U=#H@55-"($A)1"!V,2XQ,"!-;W5S92!;5VER96QE
M<W,@36]U<V4@5VER96QE<W,@36]U<V5=(&]N('5S8BTP,#`P.C`P.C$Q+C(M
M,0IU<V)C;W)E.B!R96=I<W1E<F5D(&YE=R!D<FEV97(@=7-B:&ED"F1R:79E
M<G,O=7-B+VEN<'5T+VAI9"UC;W)E+F,Z('8R+C8Z55-"($A)1"!C;W)E(&1R
M:79E<@I!9&1I;F<@,3`P-#`U,FL@<W=A<"!O;B`O9&5V+VAD83,N("!0<FEO
M<FET>3HM,2!E>'1E;G1S.C$@86-R;W-S.C$P,#0P-3)K"E-#4TD@<W5B<WES
M=&5M(&EN:71I86QI>F5D"D%#4$DZ(%!#22!);G1E<G)U<'0@,#`P,#HP,#HP
M8BXP6T%=("T^($QI;FL@6TQ.2T1=("T^($=322`Q,"`H;&5V96PL(&QO=RD@
M+3X@25)1(#$P"G-C<VDP(#H@061V86Y3>7,@4T-322`S+C-+.B!00TD@56QT
M<F$M5VED93H@4$-)345-(#!X1#`X,4,P,#`M,'A$,#@Q0S`S1BP@25)1(#!X
M00IE=&@P.B!L:6YK('5P+"`Q,#!-8G!S+"!F=6QL+61U<&QE>"P@;'!A(#!X
M-#5%,0I.1E-$.B!5<VEN9R`O=F%R+VQI8B]N9G,O=C1R96-O=F5R>2!A<R!T
M:&4@3D93=C0@<W1A=&4@<F5C;W9E<GD@9&ER96-T;W)Y"DY&4T0Z('-T87)T
M:6YG(#DP+7-E8V]N9"!G<F%C92!P97)I;V0*=&1A,3`P-'@Z(&9O=6YD(&9I
M<FUW87)E(')E=FES:6]N(#`@+2T@:6YV86QI9`IT9&$Q,#`T>#H@=V%I=&EN
M9R!F;W(@9FER;7=A<F4@=7!L;V%D("AD=F(M9F4M=&1A,3`P-#4N9G<I+BXN
M"G1D83$P,#1X.B!F:7)M=V%R92!U<&QO860@8V]M<&QE=&4*=&1A,3`P-'@Z
M(&9O=6YD(&9I<FUW87)E(')E=FES:6]N(#)C("TM(&]K"F%G<&=A<G0Z($9O
M=6YD(&%N($%'4"`R+C`@8V]M<&QI86YT(&1E=FEC92!A="`P,#`P.C`P.C`P
M+C`N"F%G<&=A<G0Z(%!U='1I;F<@04=0(%8R(&1E=FEC92!A="`P,#`P.C`P
M.C`P+C`@:6YT;R`T>"!M;V1E"F%G<&=A<G0Z(%!U='1I;F<@04=0(%8R(&1E
M=FEC92!A="`P,#`P.C`Q.C`P+C`@:6YT;R`T>"!M;V1E"EMD<FU=($QO861I
2;F<@4C(P,"!-:6-R;V-O9&4*
`
end

begin 644 lspci,fff
M,#`P,#HP,#HP,"XP($AO<W0@8G)I9&=E.B!624$@5&5C:&YO;&]G:65S+"!)
M;F,N(%94.#,V-B]!+S<@6T%P;VQL;R!+5#(V-B]!+S,S,UT*,#`P,#HP,#HP
M,2XP(%!#22!B<FED9V4Z(%9)02!496-H;F]L;V=I97,L($EN8RX@5E0X,S8V
M+T$O-R!;07!O;&QO($M4,C8V+T$O,S,S($%'4%T*,#`P,#HP,#HP."XP($UU
M;'1I;65D:6$@875D:6\@8V]N=')O;&QE<CH@0W)E871I=F4@3&%B<R!30B!,
M:79E(2!%354Q,&LQ("AR978@,&$I"C`P,#`Z,#`Z,#@N,2!);G!U="!D979I
M8V4@8V]N=')O;&QE<CH@0W)E871I=F4@3&%B<R!30B!,:79E(2!-241)+T=A
M;64@4&]R="`H<F5V(#!A*0HP,#`P.C`P.C`Y+C`@375L=&EM961I82!V:61E
M;R!C;VYT<F]L;&5R.B!#;VYE>&%N="!#6#(S.#@P+S$O,B\S(%!#22!6:61E
M;R!A;F0@075D:6\@1&5C;V1E<B`H<F5V(#`U*0HP,#`P.C`P.C`Y+C(@375L
M=&EM961I82!C;VYT<F]L;&5R.B!#;VYE>&%N="!#6#(S.#@P+S$O,B\S(%!#
M22!6:61E;R!A;F0@075D:6\@1&5C;V1E<B!;35!%1R!0;W)T72`H<F5V(#`U
M*0HP,#`P.C`P.C`Y+C0@375L=&EM961I82!C;VYT<F]L;&5R.B!#;VYE>&%N
M="!#6#(S.#@P+S$O,B\S(%!#22!6:61E;R!A;F0@075D:6\@1&5C;V1E<B!;
M25(@4&]R=%T@*')E=B`P-2D*,#`P,#HP,#HP82XP($5T:&5R;F5T(&-O;G1R
M;VQL97(Z(%)E86QT96L@4V5M:6-O;F1U8W1O<B!#;RXL($QT9"X@4E1,+3@Q
M,SDO.#$S.4,O.#$S.4,K("AR978@,3`I"C`P,#`Z,#`Z,&(N,"!30U-)('-T
M;W)A9V4@8V]N=')O;&QE<CH@061V86YC960@4WES=&5M(%!R;V1U8W1S+"!)
M;F,@04)0.30P+557"C`P,#`Z,#`Z,&,N,"!-=6QT:6UE9&EA(&-O;G1R;VQL
M97(Z(%!H:6QI<',@4V5M:6-O;F1U8W1O<G,@4T%!-S$T-B`H<F5V(#`Q*0HP
M,#`P.C`P.C$Q+C`@25-!(&)R:61G93H@5DE!(%1E8VAN;VQO9VEE<RP@26YC
M+B!65#@R,S-!($E302!"<FED9V4*,#`P,#HP,#HQ,2XQ($E$12!I;G1E<F9A
M8V4Z(%9)02!496-H;F]L;V=I97,L($EN8RX@5E0X,D,U.#9!+T(O5E0X,D,V
M.#8O02]"+U94.#(S>"]!+T,@4$E00R!"=7,@36%S=&5R($E$12`H<F5V(#`V
M*0HP,#`P.C`P.C$Q+C(@55-"($-O;G1R;VQL97(Z(%9)02!496-H;F]L;V=I
M97,L($EN8RX@5E0X,GAX>'AX(%5(0TD@55-"(#$N,2!#;VYT<F]L;&5R("AR
M978@,C,I"C`P,#`Z,#`Z,3$N,R!54T(@0V]N=')O;&QE<CH@5DE!(%1E8VAN
M;VQO9VEE<RP@26YC+B!65#@R>'AX>'@@54A#22!54T(@,2XQ($-O;G1R;VQL
M97(@*')E=B`R,RD*,#`P,#HP,#HQ,2XU($UU;'1I;65D:6$@875D:6\@8V]N
M=')O;&QE<CH@5DE!(%1E8VAN;VQO9VEE<RP@26YC+B!65#@R,S,O02\X,C,U
M+S@R,S<@04,Y-R!!=61I;R!#;VYT<F]L;&5R("AR978@-#`I"C`P,#`Z,#$Z
M,#`N,"!61T$@8V]M<&%T:6)L92!C;VYT<F]L;&5R.B!!5$D@5&5C:&YO;&]G
M:65S($EN8R!25C(X,"!;4F%D96]N(#DR,#`@4T5=("AR978@,#$I"C`P,#`Z
M,#$Z,#`N,2!$:7-P;&%Y(&-O;G1R;VQL97(Z($%422!496-H;F]L;V=I97,@
M26YC(%)6,C@P(%M2861E;VX@.3(P,"!315T@*%-E8V]N9&%R>2D@*')E=B`P
#,2D*
`
end

begin 644 lsmod,fff
M36]D=6QE("`@("`@("`@("`@("`@("`@4VEZ92`@57-E9"!B>0IE97!R;VT@
M("`@("`@("`@("`@("`@("`U-3@T("`P(`IS<E]M;V0@("`@("`@("`@("`@
M("`@(#$T,C0T("`P(`IA9'9A;G-Y<R`@("`@("`@("`@("`@(#<U.30P("`P
M(`IS8W-I7VUO9"`@("`@("`@("`@("`@,3$Q,C0T("`R('-R7VUO9"QA9'9A
M;G-Y<PIU<V)H:60@("`@("`@("`@("`@("`@(#,P.3$V("`P(`IS;F1?96UU
M,3!K,5]S>6YT:"`@("`@("`V-3(X("`P(`IS;F1?96UU>%]S>6YT:"`@("`@
M("`@(#,R,C4V("`Q('-N9%]E;74Q,&LQ7W-Y;G1H"G-N9%]S97%?=FER;6ED
M:2`@("`@("`@(#4P-38@(#$@<VYD7V5M=7A?<WEN=&@*<VYD7W-E<5]M:61I
M7V5M=6P@("`@("`@-3DU,B`@,2!S;F1?96UU>%]S>6YT:`IS;F1?<V5Q7V]S
M<R`@("`@("`@("`@(#(Y.3(T("`P(`IS;F1?<V5Q7VUI9&D@("`@("`@("`@
M("`V-38P("`P(`IS;F1?<V5Q7VUI9&E?979E;G0@("`@("`V,#$V("`S('-N
M9%]S97%?=FER;6ED:2QS;F1?<V5Q7V]S<RQS;F1?<V5Q7VUI9&D*<VYD7W-E
M<2`@("`@("`@("`@("`@("`T-3,X."`@."!S;F1?96UU>%]S>6YT:"QS;F1?
M<V5Q7W9I<FUI9&DL<VYD7W-E<5]M:61I7V5M=6PL<VYD7W-E<5]O<W,L<VYD
M7W-E<5]M:61I+'-N9%]S97%?;6ED:5]E=F5N=`IC>#@X7V)L86-K8FER9"`@
M("`@("`@(#$W,#4R("`P(`IS;F1?96UU,3!K,2`@("`@("`@("`@,3$T-S(T
M("`Q('-N9%]E;74Q,&LQ7W-Y;G1H"G-N9%]V:6$X,GAX("`@("`@("`@("`@
M,C(T,C`@(#`@"G-N9%]A8SDW7V-O9&5C("`@("`@("`@.3(S,C`@(#(@<VYD
M7V5M=3$P:S$L<VYD7W9I83@R>'@*<VYD7V%C.3=?8G5S("`@("`@("`@("`@
M,3<Y,B`@,2!S;F1?86,Y-U]C;V1E8PIC>#@X,#`@("`@("`@("`@("`@("`@
M(#(W,S0P("`Q(&-X.#A?8FQA8VMB:7)D"F-X.#A?9'9B("`@("`@("`@("`@
M("`@(#DX-C`@(#(U(`IC>#@X,#(@("`@("`@("`@("`@("`@("`Y,#(X("`R
M(&-X.#A?8FQA8VMB:7)D+&-X.#A?9'9B"F-X.#AX>"`@("`@("`@("`@("`@
M("`@-3<Y-38@(#0@8W@X.%]B;&%C:V)I<F0L8W@X.#`P+&-X.#A?9'9B+&-X
M.#@P,@IC>#@X7W9P,S`U-%]I,F,@("`@("`@("`S-#4V("`Q(&-X.#A?9'9B
M"G-N9%]P8VU?;W-S("`@("`@("`@("`@-#8W-3(@(#`@"G-N9%]M:7AE<E]O
M<W,@("`@("`@("`@,34T.#@@(#$@<VYD7W!C;5]O<W,*:7)?8V]M;6]N("`@
M("`@("`@("`@("`@.#`V."`@,2!C>#@X>'@*;70S-3(@("`@("`@("`@("`@
M("`@("`@-3@R."`@,2!C>#@X7V1V8@IB=61G971?8VD@("`@("`@("`@("`@
M(#$R,S4R("`P(`IT9&$Q,#`T>"`@("`@("`@("`@("`@(#$T-S@X("`Q(&)U
M9&=E=%]C:0IB=61G971?8V]R92`@("`@("`@("`@("`V.3$V("`Q(&)U9&=E
M=%]C:0IS86$W,30V("`@("`@("`@("`@("`@(#$T,C@P("`R(&)U9&=E=%]C
M:2QB=61G971?8V]R90IT='!C:5]E97!R;VT@("`@("`@("`@("`Q.3(P("`Q
M(&)U9&=E=%]C;W)E"C@R-3!?<&YP("`@("`@("`@("`@("`@(#@R-38@(#`@
M"C@R-3`@("`@("`@("`@("`@("`@("`@,3@V-38@(#$@.#(U,%]P;G`*<V5R
M:6%L7V-O<F4@("`@("`@("`@("`Q-C4Q,B`@,2`X,C4P"G1V965P<F]M("`@
M("`@("`@("`@("`@,3,P-S(@(#$@8W@X.'AX"F-O;7!A=%]I;V-T;#,R("`@
M("`@("`@(#$P,C0@(#$@8W@X.#`P"G8T;#%?8V]M<&%T("`@("`@("`@("`@
M,3,S,38@(#$@8W@X.#`P"G8T;#)?8V]M;6]N("`@("`@("`@("`@(#8V-38@
M(#(@8W@X.%]B;&%C:V)I<F0L8W@X.#`P"G-N9%]U=&EL7VUE;2`@("`@("`@
M("`@(#,S.3(@(#(@<VYD7V5M=7A?<WEN=&@L<VYD7V5M=3$P:S$*<W1V,#(Y
M.2`@("`@("`@("`@("`@("`@.34T-"`@,2!B=61G971?8VD*;W(U,3$S,B`@
M("`@("`@("`@("`@("`@.3`R."`@,2!C>#@X7V1V8@IV:61E;U]B=69?9'9B
M("`@("`@("`@("`T-#@T("`Q(&-X.#A?9'9B"F1V8E]C;W)E("`@("`@("`@
M("`@("`@-S0X.#`@(#0@8G5D9V5T7V-I+&)U9&=E=%]C;W)E+'-T=C`R.3DL
M=FED96]?8G5F7V1V8@IV:61E;U]B=68@("`@("`@("`@("`@(#$W,C(P("`V
M(&-X.#A?8FQA8VMB:7)D+&-X.#@P,"QC>#@X7V1V8BQC>#@X,#(L8W@X.'AX
M+'9I9&5O7V)U9E]D=F(*;GAT,C`P>"`@("`@("`@("`@("`@("`Q,C8W-B`@
M,2!C>#@X7V1V8@IF:7)M=V%R95]C;&%S<R`@("`@("`@("`W-S0T("`U(&-X
M.#A?8FQA8VMB:7)D+&)U9&=E=%]C:2QT9&$Q,#`T>"QO<C4Q,3,R+&YX=#(P
M,'@*<VYD7W!C;2`@("`@("`@("`@("`@("`W-3,S-B`@-"!S;F1?96UU,3!K
M,2QS;F1?=FEA.#)X>"QS;F1?86,Y-U]C;V1E8RQS;F1?<&-M7V]S<PIS;F1?
M=&EM97(@("`@("`@("`@("`@(#$X.#(P("`S('-N9%]S97$L<VYD7V5M=3$P
M:S$L<VYD7W!C;0IS;F1?<&%G95]A;&QO8R`@("`@("`@("`X,S(X("`S('-N
M9%]E;74Q,&LQ+'-N9%]V:6$X,GAX+'-N9%]P8VT*<VYD7VUP=30P,5]U87)T
M("`@("`@("`@-38Y-B`@,2!S;F1?=FEA.#)X>`IB=&-X7W)I<V,@("`@("`@
M("`@("`@("`S.#0X("`S(&-X.#@P,"QC>#@X,#(L8W@X.'AX"G-N9%]R87=M
M:61I("`@("`@("`@("`@,3DV,38@(#0@<VYD7W-E<5]V:7)M:61I+'-N9%]S
M97%?;6ED:2QS;F1?96UU,3!K,2QS;F1?;7!U-#`Q7W5A<G0*<VYD7W-E<5]D
M979I8V4@("`@("`@("`@-C@V,"`@-R!S;F1?96UU,3!K,5]S>6YT:"QS;F1?
M96UU>%]S>6YT:"QS;F1?<V5Q7V]S<RQS;F1?<V5Q7VUI9&DL<VYD7W-E<2QS
M;F1?96UU,3!K,2QS;F1?<F%W;6ED:0IS;F1?:'=D97`@("`@("`@("`@("`@
M("`W,#0T("`R('-N9%]E;75X7W-Y;G1H+'-N9%]E;74Q,&LQ"G-T=C`R.3<@
M("`@("`@("`@("`@("`@(#8U.3(@(#$@8G5D9V5T7V-I"F-X,C0Q,C,@("`@
M("`@("`@("`@("`@(#<X-S8@(#$@8W@X.%]D=F(*;&=D=#,S,'@@("`@("`@
M("`@("`@("`@-S(V,"`@,2!C>#@X7V1V8@IC>#(R-S`R("`@("`@("`@("`@
M("`@("`U-S`P("`Q(&-X.#A?9'9B"F1V8E]P;&P@("`@("`@("`@("`@("`@
M(#DT,3(@(#0@8W@X.%]D=F(L;W(U,3$S,BQN>'0R,#!X+&-X,C(W,#(*=6AC
M:5]H8V0@("`@("`@("`@("`@("`R-SDR,"`@,"`*=FED96]D978@("`@("`@
M("`@("`@("`@-S`T,"`@,R!C>#@X7V)L86-K8FER9"QC>#@X,#`L8W@X.'AX
!"B`@
`
end

begin 644 config.gz,f89
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
.)3&!Y?G_F--!!<Z0``#P
`
end

^ permalink raw reply

* Get ahead in life! rumrf
From: Tameka Swan @ 2006-04-29 20:35 UTC (permalink / raw)
  To: sparclinux
In-Reply-To: <717301c668e2$71aefea4$220ca16e@2xshzc1>

Genuine College Degree in 2 Weeks! 

(831) 603-4625  Call Now and leave us message

Have you ever thought that the only thing stopping you from a
a great j0b and better pay was a few letters behind your name? 

Well now you can get them! 

BA BSc MA MSc MBA PHD 

Within 2 weeks!
No Study Required!
100% Verifiable 

(831) 603-4625  Call Now and leave us message

These are real, genuine degrees that include Bachelors, Masters 
and Doctorate degrees. They are verifiable and student records and
transcripts are also available. This little known s.ecret has been
kept quiet for years. The opp0rtunity exists due to a lega.l loophole
allowing some established colleges to award degrees at their discretion.


With all of the attention that this news has been generating, I wouldn't 
be surprised to see this loophole closed very soon. 

Call n0w for more information today, you'll thank me later... 
(831) 603-4625  Call Now and leave us message

^ permalink raw reply

* Re: Two gitweb feature requests
From: David Woodhouse @ 2006-04-29 21:38 UTC (permalink / raw)
  To: Ben Clifford; +Cc: Kay Sievers, git
In-Reply-To: <Pine.LNX.4.64.0604272250420.4963@mundungus.clifford.ac>

On Thu, 2006-04-27 at 22:54 +0000, Ben Clifford wrote:
> HTML has a <link> element which can be used to indicate alternate forms of 
> a page. Gitweb already generates one already to point people at the RSS 
> feeds.
> 
> Kinda messy to make all the git tools learn how to read HTML, though... 

They wouldn't necessarily need to. git-clone and git-pull attempt to use
URLs which wouldn't be used in normal gitweb usage -- for example, any
attempt to fetch http://git.infradead.org/?p=mtd-2.6.git/HEAD or
http://git.infradead.org/?p=mtd-2.6.git/refs/heads can be assumed to be
an attempt to clone or pull with git. So gitweb could be modified to
detect those URLs and give a simple textual redirect which the git tools
could understand.

-- 
dwmw2

^ permalink raw reply

* SGI Hardware in the DC area
From: Nick B. @ 2006-04-29 21:36 UTC (permalink / raw)
  To: linux-mips

I've got an Octane, an O2, an Indy and a pair of I2s I'm willing to donate to
a mips-linux developer in the DC area (or if you can convince me to ship it we
might be able to work something out).  Email me if you're intrested.
	Nick 

^ permalink raw reply

* [Qemu-devel] [PATCH] VNC display support for QEMU
From: Anthony Liguori @ 2006-04-29 21:34 UTC (permalink / raw)
  To: qemu-devel

[-- Attachment #1: Type: text/plain, Size: 1666 bytes --]

Hi,

The attach patch adds VNC display support for QEMU.  It does not use 
libvncserver but was rather written from scratch.  libvncserver is a 
really neat project and I've used it in a number of other projects but I 
think QEMU really requires a custom implementation.

First, to enable vnc support, you use the -vnc option like:

qemu -vnc 1

Where 1 is the first display (port 5901).  This syntax may change in the 
near future to support binding to a particular interface.  It's very 
useful to use an absolute mouse with VNC as the relative support is 
quite poor.  It may be useful to adapt the libvncserver patch's 
calibration code here but I've not attempted to do that yet.

This patch is still experimental.  I've tested it with RealVNC and 
TightVNC under a variety of depths but I won't be suprised if there are 
still problems.  I only implement Raw, CopyRect, and Hextile encodings 
too.  Any sort of palette color mode or pixel format that QEMU doesn't 
support will not work either.

One thing you may notice is that RealVNC has some issues with being 
disconnected.  This is because it likes to switch from 8bit to 32bit 
depths automatically at startup.  Unfortunately, there is a race 
condition in the VNC protocol and since this implementation is 
asynchronous, we seem to be much more prone to exposing this.

A short near-term TODO list is:

1) More testing
2) Support switching between monitor/serial
3) Support a better encoding (like TightEncoding or ZRLE)
4) Support a vnc password (and perhaps stuff like TLS)

Any feedback is greatly appreciated (especially with how it works with 
clients I've not tested).

Regards,

Anthony Liguori

[-- Attachment #2: qemu-vnc.diff --]
[-- Type: text/plain, Size: 43361 bytes --]

diff -urN -x '*.[di]' a.hg/hw/cirrus_vga.c vnc.hg/hw/cirrus_vga.c
--- a.hg/hw/cirrus_vga.c	2006-04-29 16:01:36.000000000 -0500
+++ vnc.hg/hw/cirrus_vga.c	2006-04-29 16:18:46.000000000 -0500
@@ -644,15 +644,90 @@
                                             (s->cirrus_blt_srcaddr & ~7));
 }
 
-static int cirrus_bitblt_videotovideo_copy(CirrusVGAState * s)
+static void cirrus_do_copy(CirrusVGAState *s, int dst, int src, int w, int h)
 {
+    int sx, sy;
+    int dx, dy;
+    int width, height;
+    int depth;
+    int notify = 0;
+
+    depth = s->get_bpp((VGAState *)s) / 8;
+    s->get_resolution((VGAState *)s, &width, &height);
+
+    /* extra x, y */
+    sx = (src % (width * depth)) / depth;
+    sy = (src / (width * depth));
+    dx = (dst % (width *depth)) / depth;
+    dy = (dst / (width * depth));
+
+    /* normalize width */
+    w /= depth;
+
+    /* if we're doing a backward copy, we have to adjust
+       our x/y to be the upper left corner (instead of the lower
+       right corner) */
+    if (s->cirrus_blt_dstpitch < 0) {
+	sx -= (s->cirrus_blt_width / depth) - 1;
+	dx -= (s->cirrus_blt_width / depth) - 1;
+	sy -= s->cirrus_blt_height - 1;
+	dy -= s->cirrus_blt_height - 1;
+    }
+
+    /* are we in the visible portion of memory? */
+    if (sx >= 0 && sy >= 0 && dx >= 0 && dy >= 0 &&
+	(sx + w) <= width && (sy + h) <= height &&
+	(dx + w) <= width && (dy + h) <= height) {
+	notify = 1;
+    }
+
+    /* make to sure only copy if it's a plain copy ROP */
+    if (*s->cirrus_rop != cirrus_bitblt_rop_fwd_src &&
+	*s->cirrus_rop != cirrus_bitblt_rop_bkwd_src)
+	notify = 0;
+
+    /* we have to flush all pending changes so that the copy
+       is generated at the appropriate moment in time */
+    if (notify)
+	vga_hw_update();
+
     (*s->cirrus_rop) (s, s->vram_ptr + s->cirrus_blt_dstaddr,
 		      s->vram_ptr + s->cirrus_blt_srcaddr,
 		      s->cirrus_blt_dstpitch, s->cirrus_blt_srcpitch,
 		      s->cirrus_blt_width, s->cirrus_blt_height);
-    cirrus_invalidate_region(s, s->cirrus_blt_dstaddr,
-			     s->cirrus_blt_dstpitch, s->cirrus_blt_width,
-			     s->cirrus_blt_height);
+
+    if (notify)
+	s->ds->dpy_copy(s->ds,
+			sx, sy, dx, dy,
+			s->cirrus_blt_width / depth,
+			s->cirrus_blt_height);
+
+    /* we don't have to notify the display that this portion has
+       changed since dpy_copy implies this */
+
+    if (!notify)
+	cirrus_invalidate_region(s, s->cirrus_blt_dstaddr,
+				 s->cirrus_blt_dstpitch, s->cirrus_blt_width,
+				 s->cirrus_blt_height);
+}
+
+static int cirrus_bitblt_videotovideo_copy(CirrusVGAState * s)
+{
+    if (s->ds->dpy_copy) {
+	cirrus_do_copy(s, s->cirrus_blt_dstaddr - s->start_addr,
+		       s->cirrus_blt_srcaddr - s->start_addr,
+		       s->cirrus_blt_width, s->cirrus_blt_height);
+    } else {
+	(*s->cirrus_rop) (s, s->vram_ptr + s->cirrus_blt_dstaddr,
+			  s->vram_ptr + s->cirrus_blt_srcaddr,
+			  s->cirrus_blt_dstpitch, s->cirrus_blt_srcpitch,
+			  s->cirrus_blt_width, s->cirrus_blt_height);
+
+	cirrus_invalidate_region(s, s->cirrus_blt_dstaddr,
+				 s->cirrus_blt_dstpitch, s->cirrus_blt_width,
+				 s->cirrus_blt_height);
+    }
+
     return 1;
 }
 
diff -urN -x '*.[di]' a.hg/Makefile.target vnc.hg/Makefile.target
--- a.hg/Makefile.target	2006-04-29 16:01:34.000000000 -0500
+++ vnc.hg/Makefile.target	2006-04-29 16:20:17.000000000 -0500
@@ -357,6 +357,7 @@
 ifdef CONFIG_SDL
 VL_OBJS+=sdl.o
 endif
+VL_OBJS+=vnc.o
 ifdef CONFIG_COCOA
 VL_OBJS+=cocoa.o
 COCOA_LIBS=-F/System/Library/Frameworks -framework Cocoa -framework IOKit
@@ -409,6 +410,9 @@
 sdl.o: sdl.c keymaps.c sdl_keysym.h
 	$(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $<
 
+vnc.o: vnc.c keymaps.c sdl_keysym.h vnchextile.h
+	$(CC) $(CFLAGS) $(DEFINES) -c -o $@ $<
+
 sdlaudio.o: sdlaudio.c
 	$(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $<
 
diff -urN -x '*.[di]' a.hg/qemu-doc.texi vnc.hg/qemu-doc.texi
--- a.hg/qemu-doc.texi	2006-04-29 16:01:38.000000000 -0500
+++ vnc.hg/qemu-doc.texi	2006-04-29 15:55:58.000000000 -0500
@@ -185,6 +185,13 @@
 the console. Therefore, you can still use QEMU to debug a Linux kernel
 with a serial console.
 
+@item -vnc d
+
+Normally, QEMU uses SDL to display the VGA output.  With this option,
+you can have QEMU listen on VNC display d and redirect the VGA display
+over the VNC session.  It is very useful to enable the usb tablet device
+when using this option.
+
 @item -k language
 
 Use keyboard layout @var{language} (for example @code{fr} for
diff -urN -x '*.[di]' a.hg/vl.c vnc.hg/vl.c
--- a.hg/vl.c	2006-04-29 16:01:43.000000000 -0500
+++ vnc.hg/vl.c	2006-04-27 23:44:41.000000000 -0500
@@ -149,6 +149,7 @@
 USBDevice *vm_usb_hub;
 static VLANState *first_vlan;
 int smp_cpus = 1;
+int vnc_display = -1;
 #if defined(TARGET_SPARC)
 #define MAX_CPUS 16
 #elif defined(TARGET_I386)
@@ -4638,6 +4639,7 @@
            "                (default is CL-GD5446 PCI VGA)\n"
 #endif
            "-loadvm file    start right away with a saved state (loadvm in monitor)\n"
+	   "-vnc display    start a VNC server on display\n"
            "\n"
            "During emulation, the following keys are useful:\n"
            "ctrl-alt-f      toggle full screen\n"
@@ -4721,6 +4723,7 @@
     QEMU_OPTION_usb,
     QEMU_OPTION_usbdevice,
     QEMU_OPTION_smp,
+    QEMU_OPTION_vnc,
 };
 
 typedef struct QEMUOption {
@@ -4788,6 +4791,7 @@
     { "win2k-hack", 0, QEMU_OPTION_win2k_hack },
     { "usbdevice", HAS_ARG, QEMU_OPTION_usbdevice },
     { "smp", HAS_ARG, QEMU_OPTION_smp },
+    { "vnc", HAS_ARG, QEMU_OPTION_vnc },
     
     /* temporary options */
     { "usb", 0, QEMU_OPTION_usb },
@@ -5386,6 +5390,13 @@
                     exit(1);
                 }
                 break;
+	    case QEMU_OPTION_vnc:
+		vnc_display = atoi(optarg);
+		if (vnc_display < 0) {
+		    fprintf(stderr, "Invalid VNC display\n");
+		    exit(1);
+		}
+		break;
             }
         }
     }
@@ -5551,6 +5562,8 @@
     /* terminal init */
     if (nographic) {
         dumb_display_init(ds);
+    } if (vnc_display != -1) {
+	vnc_display_init(ds, vnc_display);
     } else {
 #if defined(CONFIG_SDL)
         sdl_display_init(ds, full_screen);
diff -urN -x '*.[di]' a.hg/vl.h vnc.hg/vl.h
--- a.hg/vl.h	2006-04-29 16:01:43.000000000 -0500
+++ vnc.hg/vl.h	2006-04-29 15:17:16.000000000 -0500
@@ -82,6 +82,13 @@
 #define tostring(s)	#s
 #endif
 
+#ifndef MIN
+#define MIN(a, b) (((a) < (b)) ? (a) : (b))
+#endif
+#ifndef MAX
+#define MAX(a, b) (((a) > (b)) ? (a) : (b))
+#endif
+
 /* vl.c */
 uint64_t muldiv64(uint64_t a, uint32_t b, uint32_t c);
 
@@ -672,9 +679,12 @@
     int depth;
     int width;
     int height;
+    void *opaque;
+
     void (*dpy_update)(struct DisplayState *s, int x, int y, int w, int h);
     void (*dpy_resize)(struct DisplayState *s, int w, int h);
     void (*dpy_refresh)(struct DisplayState *s);
+    void (*dpy_copy)(struct DisplayState *s, int src_x, int src_y, int dst_x, int dst_y, int w, int h);
 };
 
 static inline void dpy_update(DisplayState *s, int x, int y, int w, int h)
@@ -703,6 +713,9 @@
 /* cocoa.m */
 void cocoa_display_init(DisplayState *ds, int full_screen);
 
+/* vnc.c */
+void vnc_display_init(DisplayState *ds, int display);
+
 /* ide.c */
 #define MAX_DISKS 4
 
diff -urN -x '*.[di]' a.hg/vnc.c vnc.hg/vnc.c
--- a.hg/vnc.c	1969-12-31 18:00:00.000000000 -0600
+++ vnc.hg/vnc.c	2006-04-29 16:15:02.000000000 -0500
@@ -0,0 +1,894 @@
+#include "vl.h"
+
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <netinet/tcp.h>
+#include <fcntl.h>
+
+#define VNC_REFRESH_INTERVAL (1000 / 30)
+
+#include "vnc_keysym.h"
+#include "keymaps.c"
+
+typedef struct Buffer
+{
+    size_t capacity;
+    size_t offset;
+    char *buffer;
+} Buffer;
+
+typedef struct VncState VncState;
+
+typedef int VncReadEvent(VncState *vs, char *data, size_t len);
+
+struct VncState
+{
+    QEMUTimer *timer;
+    int lsock;
+    int csock;
+    DisplayState *ds;
+    int need_update;
+    int width;
+    int height;
+    uint64_t dirty_row[768];
+    char *old_data;
+    int depth;
+    int has_resize;
+    int has_hextile;
+    Buffer output;
+    Buffer input;
+    kbd_layout_t *kbd_layout;
+
+    VncReadEvent *read_handler;
+    size_t read_handler_expect;
+};
+
+/* TODO
+   1) Get the queue working for IO.
+   2) there is some weirdness when using the -S option (the screen is grey
+      and not totally invalidated
+   3) resolutions > 1024
+*/
+
+static void vnc_write(VncState *vs, const void *data, size_t len);
+static void vnc_write_u32(VncState *vs, uint32_t value);
+static void vnc_write_s32(VncState *vs, int32_t value);
+static void vnc_write_u16(VncState *vs, uint16_t value);
+static void vnc_write_u8(VncState *vs, uint8_t value);
+static void vnc_flush(VncState *vs);
+static void vnc_update_client(void *opaque);
+static void vnc_client_read(void *opaque);
+
+static void vnc_dpy_update(DisplayState *ds, int x, int y, int w, int h)
+{
+    VncState *vs = ds->opaque;
+    int i;
+
+    h += y;
+
+    for (; y < h; y++)
+	for (i = 0; i < w; i += 16)
+	    vs->dirty_row[y] |= (1ULL << ((x + i) / 16));
+}
+
+static void vnc_framebuffer_update(VncState *vs, int x, int y, int w, int h,
+				   int32_t encoding)
+{
+    vnc_write_u16(vs, x);
+    vnc_write_u16(vs, y);
+    vnc_write_u16(vs, w);
+    vnc_write_u16(vs, h);
+
+    vnc_write_s32(vs, encoding);
+}
+
+static void vnc_dpy_resize(DisplayState *ds, int w, int h)
+{
+    VncState *vs = ds->opaque;
+
+    ds->data = realloc(ds->data, w * h * vs->depth);
+    vs->old_data = realloc(vs->old_data, w * h * vs->depth);
+
+    if (ds->data == NULL || vs->old_data == NULL) {
+	fprintf(stderr, "vnc: memory allocation failed\n");
+	exit(1);
+    }
+
+    ds->depth = vs->depth * 8;
+    ds->width = w;
+    ds->height = h;
+    ds->linesize = w * vs->depth;
+    if (vs->csock != -1 && vs->has_resize) {
+	vnc_write_u8(vs, 0);  /* msg id */
+	vnc_write_u8(vs, 0);
+	vnc_write_u16(vs, 1); /* number of rects */
+	vnc_framebuffer_update(vs, 0, 0, ds->width, ds->height, -223);
+	vnc_flush(vs);
+	vs->width = ds->width;
+	vs->height = ds->height;
+    }
+}
+
+static void send_framebuffer_update_raw(VncState *vs, int x, int y, int w, int h)
+{
+    int i;
+    char *row;
+
+    vnc_framebuffer_update(vs, x, y, w, h, 0);
+
+    row = vs->ds->data + y * vs->ds->linesize + x * vs->depth;
+    for (i = 0; i < h; i++) {
+	vnc_write(vs, row, w * vs->depth);
+	row += vs->ds->linesize;
+    }
+}
+
+static void hextile_enc_cord(uint8_t *ptr, int x, int y, int w, int h)
+{
+    ptr[0] = ((x & 0x0F) << 4) | (y & 0x0F);
+    ptr[1] = (((w - 1) & 0x0F) << 4) | ((h - 1) & 0x0F);
+}
+
+#define BPP 8
+#include "vnchextile.h"
+#undef BPP
+
+#define BPP 16
+#include "vnchextile.h"
+#undef BPP
+
+#define BPP 32
+#include "vnchextile.h"
+#undef BPP
+
+static void send_framebuffer_update_hextile(VncState *vs, int x, int y, int w, int h)
+{
+    int i, j;
+    int has_fg, has_bg;
+    uint32_t last_fg32, last_bg32;
+    uint16_t last_fg16, last_bg16;
+    uint8_t last_fg8, last_bg8;
+
+    vnc_framebuffer_update(vs, x, y, w, h, 5);
+
+    has_fg = has_bg = 0;
+    for (j = y; j < (y + h); j += 16) {
+	for (i = x; i < (x + w); i += 16) {
+	    switch (vs->depth) {
+	    case 1:
+		send_hextile_tile_8(vs, i, j, MIN(16, x + w - i), MIN(16, y + h - j),
+				    &last_bg8, &last_fg8, &has_bg, &has_fg);
+		break;
+	    case 2:
+		send_hextile_tile_16(vs, i, j, MIN(16, x + w - i), MIN(16, y + h - j),
+				     &last_bg16, &last_fg16, &has_bg, &has_fg);
+		break;
+	    case 4:
+		send_hextile_tile_32(vs, i, j, MIN(16, x + w - i), MIN(16, y + h - j),
+				     &last_bg32, &last_fg32, &has_bg, &has_fg);
+		break;
+	    default:
+		break;
+	    }
+	}
+    }
+}
+
+static void send_framebuffer_update(VncState *vs, int x, int y, int w, int h)
+{
+	if (vs->has_hextile)
+	    send_framebuffer_update_hextile(vs, x, y, w, h);
+	else
+	    send_framebuffer_update_raw(vs, x, y, w, h);
+}
+
+static void vnc_copy(DisplayState *ds, int src_x, int src_y, int dst_x, int dst_y, int w, int h)
+{
+    int src, dst;
+    char *src_row;
+    char *dst_row;
+    char *old_row;
+    int y = 0;
+    int pitch = ds->linesize;
+    VncState *vs = ds->opaque;
+
+    vnc_update_client(vs);
+
+    if (dst_y > src_y) {
+	y = h - 1;
+	pitch = -pitch;
+    }
+
+    src = (ds->linesize * (src_y + y) + vs->depth * src_x);
+    dst = (ds->linesize * (dst_y + y) + vs->depth * dst_x);
+
+    src_row = ds->data + src;
+    dst_row = ds->data + dst;
+    old_row = vs->old_data + dst;
+
+    for (y = 0; y < h; y++) {
+	memmove(old_row, src_row, w * vs->depth);
+	memmove(dst_row, src_row, w * vs->depth);
+	src_row += pitch;
+	dst_row += pitch;
+	old_row += pitch;
+    }
+
+    vnc_write_u8(vs, 0);  /* msg id */
+    vnc_write_u8(vs, 0);
+    vnc_write_u16(vs, 1); /* number of rects */
+    vnc_framebuffer_update(vs, dst_x, dst_y, w, h, 1);
+    vnc_write_u16(vs, src_x);
+    vnc_write_u16(vs, src_y);
+    vnc_flush(vs);
+}
+
+static int find_dirty_height(VncState *vs, int y, int last_x, int x)
+{
+    int h;
+
+    for (h = 1; h < (vs->height - y); h++) {
+	int tmp_x;
+	if (!(vs->dirty_row[y + h] & (1ULL << last_x)))
+	    break;
+	for (tmp_x = last_x; tmp_x < x; tmp_x++)
+	    vs->dirty_row[y + h] &= ~(1ULL << tmp_x);
+    }
+
+    return h;
+}
+
+static void vnc_update_client(void *opaque)
+{
+    VncState *vs = opaque;
+
+    if (vs->need_update && vs->csock != -1) {
+	int y;
+	char *row;
+	char *old_row;
+	uint64_t width_mask;
+	int n_rectangles;
+	int saved_offset;
+	int has_dirty = 0;
+
+	width_mask = (1ULL << (vs->width / 16)) - 1;
+
+	if (vs->width == 1024)
+	    width_mask = ~(0ULL);
+
+	/* Walk through the dirty map and eliminate tiles that
+	   really aren't dirty */
+	row = vs->ds->data;
+	old_row = vs->old_data;
+
+	for (y = 0; y < vs->height; y++) {
+	    if (vs->dirty_row[y] & width_mask) {
+		int x;
+		char *ptr, *old_ptr;
+
+		ptr = row;
+		old_ptr = old_row;
+
+		for (x = 0; x < vs->ds->width; x += 16) {
+		    if (memcmp(old_ptr, ptr, 16 * vs->depth) == 0) {
+			vs->dirty_row[y] &= ~(1ULL << (x / 16));
+		    } else {
+			has_dirty = 1;
+			memcpy(old_ptr, ptr, 16 * vs->depth);
+		    }
+
+		    ptr += 16 * vs->depth;
+		    old_ptr += 16 * vs->depth;
+		}
+	    }
+
+	    row += vs->ds->linesize;
+	    old_row += vs->ds->linesize;
+	}
+
+	if (!has_dirty) {
+	    qemu_mod_timer(vs->timer, qemu_get_clock(rt_clock) + VNC_REFRESH_INTERVAL);
+	    return;
+	}
+
+	/* Count rectangles */
+	n_rectangles = 0;
+	vnc_write_u8(vs, 0);  /* msg id */
+	vnc_write_u8(vs, 0);
+	saved_offset = vs->output.offset;
+	vnc_write_u16(vs, 0);
+
+	for (y = 0; y < vs->height; y++) {
+	    int x;
+	    int last_x = -1;
+	    for (x = 0; x < vs->width / 16; x++) {
+		if (vs->dirty_row[y] & (1ULL << x)) {
+		    if (last_x == -1) {
+			last_x = x;
+		    }
+		    vs->dirty_row[y] &= ~(1ULL << x);
+		} else {
+		    if (last_x != -1) {
+			int h = find_dirty_height(vs, y, last_x, x);
+			send_framebuffer_update(vs, last_x * 16, y, (x - last_x) * 16, h);
+			n_rectangles++;
+		    }
+		    last_x = -1;
+		}
+	    }
+	    if (last_x != -1) {
+		int h = find_dirty_height(vs, y, last_x, x);
+		send_framebuffer_update(vs, last_x * 16, y, (x - last_x) * 16, h);
+		n_rectangles++;
+	    }
+	}
+	vs->output.buffer[saved_offset] = (n_rectangles >> 8) & 0xFF;
+	vs->output.buffer[saved_offset + 1] = n_rectangles & 0xFF;
+	vnc_flush(vs);
+
+    }
+    qemu_mod_timer(vs->timer, qemu_get_clock(rt_clock) + VNC_REFRESH_INTERVAL);
+}
+
+static void vnc_timer_init(VncState *vs)
+{
+    if (vs->timer == NULL) {
+	vs->timer = qemu_new_timer(rt_clock, vnc_update_client, vs);
+	qemu_mod_timer(vs->timer, qemu_get_clock(rt_clock));
+    }
+}
+
+static void vnc_dpy_refresh(DisplayState *ds)
+{
+    VncState *vs = ds->opaque;
+    vnc_timer_init(vs);
+    vga_hw_update();
+}
+
+static int vnc_listen_poll(void *opaque)
+{
+    VncState *vs = opaque;
+    if (vs->csock == -1)
+	return 1;
+    return 0;
+}
+
+static void buffer_reserve(Buffer *buffer, size_t len)
+{
+    if ((buffer->capacity - buffer->offset) < len) {
+	buffer->capacity += (len + 1024);
+	buffer->buffer = realloc(buffer->buffer, buffer->capacity);
+	if (buffer->buffer == NULL) {
+	    fprintf(stderr, "vnc: out of memory\n");
+	    exit(1);
+	}
+    }
+}
+
+static int buffer_empty(Buffer *buffer)
+{
+    return buffer->offset == 0;
+}
+
+static char *buffer_end(Buffer *buffer)
+{
+    return buffer->buffer + buffer->offset;
+}
+
+static void buffer_reset(Buffer *buffer)
+{
+	buffer->offset = 0;
+}
+
+static void buffer_append(Buffer *buffer, const void *data, size_t len)
+{
+    memcpy(buffer->buffer + buffer->offset, data, len);
+    buffer->offset += len;
+}
+
+static int vnc_client_io_error(VncState *vs, int ret)
+{
+    if (ret == 0 || ret == -1) {
+	if (ret == -1 && (errno == EINTR || errno == EAGAIN))
+	    return 0;
+
+	qemu_set_fd_handler2(vs->csock, NULL, NULL, NULL, NULL);
+	close(vs->csock);
+	vs->csock = -1;
+	buffer_reset(&vs->input);
+	buffer_reset(&vs->output);
+	vs->need_update = 0;
+	return 0;
+    }
+    return ret;
+}
+
+static void vnc_client_error(VncState *vs)
+{
+    errno = EINVAL;
+    vnc_client_io_error(vs, -1);
+}
+
+static void vnc_client_write(void *opaque)
+{
+    ssize_t ret;
+    VncState *vs = opaque;
+
+    ret = write(vs->csock, vs->output.buffer, vs->output.offset);
+    ret = vnc_client_io_error(vs, ret);
+    if (!ret)
+	return;
+
+    memmove(vs->output.buffer, vs->output.buffer + ret, (vs->output.offset - ret));
+    vs->output.offset -= ret;
+
+    if (vs->output.offset == 0) {
+	qemu_set_fd_handler2(vs->csock, NULL, vnc_client_read, NULL, vs);
+    }
+}
+
+static void vnc_read_when(VncState *vs, VncReadEvent *func, size_t expecting)
+{
+    vs->read_handler = func;
+    vs->read_handler_expect = expecting;
+}
+
+static void vnc_client_read(void *opaque)
+{
+    VncState *vs = opaque;
+    ssize_t ret;
+
+    buffer_reserve(&vs->input, 4096);
+
+    ret = read(vs->csock, buffer_end(&vs->input), 4096);
+    ret = vnc_client_io_error(vs, ret);
+    if (!ret)
+	return;
+
+    vs->input.offset += ret;
+
+    while (vs->read_handler && vs->input.offset >= vs->read_handler_expect) {
+	size_t len = vs->read_handler_expect;
+	int ret;
+
+	ret = vs->read_handler(vs, vs->input.buffer, len);
+	if (vs->csock == -1)
+	    return;
+
+	if (!ret) {
+	    memmove(vs->input.buffer, vs->input.buffer + len, (vs->input.offset - len));
+	    vs->input.offset -= len;
+	} else {
+	    vs->read_handler_expect = ret;
+	}
+    }
+}
+
+static void vnc_write(VncState *vs, const void *data, size_t len)
+{
+    buffer_reserve(&vs->output, len);
+
+    if (buffer_empty(&vs->output)) {
+	qemu_set_fd_handler2(vs->csock, NULL, vnc_client_read, vnc_client_write, vs);
+    }
+
+    buffer_append(&vs->output, data, len);
+}
+
+static void vnc_write_s32(VncState *vs, int32_t value)
+{
+    vnc_write_u32(vs, *(uint32_t *)&value);
+}
+
+static void vnc_write_u32(VncState *vs, uint32_t value)
+{
+    uint8_t buf[4];
+
+    buf[0] = (value >> 24) & 0xFF;
+    buf[1] = (value >> 16) & 0xFF;
+    buf[2] = (value >>  8) & 0xFF;
+    buf[3] = value & 0xFF;
+
+    vnc_write(vs, buf, 4);
+}
+
+static void vnc_write_u16(VncState *vs, uint16_t value)
+{
+    char buf[2];
+
+    buf[0] = (value >> 8) & 0xFF;
+    buf[1] = value & 0xFF;
+
+    vnc_write(vs, buf, 2);
+}
+
+static void vnc_write_u8(VncState *vs, uint8_t value)
+{
+    vnc_write(vs, (char *)&value, 1);
+}
+
+static void vnc_flush(VncState *vs)
+{
+    if (vs->output.offset)
+	vnc_client_write(vs);
+}
+
+static uint8_t read_u8(char *data, size_t offset)
+{
+    return data[offset];
+}
+
+static uint16_t read_u16(char *data, size_t offset)
+{
+    return ((data[offset] & 0xFF) << 8) | (data[offset + 1] & 0xFF);
+}
+
+static int32_t read_s32(char *data, size_t offset)
+{
+    return (int32_t)((data[offset] << 24) | (data[offset + 1] << 16) |
+		     (data[offset + 2] << 8) | data[offset + 3]);
+}
+
+static uint32_t read_u32(char *data, size_t offset)
+{
+    return ((data[offset] << 24) | (data[offset + 1] << 16) |
+	    (data[offset + 2] << 8) | data[offset + 3]);
+}
+
+static void client_cut_text(VncState *vs, size_t len, char *text)
+{
+}
+
+static void pointer_event(VncState *vs, int button_mask, int x, int y)
+{
+    int buttons = 0;
+    int dz = 0;
+
+    if (button_mask & 0x01)
+	buttons |= MOUSE_EVENT_LBUTTON;
+    if (button_mask & 0x02)
+	buttons |= MOUSE_EVENT_MBUTTON;
+    if (button_mask & 0x04)
+	buttons |= MOUSE_EVENT_RBUTTON;
+    if (button_mask & 0x08)
+	dz = -1;
+    if (button_mask & 0x10)
+	dz = 1;
+	    
+    if (kbd_mouse_is_absolute()) {
+	kbd_mouse_event(x * 0x7FFF / vs->ds->width,
+			y * 0x7FFF / vs->ds->height,
+			dz, buttons);
+    } else {
+	static int last_x = -1;
+	static int last_y = -1;
+
+	if (last_x != -1)
+	    kbd_mouse_event(x - last_x, y - last_y, dz, buttons);
+
+	last_x = x;
+	last_y = y;
+    }
+}
+
+static void key_event(VncState *vs, int down, uint32_t sym)
+{
+    int keycode;
+
+    keycode = keysym2scancode(vs->kbd_layout, sym & 0xFFFF);
+
+    if (keycode & 0x80)
+	kbd_put_keycode(0xe0);
+    if (down)
+	kbd_put_keycode(keycode & 0x7f);
+    else
+	kbd_put_keycode(keycode | 0x80);
+}
+
+static void framebuffer_update_request(VncState *vs, int incremental,
+				       int x_position, int y_position,
+				       int w, int h)
+{
+    int i;
+    vs->need_update = 1;
+    if (!incremental) {
+	char *old_row = vs->old_data + y_position * vs->ds->linesize;
+
+	for (i = 0; i < h; i++) {
+	    vs->dirty_row[y_position + i] = (1ULL << (vs->ds->width / 16)) - 1;
+	    if (vs->ds->width == 1024) {
+	      vs->dirty_row[y_position + i] = ~(0ULL);
+	    }
+	    memset(old_row, 42, vs->ds->width * vs->depth);
+	    old_row += vs->ds->linesize;
+	}
+    }
+}
+
+static void set_encodings(VncState *vs, int32_t *encodings, size_t n_encodings)
+{
+    int i;
+
+    vs->has_hextile = 0;
+    vs->has_resize = 0;
+    vs->ds->dpy_copy = NULL;
+
+    for (i = n_encodings - 1; i >= 0; i--) {
+	switch (encodings[i]) {
+	case 0: /* Raw */
+	    vs->has_hextile = 0;
+	    break;
+	case 1: /* CopyRect */
+	    vs->ds->dpy_copy = vnc_copy;
+	    break;
+	case 5: /* Hextile */
+	    vs->has_hextile = 1;
+	    break;
+	case -223: /* DesktopResize */
+	    vs->has_resize = 1;
+	    break;
+	default:
+	    break;
+	}
+    }
+}
+
+static void set_pixel_format(VncState *vs,
+			     int bits_per_pixel, int depth,
+			     int big_endian_flag, int true_color_flag,
+			     int red_max, int green_max, int blue_max,
+			     int red_shift, int green_shift, int blue_shift)
+{
+    switch (bits_per_pixel) {
+    case 32:
+    case 24:
+	vs->depth = 4;
+	break;
+    case 16:
+	vs->depth = 2;
+	break;
+    case 8:
+	vs->depth = 1;
+	break;
+    default:
+	vnc_client_error(vs);
+	break;
+    }
+
+    if (!true_color_flag)
+	vnc_client_error(vs);
+
+    vnc_dpy_resize(vs->ds, vs->ds->width, vs->ds->height);
+    memset(vs->dirty_row, 0xFF, sizeof(vs->dirty_row));
+    memset(vs->old_data, 42, vs->ds->linesize * vs->ds->height);
+
+    vga_hw_invalidate();
+    vga_hw_update();
+}
+
+static int protocol_client_msg(VncState *vs, char *data, size_t len)
+{
+    int i;
+    uint16_t limit;
+
+    switch (data[0]) {
+    case 0:
+	if (len == 1)
+	    return 20;
+
+	set_pixel_format(vs, read_u8(data, 4), read_u8(data, 5),
+			 read_u8(data, 6), read_u8(data, 7),
+			 read_u16(data, 8), read_u16(data, 10),
+			 read_u16(data, 12), read_u8(data, 14),
+			 read_u8(data, 15), read_u8(data, 16));
+	break;
+    case 2:
+	if (len == 1)
+	    return 4;
+
+	if (len == 4)
+	    return 4 + (read_u16(data, 2) * 4);
+
+	limit = read_u16(data, 2);
+	for (i = 0; i < limit; i++) {
+	    int32_t val = read_s32(data, 4 + (i * 4));
+	    memcpy(data + 4 + (i * 4), &val, sizeof(val));
+	}
+
+	set_encodings(vs, (int32_t *)(data + 4), limit);
+	break;
+    case 3:
+	if (len == 1)
+	    return 10;
+
+	framebuffer_update_request(vs,
+				   read_u8(data, 1), read_u16(data, 2), read_u16(data, 4),
+				   read_u16(data, 6), read_u16(data, 8));
+	break;
+    case 4:
+	if (len == 1)
+	    return 8;
+
+	key_event(vs, read_u8(data, 1), read_u32(data, 4));
+	break;
+    case 5:
+	if (len == 1)
+	    return 6;
+
+	pointer_event(vs, read_u8(data, 1), read_u16(data, 2), read_u16(data, 4));
+	break;
+    case 6:
+	if (len == 1)
+	    return 8;
+
+	if (len == 8)
+	    return 8 + read_u32(data, 4);
+
+	client_cut_text(vs, read_u32(data, 4), data + 8);
+	break;
+    default:
+	printf("Msg: %d\n", data[0]);
+	vnc_client_error(vs);
+	break;
+    }
+	
+    vnc_read_when(vs, protocol_client_msg, 1);
+    return 0;
+}
+
+static int protocol_client_init(VncState *vs, char *data, size_t len)
+{
+    char pad[3] = { 0, 0, 0 };
+
+    vs->width = vs->ds->width;
+    vs->height = vs->ds->height;
+    vnc_write_u16(vs, vs->ds->width);
+    vnc_write_u16(vs, vs->ds->height);
+
+    vnc_write_u8(vs, vs->depth * 8); /* bits-per-pixel */
+    vnc_write_u8(vs, vs->depth * 8); /* depth */
+    vnc_write_u8(vs, 0);             /* big-endian-flag */
+    vnc_write_u8(vs, 1);             /* true-color-flag */
+    if (vs->depth == 4) {
+	vnc_write_u16(vs, 0xFF);     /* red-max */
+	vnc_write_u16(vs, 0xFF);     /* green-max */
+	vnc_write_u16(vs, 0xFF);     /* blue-max */
+	vnc_write_u8(vs, 16);        /* red-shift */
+	vnc_write_u8(vs, 8);         /* green-shift */
+	vnc_write_u8(vs, 0);         /* blue-shift */
+    } else if (vs->depth == 2) {
+	vnc_write_u16(vs, 31);       /* red-max */
+	vnc_write_u16(vs, 63);       /* green-max */
+	vnc_write_u16(vs, 31);       /* blue-max */
+	vnc_write_u8(vs, 11);        /* red-shift */
+	vnc_write_u8(vs, 5);         /* green-shift */
+	vnc_write_u8(vs, 0);         /* blue-shift */
+    } else if (vs->depth == 1) {
+	vnc_write_u16(vs, 3);        /* red-max */
+	vnc_write_u16(vs, 7);        /* green-max */
+	vnc_write_u16(vs, 3);        /* blue-max */
+	vnc_write_u8(vs, 5);         /* red-shift */
+	vnc_write_u8(vs, 2);         /* green-shift */
+	vnc_write_u8(vs, 0);         /* blue-shift */
+    }
+	
+    vnc_write(vs, pad, 3);           /* padding */
+
+    vnc_write_u32(vs, 4);        
+    vnc_write(vs, "QEMU", 4);
+    vnc_flush(vs);
+
+    vnc_read_when(vs, protocol_client_msg, 1);
+
+    return 0;
+}
+
+static int protocol_version(VncState *vs, char *version, size_t len)
+{
+    char local[13];
+    int maj, min;
+
+    memcpy(local, version, 12);
+    local[12] = 0;
+
+    if (sscanf(local, "RFB %03d.%03d\n", &maj, &min) != 2) {
+	vnc_client_error(vs);
+	return 0;
+    }
+
+    vnc_write_u32(vs, 1); /* None */
+    vnc_flush(vs);
+
+    vnc_read_when(vs, protocol_client_init, 1);
+
+    return 0;
+}
+
+static void vnc_listen_read(void *opaque)
+{
+    VncState *vs = opaque;
+    struct sockaddr_in addr;
+    socklen_t addrlen = sizeof(addr);
+
+    vs->csock = accept(vs->lsock, (struct sockaddr *)&addr, &addrlen);
+    if (vs->csock != -1) {
+	fcntl(vs->csock, F_SETFL, O_NONBLOCK);
+	qemu_set_fd_handler2(vs->csock, NULL, vnc_client_read, NULL, opaque);
+	vnc_write(vs, "RFB 003.003\n", 12);
+	vnc_flush(vs);
+	vnc_read_when(vs, protocol_version, 12);
+	memset(vs->old_data, 0, vs->ds->linesize * vs->ds->height);
+	memset(vs->dirty_row, 0xFF, sizeof(vs->dirty_row));
+	vs->has_resize = 0;
+	vs->has_hextile = 0;
+	vs->ds->dpy_copy = NULL;
+    }
+}
+
+void vnc_display_init(DisplayState *ds, int display)
+{
+    struct sockaddr_in addr;
+    int reuse_addr, ret;
+    VncState *vs;
+
+    vs = qemu_mallocz(sizeof(VncState));
+    if (!vs)
+	exit(1);
+
+    ds->opaque = vs;
+
+    vs->lsock = -1;
+    vs->csock = -1;
+    vs->depth = 4;
+
+    vs->ds = ds;
+
+    if (!keyboard_layout)
+	keyboard_layout = "en-us";
+
+    vs->kbd_layout = init_keyboard_layout(keyboard_layout);
+    if (!vs->kbd_layout)
+	exit(1);
+
+    vs->lsock = socket(PF_INET, SOCK_STREAM, 0);
+    if (vs->lsock == -1) {
+	fprintf(stderr, "Could not create socket\n");
+	exit(1);
+    }
+
+    addr.sin_family = AF_INET;
+    addr.sin_port = htons(5900 + display);
+    memset(&addr.sin_addr, 0, sizeof(addr.sin_addr));
+
+    reuse_addr = 1;
+    ret = setsockopt(vs->lsock, SOL_SOCKET, SO_REUSEADDR,
+		     &reuse_addr, sizeof(reuse_addr));
+    if (ret == -1) {
+	fprintf(stderr, "setsockopt() failed\n");
+	exit(1);
+    }
+
+    if (bind(vs->lsock, (struct sockaddr *)&addr, sizeof(addr)) == -1) {
+	fprintf(stderr, "bind() failed\n");
+	exit(1);
+    }
+
+    if (listen(vs->lsock, 1) == -1) {
+	fprintf(stderr, "listen() failed\n");
+	exit(1);
+    }
+
+    ret = qemu_set_fd_handler2(vs->lsock, vnc_listen_poll, vnc_listen_read, NULL, vs);
+    if (ret == -1) {
+	exit(1);
+    }
+
+    vs->ds->data = NULL;
+    vs->ds->dpy_update = vnc_dpy_update;
+    vs->ds->dpy_resize = vnc_dpy_resize;
+    vs->ds->dpy_refresh = vnc_dpy_refresh;
+
+    memset(vs->dirty_row, 0xFF, sizeof(vs->dirty_row));
+
+    vnc_dpy_resize(vs->ds, 640, 400);
+}
diff -urN -x '*.[di]' a.hg/vnchextile.h vnc.hg/vnchextile.h
--- a.hg/vnchextile.h	1969-12-31 18:00:00.000000000 -0600
+++ vnc.hg/vnchextile.h	2006-04-28 00:58:59.000000000 -0500
@@ -0,0 +1,189 @@
+#define CONCAT_I(a, b) a ## b
+#define CONCAT(a, b) CONCAT_I(a, b)
+#define pixel_t CONCAT(uint, CONCAT(BPP, _t))
+
+static void CONCAT(send_hextile_tile_, BPP)(VncState *vs,
+					    int x, int y, int w, int h,
+					    pixel_t *last_bg, pixel_t *last_fg,
+					    int *has_bg, int *has_fg)
+{
+    char *row = (vs->ds->data + y * vs->ds->linesize + x * vs->depth);
+    pixel_t *irow = (pixel_t *)row;
+    int j, i;
+    pixel_t bg = 0;
+    pixel_t fg = 0;
+    int n_colors = 0;
+    int bg_count = 0;
+    int fg_count = 0;
+    int flags = 0;
+    uint8_t data[(sizeof(pixel_t) + 2) * 16 * 16];
+    int n_data = 0;
+    int n_subtiles = 0;
+
+    for (j = 0; j < h; j++) {
+	for (i = 0; i < w; i++) {
+	    switch (n_colors) {
+	    case 0:
+		bg = irow[i];
+		n_colors = 1;
+		break;
+	    case 1:
+		if (irow[i] != bg) {
+		    fg = irow[i];
+		    n_colors = 2;
+		}
+		break;
+	    case 2:
+		if (irow[i] != bg && irow[i] != fg) {
+		    n_colors = 3;
+		} else {
+		    if (irow[i] == bg)
+			bg_count++;
+		    else if (irow[i] == fg)
+			fg_count++;
+		}
+		break;
+	    default:
+		break;
+	    }
+	}
+	if (n_colors > 2)
+	    break;
+	irow += vs->ds->linesize / sizeof(pixel_t);
+    }
+
+    if (n_colors > 1 && fg_count > bg_count) {
+	pixel_t tmp = fg;
+	fg = bg;
+	bg = tmp;
+    }
+
+    if (!*has_bg || *last_bg != bg) {
+	flags |= 0x02;
+	*has_bg = 1;
+	*last_bg = bg;
+    }
+
+    if (!*has_fg || *last_fg != fg) {
+	flags |= 0x04;
+	*has_fg = 1;
+	*last_fg = fg;
+    }
+
+    switch (n_colors) {
+    case 1:
+	n_data = 0;
+	break;
+    case 2:
+	flags |= 0x08;
+
+	irow = (pixel_t *)row;
+	
+	for (j = 0; j < h; j++) {
+	    int min_x = -1;
+	    for (i = 0; i < w; i++) {
+		if (irow[i] == fg) {
+		    if (min_x == -1)
+			min_x = i;
+		} else if (min_x != -1) {
+		    hextile_enc_cord(data + n_data, min_x, j, i - min_x, 1);
+		    n_data += 2;
+		    n_subtiles++;
+		    min_x = -1;
+		}
+	    }
+	    if (min_x != -1) {
+		hextile_enc_cord(data + n_data, min_x, j, i - min_x, 1);
+		n_data += 2;
+		n_subtiles++;
+	    }
+	    irow += vs->ds->linesize / sizeof(pixel_t);
+	}
+	break;
+    case 3:
+	flags |= 0x18;
+
+	irow = (pixel_t *)row;
+
+	if (!*has_bg || *last_bg != bg)
+	    flags |= 0x02;
+
+	for (j = 0; j < h; j++) {
+	    int has_color = 0;
+	    int min_x = -1;
+	    pixel_t color;
+
+	    for (i = 0; i < w; i++) {
+		if (!has_color) {
+		    if (irow[i] == bg)
+			continue;
+		    color = irow[i];
+		    min_x = i;
+		    has_color = 1;
+		} else if (irow[i] != color) {
+		    has_color = 0;
+
+		    memcpy(data + n_data, &color, sizeof(color));
+		    hextile_enc_cord(data + n_data + sizeof(pixel_t), min_x, j, i - min_x, 1);
+		    n_data += 2 + sizeof(pixel_t);
+		    n_subtiles++;
+
+		    min_x = -1;
+		    if (irow[i] != bg) {
+			color = irow[i];
+			min_x = i;
+			has_color = 1;
+		    }
+		}
+	    }
+	    if (has_color) {
+		memcpy(data + n_data, &color, sizeof(color));
+		hextile_enc_cord(data + n_data + sizeof(pixel_t), min_x, j, i - min_x, 1);
+		n_data += 2 + sizeof(pixel_t);
+		n_subtiles++;
+	    }
+	    irow += vs->ds->linesize / sizeof(pixel_t);
+	}
+
+	/* A SubrectsColoured subtile invalidates the foreground color */
+	*has_fg = 0;
+	if (n_data > (w * h * sizeof(pixel_t))) {
+	    n_colors = 4;
+	    flags = 0x01;
+	    *has_bg = 0;
+
+	    /* we really don't have to invalidate either the bg or fg
+	       but we've lost the old values.  oh well. */
+	}
+    default:
+	break;
+    }
+
+    if (n_colors > 3) {
+	flags = 0x01;
+	*has_fg = 0;
+	*has_bg = 0;
+	n_colors = 4;
+    }
+
+    vnc_write_u8(vs, flags);
+    if (n_colors < 4) {
+	if (flags & 0x02)
+	    vnc_write(vs, last_bg, sizeof(pixel_t));
+	if (flags & 0x04)
+	    vnc_write(vs, last_fg, sizeof(pixel_t));
+	if (n_subtiles) {
+	    vnc_write_u8(vs, n_subtiles);
+	    vnc_write(vs, data, n_data);
+	}
+    } else {
+	for (j = 0; j < h; j++) {
+	    vnc_write(vs, row, w * vs->depth);
+	    row += vs->ds->linesize;
+	}
+    }
+}
+
+#undef pixel_t
+#undef CONCAT_I
+#undef CONCAT
diff -urN -x '*.[di]' a.hg/vnc_keysym.h vnc.hg/vnc_keysym.h
--- a.hg/vnc_keysym.h	1969-12-31 18:00:00.000000000 -0600
+++ vnc.hg/vnc_keysym.h	2006-04-23 12:31:00.000000000 -0500
@@ -0,0 +1,275 @@
+typedef struct {
+	const char* name;
+	int keysym;
+} name2keysym_t;
+static name2keysym_t name2keysym[]={
+/* ascii */
+    { "space",                0x020},
+    { "exclam",               0x021},
+    { "quotedbl",             0x022},
+    { "numbersign",           0x023},
+    { "dollar",               0x024},
+    { "percent",              0x025},
+    { "ampersand",            0x026},
+    { "apostrophe",           0x027},
+    { "parenleft",            0x028},
+    { "parenright",           0x029},
+    { "asterisk",             0x02a},
+    { "plus",                 0x02b},
+    { "comma",                0x02c},
+    { "minus",                0x02d},
+    { "period",               0x02e},
+    { "slash",                0x02f},
+    { "0",                    0x030},
+    { "1",                    0x031},
+    { "2",                    0x032},
+    { "3",                    0x033},
+    { "4",                    0x034},
+    { "5",                    0x035},
+    { "6",                    0x036},
+    { "7",                    0x037},
+    { "8",                    0x038},
+    { "9",                    0x039},
+    { "colon",                0x03a},
+    { "semicolon",            0x03b},
+    { "less",                 0x03c},
+    { "equal",                0x03d},
+    { "greater",              0x03e},
+    { "question",             0x03f},
+    { "at",                   0x040},
+    { "A",                    0x041},
+    { "B",                    0x042},
+    { "C",                    0x043},
+    { "D",                    0x044},
+    { "E",                    0x045},
+    { "F",                    0x046},
+    { "G",                    0x047},
+    { "H",                    0x048},
+    { "I",                    0x049},
+    { "J",                    0x04a},
+    { "K",                    0x04b},
+    { "L",                    0x04c},
+    { "M",                    0x04d},
+    { "N",                    0x04e},
+    { "O",                    0x04f},
+    { "P",                    0x050},
+    { "Q",                    0x051},
+    { "R",                    0x052},
+    { "S",                    0x053},
+    { "T",                    0x054},
+    { "U",                    0x055},
+    { "V",                    0x056},
+    { "W",                    0x057},
+    { "X",                    0x058},
+    { "Y",                    0x059},
+    { "Z",                    0x05a},
+    { "bracketleft",          0x05b},
+    { "backslash",            0x05c},
+    { "bracketright",         0x05d},
+    { "asciicircum",          0x05e},
+    { "underscore",           0x05f},
+    { "grave",                0x060},
+    { "a",                    0x061},
+    { "b",                    0x062},
+    { "c",                    0x063},
+    { "d",                    0x064},
+    { "e",                    0x065},
+    { "f",                    0x066},
+    { "g",                    0x067},
+    { "h",                    0x068},
+    { "i",                    0x069},
+    { "j",                    0x06a},
+    { "k",                    0x06b},
+    { "l",                    0x06c},
+    { "m",                    0x06d},
+    { "n",                    0x06e},
+    { "o",                    0x06f},
+    { "p",                    0x070},
+    { "q",                    0x071},
+    { "r",                    0x072},
+    { "s",                    0x073},
+    { "t",                    0x074},
+    { "u",                    0x075},
+    { "v",                    0x076},
+    { "w",                    0x077},
+    { "x",                    0x078},
+    { "y",                    0x079},
+    { "z",                    0x07a},
+    { "braceleft",            0x07b},
+    { "bar",                  0x07c},
+    { "braceright",           0x07d},
+    { "asciitilde",           0x07e},
+
+/* latin 1 extensions */
+{ "nobreakspace",         0x0a0},
+{ "exclamdown",           0x0a1},
+{ "cent",         	  0x0a2},
+{ "sterling",             0x0a3},
+{ "currency",             0x0a4},
+{ "yen",                  0x0a5},
+{ "brokenbar",            0x0a6},
+{ "section",              0x0a7},
+{ "diaeresis",            0x0a8},
+{ "copyright",            0x0a9},
+{ "ordfeminine",          0x0aa},
+{ "guillemotleft",        0x0ab},
+{ "notsign",              0x0ac},
+{ "hyphen",               0x0ad},
+{ "registered",           0x0ae},
+{ "macron",               0x0af},
+{ "degree",               0x0b0},
+{ "plusminus",            0x0b1},
+{ "twosuperior",          0x0b2},
+{ "threesuperior",        0x0b3},
+{ "acute",                0x0b4},
+{ "mu",                   0x0b5},
+{ "paragraph",            0x0b6},
+{ "periodcentered",       0x0b7},
+{ "cedilla",              0x0b8},
+{ "onesuperior",          0x0b9},
+{ "masculine",            0x0ba},
+{ "guillemotright",       0x0bb},
+{ "onequarter",           0x0bc},
+{ "onehalf",              0x0bd},
+{ "threequarters",        0x0be},
+{ "questiondown",         0x0bf},
+{ "Agrave",               0x0c0},
+{ "Aacute",               0x0c1},
+{ "Acircumflex",          0x0c2},
+{ "Atilde",               0x0c3},
+{ "Adiaeresis",           0x0c4},
+{ "Aring",                0x0c5},
+{ "AE",                   0x0c6},
+{ "Ccedilla",             0x0c7},
+{ "Egrave",               0x0c8},
+{ "Eacute",               0x0c9},
+{ "Ecircumflex",          0x0ca},
+{ "Ediaeresis",           0x0cb},
+{ "Igrave",               0x0cc},
+{ "Iacute",               0x0cd},
+{ "Icircumflex",          0x0ce},
+{ "Idiaeresis",           0x0cf},
+{ "ETH",                  0x0d0},
+{ "Eth",                  0x0d0},
+{ "Ntilde",               0x0d1},
+{ "Ograve",               0x0d2},
+{ "Oacute",               0x0d3},
+{ "Ocircumflex",          0x0d4},
+{ "Otilde",               0x0d5},
+{ "Odiaeresis",           0x0d6},
+{ "multiply",             0x0d7},
+{ "Ooblique",             0x0d8},
+{ "Oslash",               0x0d8},
+{ "Ugrave",               0x0d9},
+{ "Uacute",               0x0da},
+{ "Ucircumflex",          0x0db},
+{ "Udiaeresis",           0x0dc},
+{ "Yacute",               0x0dd},
+{ "THORN",                0x0de},
+{ "Thorn",                0x0de},
+{ "ssharp",               0x0df},
+{ "agrave",               0x0e0},
+{ "aacute",               0x0e1},
+{ "acircumflex",          0x0e2},
+{ "atilde",               0x0e3},
+{ "adiaeresis",           0x0e4},
+{ "aring",                0x0e5},
+{ "ae",                   0x0e6},
+{ "ccedilla",             0x0e7},
+{ "egrave",               0x0e8},
+{ "eacute",               0x0e9},
+{ "ecircumflex",          0x0ea},
+{ "ediaeresis",           0x0eb},
+{ "igrave",               0x0ec},
+{ "iacute",               0x0ed},
+{ "icircumflex",          0x0ee},
+{ "idiaeresis",           0x0ef},
+{ "eth",                  0x0f0},
+{ "ntilde",               0x0f1},
+{ "ograve",               0x0f2},
+{ "oacute",               0x0f3},
+{ "ocircumflex",          0x0f4},
+{ "otilde",               0x0f5},
+{ "odiaeresis",           0x0f6},
+{ "division",             0x0f7},
+{ "oslash",               0x0f8},
+{ "ooblique",             0x0f8},
+{ "ugrave",               0x0f9},
+{ "uacute",               0x0fa},
+{ "ucircumflex",          0x0fb},
+{ "udiaeresis",           0x0fc},
+{ "yacute",               0x0fd},
+{ "thorn",                0x0fe},
+{ "ydiaeresis",           0x0ff},
+{"EuroSign", 0x20ac},  /* XK_EuroSign */
+
+    /* modifiers */
+{"Control_L", 0xffe3}, /* XK_Control_L */
+{"Control_R", 0xffe4}, /* XK_Control_R */
+{"Alt_L", 0xffe9},     /* XK_Alt_L */
+{"Alt_R", 0xffea},     /* XK_Alt_R */
+{"Caps_Lock", 0xffe5}, /* XK_Caps_Lock */
+{"Meta_L", 0xffe7},    /* XK_Meta_L */
+{"Meta_R", 0xffe8},    /* XK_Meta_R */
+{"Shift_L", 0xffe1},   /* XK_Shift_L */
+{"Shift_R", 0xffe2},   /* XK_Shift_R */
+{"Super_L", 0xffeb},   /* XK_Super_L */
+{"Super_R", 0xffec},   /* XK_Super_R */
+
+    /* special keys */
+{"BackSpace", 0xff08}, /* XK_BackSpace */
+{"Tab", 0xff09},       /* XK_Tab */
+{"Return", 0xff0d},    /* XK_Return */
+{"Right", 0xff53},     /* XK_Right */
+{"Left", 0xff51},      /* XK_Left */
+{"Up", 0xff52},        /* XK_Up */
+{"Down", 0xff54},      /* XK_Down */
+{"Page_Down", 0xff56}, /* XK_Page_Down */
+{"Page_Up", 0xff55},   /* XK_Page_Up */
+{"Insert", 0xff63},    /* XK_Insert */
+{"Delete", 0xffff},    /* XK_Delete */
+{"Home", 0xff50},      /* XK_Home */
+{"End", 0xff57},       /* XK_End */
+{"Scroll_Lock", 0xff14}, /* XK_Scroll_Lock */
+{"F1", 0xffbe},        /* XK_F1 */
+{"F2", 0xffbf},        /* XK_F2 */
+{"F3", 0xffc0},        /* XK_F3 */
+{"F4", 0xffc1},        /* XK_F4 */
+{"F5", 0xffc2},        /* XK_F5 */
+{"F6", 0xffc3},        /* XK_F6 */
+{"F7", 0xffc4},        /* XK_F7 */
+{"F8", 0xffc5},        /* XK_F8 */
+{"F9", 0xffc6},        /* XK_F9 */
+{"F10", 0xffc7},       /* XK_F10 */
+{"F11", 0xffc8},       /* XK_F11 */
+{"F12", 0xffc9},       /* XK_F12 */
+{"F13", 0xffca},       /* XK_F13 */
+{"F14", 0xffcb},       /* XK_F14 */
+{"F15", 0xffcc},       /* XK_F15 */
+{"Sys_Req", 0xff15},   /* XK_Sys_Req */
+{"KP_0", 0xffb0},      /* XK_KP_0 */
+{"KP_1", 0xffb1},      /* XK_KP_1 */
+{"KP_2", 0xffb2},      /* XK_KP_2 */
+{"KP_3", 0xffb3},      /* XK_KP_3 */
+{"KP_4", 0xffb4},      /* XK_KP_4 */
+{"KP_5", 0xffb5},      /* XK_KP_5 */
+{"KP_6", 0xffb6},      /* XK_KP_6 */
+{"KP_7", 0xffb7},      /* XK_KP_7 */
+{"KP_8", 0xffb8},      /* XK_KP_8 */
+{"KP_9", 0xffb9},      /* XK_KP_9 */
+{"KP_Add", 0xffab},    /* XK_KP_Add */
+{"KP_Decimal", 0xffae},  /* XK_KP_Decimal */
+{"KP_Divide", 0xffaf},   /* XK_KP_Divide */
+{"KP_Enter", 0xff8d},    /* XK_KP_Enter */
+{"KP_Equal", 0xffbd},    /* XK_KP_Equal */
+{"KP_Multiply", 0xffaa}, /* XK_KP_Multiply */
+{"KP_Subtract", 0xffad}, /* XK_KP_Subtract */
+{"help", 0xff6a},        /* XK_Help */
+{"Menu", 0xff67},        /* XK_Menu */
+{"Print", 0xff61},       /* XK_Print */
+{"Mode_switch", 0xff7e}, /* XK_Mode_switch */
+{"Num_Lock", 0xff7f},    /* XK_Num_Lock */
+{"Pause", 0xff13},       /* XK_Pause */
+{"Escape", 0xff1b},      /* XK_Escape */
+{0,0},
+};

^ permalink raw reply

* Re: another kconfig target for building monolithic kernel (for security) ?
From: Arjan van de Ven @ 2006-04-29 21:22 UTC (permalink / raw)
  To: Dave Jones; +Cc: devzero, linux-kernel
In-Reply-To: <20060429164331.GA26122@redhat.com>

On Sat, 2006-04-29 at 12:43 -0400, Dave Jones wrote:
> On Sat, Apr 29, 2006 at 03:03:55PM +0200, devzero@web.de wrote:
> 
>  > i want to harden a linux system (dedicated root server on the internet) by recompiling the kernel without support for lkm (to prevent installation of lkm based rootkits etc)
> 
> Loading modules via /dev/kmem is trivial thanks to a bunch of tutorials and
> examples on the web, so this alone doesn't make life that much more difficult for attackers.

/dev/kmem should be a config option too though

(and /dev/mem should get the filter patch that fedora has ;-) 



^ permalink raw reply

* Re: better leve triggered IRQ management needed
From: Alan Cox @ 2006-04-29 21:25 UTC (permalink / raw)
  To: Stephen Hemminger; +Cc: Andrew Morton, Linus Torvalds, linux-kernel
In-Reply-To: <20060424114105.113eecac@localhost.localdomain>

On Llu, 2006-04-24 at 11:41 -0700, Stephen Hemminger wrote:
> I am seeing repeated problems with misconfigured systems that have shared IRQ
> devices configured for edge-triggered.

I've been thinking about this a chunk more. The embedded folks have been
having a related argument about SA_EDGE and SA_LEVEL or similar. On some
embedded platforms the driver really has to pass this information
according to the board configuration.

Trying to guess the current IRQ level v edge on a PC is very hard.
Trying to set it correctly from the driver is rather easier.


^ permalink raw reply

* [Bluez-devel] obtainining client BTADDR during obexserver (1.0-3) session?
From: JP Freeley @ 2006-04-29 21:12 UTC (permalink / raw)
  To: bluez-devel

How would I obtain the BTADDR of the connecting remote device when it 
connects to obexserver (1.0-3)? I would like the server to accept a 
file, parse it and reply accordingly to the device which sent it.

Any help, direction, pointers, snippets would be greatly appreciated.

Thanks,

jpf


-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Bluez-devel mailing list
Bluez-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bluez-devel

^ permalink raw reply

* [KJ] Re: AMBtEiN new
From: Cathy Sickels @ 2006-04-29 21:06 UTC (permalink / raw)
  To: kernel-janitors


[-- Attachment #1.1: Type: text/plain, Size: 565 bytes --]

Hi
 
V r I a A f G c R h A j 
X t A c N i A l X l 
C f I s A h L p I y S w 
V q A r L h I y U x M f 

 
http://www.sproutemlokvad.com
whee
aigrett
Hinduis
camphorate
juggler
I should tell you. He and our doctor are friends. 
I know. Ivan told me. ... Alex, I want to get some things over to 
you-Swaynes telephone book, his wallet, appointments schedule, stuff 
like that. Ill wrap it all up and have one of Cactuss boys deliver the 
package to your place, to the security gate. Put everything into your 
high tech and see what you can find. 


[-- Attachment #1.2: Type: text/html, Size: 2491 bytes --]

[-- Attachment #2: Type: text/plain, Size: 168 bytes --]

_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
https://lists.osdl.org/mailman/listinfo/kernel-janitors

^ permalink raw reply

* Re: [PATCH 11/16] libata-eh-fw: implement new EH scheduling via timeout
From: Alan Cox @ 2006-04-29 21:13 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: Tejun Heo, axboe, albertcc, lkosewsk, linux-ide
In-Reply-To: <4450AC03.303@pobox.com>

On Iau, 2006-04-27 at 07:33 -0400, Jeff Garzik wrote:
> Well overall I want to minimize the change from existing behavior, since 
> there is enough change as it is.  In current libata and drivers/ide, it 
> can continue after a properly indicated DMA error without doing a reset.

Sometimes. But the smarts in it also break some hardware horribly
because the properly indicated DMA error doesn't neccessarily leave the
state machines on the chip sane, and worse it sometimes does resets then
recovery and thats ugly.

> And I just think its rude, to reset hardware when it doesn't need 
> resetting.  Its sorta like the Windows mentality -- "just reboot it, 
> that will fix stuff"  Linux shouldn't be rude to hardware, when it need 
> not be :)

Windows generally uses a 7 second timeout btw.


^ permalink raw reply

* Re: [RFC] make PC Speaker driver work on x86-64
From: Matthieu CASTET @ 2006-04-29 21:00 UTC (permalink / raw)
  To: linux-kernel; +Cc: discuss
In-Reply-To: <200604291830.k3TIUA23009336@harpo.it.uu.se>

Hi,

Le Sat, 29 Apr 2006 20:30:10 +0200, Mikael Pettersson a écrit :


> 
> Is there a better way to do this? ACPI?
> 
Yes, I believe using PNP layer (that use ACPI with pnpacpi) with PNP0800
will be cleaner.

Matthieu


^ permalink raw reply


This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.