linux-2.6
18 years ago[PATCH] fbcon: Use persistent allocation for cursor blinking
Dave Jones [Tue, 3 Oct 2006 08:14:47 +0000 (01:14 -0700)] 
[PATCH] fbcon: Use persistent allocation for cursor blinking

Every time the console cursor blinks, we do a kmalloc/kfree pair.  This
patch turns that into a single allocation.

This allocation was the most frequent kmalloc I saw on my test box.

[adaplas]
Per Alan's suggestion, move global variables to fbcon's private structure.
This would also avoid resource leaks when fbcon is unloaded.

Signed-off-by: Dave Jones <davej@redhat.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] radeonfb: Use generic DDC reading
Dennis Munsie [Tue, 3 Oct 2006 08:14:46 +0000 (01:14 -0700)] 
[PATCH] radeonfb: Use generic DDC reading

Uses the generic ddc read functionality in fbmon.c instead of the previous
functionality.

Signed-off-by: Dennis Munsie <dmunsie@cecropia.com>
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] savagefb: Use generic DDC reading
Antonino A. Daplas [Tue, 3 Oct 2006 08:14:45 +0000 (01:14 -0700)] 
[PATCH] savagefb: Use generic DDC reading

Update driver to use generic DDC reading

[khali@linux-fr.org: fix oops in i2c handling]
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Jurriaan <thunder7@xs4all.nl>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] i810fb: Use generic DDC reading
Antonino A. Daplas [Tue, 3 Oct 2006 08:14:44 +0000 (01:14 -0700)] 
[PATCH] i810fb: Use generic DDC reading

Update driver to use generic DDC reading

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] rivafb: Use generic DDC reading
Antonino A. Daplas [Tue, 3 Oct 2006 08:14:44 +0000 (01:14 -0700)] 
[PATCH] rivafb: Use generic DDC reading

Update driver to use generic DDC reading

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] nvidiafb: Use generic DDC reading
Antonino A. Daplas [Tue, 3 Oct 2006 08:14:43 +0000 (01:14 -0700)] 
[PATCH] nvidiafb: Use generic DDC reading

Update driver to use generic DDC reading

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] fbdev: Add generic ddc read functionality
Dennis Munsie [Tue, 3 Oct 2006 08:14:42 +0000 (01:14 -0700)] 
[PATCH] fbdev: Add generic ddc read functionality

Adds functionality to read the EDID information over the DDC bus in a generic
way.  This code is based on the DDC implementation in the radeon driver.

[adaplas]
- separate from fbmon.c and place in new file fb_ddc.c
- remove dependency to CONFIG_I2C and CONFIG_I2C_ALGOBIT, otherwise, feature
  will not compile if i2c support is compiled as a module
- feature is selectable only by drivers needing it. It must have a
  'select FB_DDC if xxx' in Kconfig
- change printk's to dev_*, the i2c people prefers it

Signed-off-by: Dennis Munsie <dmunsie@cecropia.com>
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] vfb: Document option to enable the driver
Mike Frysinger [Tue, 3 Oct 2006 08:14:41 +0000 (01:14 -0700)] 
[PATCH] vfb: Document option to enable the driver

The Kconfig help text doesnt mention that in order to load the vfb module, you
have to pass in the parameter vfb_enable=1

Document required module options in Kconfig for loading the vfb module.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] rivafb: use constants instead of magic values
Guido Guenther [Tue, 3 Oct 2006 08:14:40 +0000 (01:14 -0700)] 
[PATCH] rivafb: use constants instead of magic values

use (MIN/MAX)_LEVEL and FB_(UN)BLANK instead of the values they are defined to

Signed-off-by: Guido Guenther <agx@sigxcpu.org>
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] intelfb: Documentation update
Ph. Marek [Tue, 3 Oct 2006 08:14:38 +0000 (01:14 -0700)] 
[PATCH] intelfb: Documentation update

Correct sample boot line and add a remark on mode setting.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] au1100fb: Add option to enable/disable the cursor
Rodolfo Giometti [Tue, 3 Oct 2006 08:14:36 +0000 (01:14 -0700)] 
[PATCH] au1100fb: Add option to enable/disable the cursor

- add cursor enable/disable, very useful if you wish a full screen boot
  logo.

Cursor can be disabled from kernel command line:

   video=au1100fb:nocursor,panel:Toppoly_TD035STED4

or from sysfs interface:

   echo 1 > /sys/module/au1100fb/parameters/nocursor

- fix up some wrong indentation issues.

Signed-off-by: Rodolfo Giometti <giometti@linux.it>
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ide-cs (CompactFlash) driver, rm irq warning
David Brownell [Tue, 3 Oct 2006 08:14:35 +0000 (01:14 -0700)] 
[PATCH] ide-cs (CompactFlash) driver, rm irq warning

Git rid of the runtime warning about pcmcia not supporting exclusive IRQs,
so "the driver needs updating".

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] IDE: more pci_find cleanup
Alan Cox [Tue, 3 Oct 2006 08:14:35 +0000 (01:14 -0700)] 
[PATCH] IDE: more pci_find cleanup

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Allow ide_generic_all to be used modular and built in
Patrick Jefferson [Tue, 3 Oct 2006 08:14:34 +0000 (01:14 -0700)] 
[PATCH] Allow ide_generic_all to be used modular and built in

Allow ide/pci/generic to claim chipsets as a a module or when built-in.  It
requires using "all_generic_ide" as a boot option.

Signed-off-by: Patrick Jefferson <henj@hp.com>
Acked-by: Alan Cox <alan@redhat.com>
Closes-Bug: 7017
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ide: Fix crash on repeated reset
Alan Cox [Tue, 3 Oct 2006 08:14:33 +0000 (01:14 -0700)] 
[PATCH] ide: Fix crash on repeated reset

Michal Miroslaw reported a problem (bugzilla #7023) where a user initiated
reset while the IDE layer was already resetting the channel caused a crash,
and provided a rough fix.

This is a slightly cleaner version of the fix which tracks the reset state
and blocks further reset requests while a reset is in progress.

Note this is not a security issue - random end users can't access the
ioctl in question anyway.

Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Michal Miroslaw <mirq-linux@rere.qmqm.pl>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] CONFIG_PM=n slim: drivers/ide/pci/sc1200.c
Alexey Dobriyan [Tue, 3 Oct 2006 08:14:32 +0000 (01:14 -0700)] 
[PATCH] CONFIG_PM=n slim: drivers/ide/pci/sc1200.c

Remove some code which is unneeded if CONFIG_PM=n.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] PCMCIA: Add few IDs into ide-cs
Marcin Juszkiewicz [Tue, 3 Oct 2006 08:14:29 +0000 (01:14 -0700)] 
[PATCH] PCMCIA: Add few IDs into ide-cs

Few cards informations submitted by OpenZaurus users.

Seagate 8GB microdrive:
 product info: "SEAGATE", "ST1"
 manfid 0x0111, 0x0000

One CF card:
 product info: "SAMSUNG", "04/05/06", "", ""
 manfid : 0x0000, 0x0000

Ridata 8GB Pro 150X Compact Flash Card:
 product info: "SMI VENDOR", "SMI PRODUCT", ""
 manfid: 0x000a, 0x0000

 product info: "M-Systems", "CF500", ""
 manfid: 0x000a, 0x0000

 product info: "TRANSCEND", "TS4GCF120", ""
 manfid: 0x000a, 0x0000

Alan sayeth: "Same update needs to go into drivers/ata/pata_pcmcia"

Signed-off-by: Marcin Juszkiewicz <openembedded@hrw.one.pl>
Cc: Dominik Brodowski <linux@dominikbrodowski.net>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ide: reprogram disk pio timings on resume
Jason Lunz [Tue, 3 Oct 2006 08:14:26 +0000 (01:14 -0700)] 
[PATCH] ide: reprogram disk pio timings on resume

Add a step to the IDE PM state machine that reprograms disk PIO timings
as the first step on resume. This prevents ide deadlock on
resume-from-ram on my nforce3-based laptop.

An earlier implementation was written entirely within the amd74xx ide
driver, but Alan helpfully pointed out that this is the correct thing to
do globally. Still, I'm only calling hwif->tuneproc() for disks, based
on two things:

 - The existing state machine is already passed over for non-disk drives
 - Previous testing on my laptop shows that the hangs are related only
   to the disk - suspend/resume from a livecd showed that there's no
   need for this on the cdrom.

Signed-off-by: Jason Lunz <lunz@falooley.org>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Cc: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: Pavel Machek <pavel@ucw.cz>
Cc: Brad Campbell <brad@wasp.net.au>
Cc: David Brownell <david-b@pacbell.net>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ide: remove dma_base2 field from ide_hwif_t
Sergei Shtylyov [Tue, 3 Oct 2006 08:14:25 +0000 (01:14 -0700)] 
[PATCH] ide: remove dma_base2 field from ide_hwif_t

Remove dma_base2 field from ide_hwif_t as it's used only in 2 drivers and
without great need.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: John Keller <jpk@sgi.com>
Signed-off-by: Jeremy Higdon <jeremy@sgi.com>
Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] drivers/ide/: cleanups
Adrian Bunk [Tue, 3 Oct 2006 08:14:24 +0000 (01:14 -0700)] 
[PATCH] drivers/ide/: cleanups

- setup-pci.c: remove the unused ide_pci_unregister_driver()
- ide-dma.c: remove the unused EXPORT_SYMBOL_GPL(ide_in_drive_list)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] IDE core: driver layer error checking
Randy Dunlap [Tue, 3 Oct 2006 08:14:23 +0000 (01:14 -0700)] 
[PATCH] IDE core: driver layer error checking

Check driver layer return values in IDE core.

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ide: backport piix fixes from libata into the legacy driver
Alan Cox [Tue, 3 Oct 2006 08:14:23 +0000 (01:14 -0700)] 
[PATCH] ide: backport piix fixes from libata into the legacy driver

There are three flags being set by default by the PIIX driver for speeds >
PIO 1, and one not being cleared properly on fallback to PIO0.  The most
important one is the prefetch/post write control which only works for ATA
and can do bad things with ATAPI.

The patch does its best to set the flags correctly for drivers/ide.  Its
not 100% perfect but its closer than the original.  100% perfect requires
proper IORDY handling but this isn't critical (and its not right in libata
either ..  yet)

Sergei Shtylyov <sshtylyov@ru.mvista.com> said:

> + { 0, 0 },
> + { 0, 0 },
> + { 1, 0 },
> + { 2, 1 },
> + { 2, 3 }, };
>
>   pio = ide_get_best_pio_mode(drive, pio, 5, NULL);

    BTW, there's quite obvious error here which leads to access outside of
timings[] if somebody passes PIO mode 5 (or autotuning code finds out that
drive supports PIO mode 5). Could have been fixed while at it... Those drives
should be rare, though...

> + }
>   master_data = master_data | (timings[pio][0] << 12) | (timings[pio][1] << 8);
>   }
>   pci_write_config_word(dev, master_port, master_data);

    Actually, there's one more serious issue with piix_tune_drive() -- it
doesn't actually set the drive's own transfer mode.

Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ide: fix revision comparison in ide_in_drive_list
Kirill Smelkov [Tue, 3 Oct 2006 08:14:18 +0000 (01:14 -0700)] 
[PATCH] ide: fix revision comparison in ide_in_drive_list

Fix ide_in_drive_list: drive_table->id_firmware should be searched *in*
id->fw_rev, not vice versa.

Signed-off-by: Kirill Smelkov <kirr@mns.spb.ru>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Enable cdrom dma access with pdc20265_old
Tobias Oed [Tue, 3 Oct 2006 08:14:17 +0000 (01:14 -0700)] 
[PATCH] Enable cdrom dma access with pdc20265_old

This patch allows me to use dma with my cd/dvd attached to my on board
pdc20265 ide controller

Alan sayeth:

  Looks sane.  Would be nice to know if there is any documentation
  supporting this hack being safe but the logic makes sense.  The LBA48 case
  faces the same problem - the state machine gets confused about the transfer
  length and needs kicking

Signed-off-by: Tobias Oed <tobiasoed@hotmail.com>
Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Cc: Jens Axboe <axboe@suse.de>
Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ide_dma_speed() fixes
Sergei Shtylyov [Tue, 3 Oct 2006 08:14:17 +0000 (01:14 -0700)] 
[PATCH] ide_dma_speed() fixes

ide_dma_speed() fails to actually honor the IDE drivers' mode support
masks) because of the bogus checks -- thus, selecting the DMA transfer mode
that the driver explicitly refuses to support is possible.  Additionally,
there is no check for validity of the UltraDMA mode data in the drive ID,
and the function is misdocumented.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Make number of IDE interfaces configurable
Matt Mackall [Tue, 3 Oct 2006 08:14:16 +0000 (01:14 -0700)] 
[PATCH] Make number of IDE interfaces configurable

Make IDE_HWIFS configurable if EMBEDDED

This lets us lop as much as 16k off an x86 build.  It's a little ugly, but
it's dead simple.  Note the fix for HWIFS < 2.

Sizing interfaces dynamically unfortunately turns out to be pretty
major surgery.

add/remove: 0/1 grow/shrink: 0/11 up/down: 0/-16182 (-16182)
function                                     old     new   delta
ide_hwifs                                  16920    1692  -15228
init_irq                                    1113     750    -363
ideprobe_init                                283     138    -145
ide_pci_setup_ports                         1329    1193    -136
save_match                                    85       -     -85
ide_register_hw_with_fixup                   367     287     -80
ide_setup                                   1364    1308     -56
is_chipset_set                                40       4     -36
create_proc_ide_interfaces                   225     205     -20
init_ide_data                                 84      67     -17
ide_probe_for_cmd640x                       1198    1183     -15
ide_unregister                              1452    1451      -1

Signed-off-by: Matt Mackall <mpm@selenic.com>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] IDE error handling fixes
Hua Zhong [Tue, 3 Oct 2006 08:14:15 +0000 (01:14 -0700)] 
[PATCH] IDE error handling fixes

In 2.6.15.1 I encountered some IDE crashes when unplugging IDE cables to
emulate disk errors.  Below is a patch against 2.6.16 which I think still
applies.

1.  The first BUG_ON could trigger when a PREFLUSH IO fails (it would
   fail the original barrier request which hasn't been marked REQ_STARTED
   yet).

2. the rq could have been dequeued already (same as 1).

3.  HWGROUP(drive)->rq could be NULL because of the ide_error() several
   lines earlier.

Signed-off-by: Hua Zhong <hzhong@gmail.com>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] IDE: always release DMA engine
Sergei Shtylylov [Tue, 3 Oct 2006 08:14:14 +0000 (01:14 -0700)] 
[PATCH] IDE: always release DMA engine

Release the DMA engine for the custom mapping IDE drivers also (for
example, siimage.c does allocate it in both I/O-mapped and custom-mapped
modes).  Remove useless code from the error path of
ide_allocate_dma_engine().

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] IDE: claim extra DMA ports regardless of channel
Sergei Shtylylov [Tue, 3 Oct 2006 08:14:13 +0000 (01:14 -0700)] 
[PATCH] IDE: claim extra DMA ports regardless of channel

- Claim extra DMA I/O ports regardless of what IDE channels are
  present/enabled.

- Remove extra ports handling from ide_mapped_mmio_dma() since it's not
  applicable to the custom-mapping IDE drivers.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] non-libata driver for Jmicron devices
Alan Cox [Tue, 3 Oct 2006 08:14:12 +0000 (01:14 -0700)] 
[PATCH] non-libata driver for Jmicron devices

Less functional than libata this just uses the merged interface provided for
dumb legacy OS's.  This is basically a bridge for people not yet ready to use
libata for some reason or another.

Port visibility is entirely dependant on the BIOS setup.

Signed-off-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] scheduler: NUMA aware placement of sched_group_allnodes
Christoph Lameter [Tue, 3 Oct 2006 08:14:11 +0000 (01:14 -0700)] 
[PATCH] scheduler: NUMA aware placement of sched_group_allnodes

When the per cpu sched domains are build then they also need to be placed
on the node where the cpu resides otherwise we will have frequent off node
accesses which will slow down the system.

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Acked-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sched: fixing wrong comment for find_idlest_cpu()
Satoru Takeuchi [Tue, 3 Oct 2006 08:14:10 +0000 (01:14 -0700)] 
[PATCH] sched: fixing wrong comment for find_idlest_cpu()

Fixing wrong comment for find_idlest_cpu().

Signed-off-by: Satoru Takeuchi <takeuchi_satoru@jp.fujitsu.com>
Acked-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sched: cleanup sched_group cpu_power setup
Siddha, Suresh B [Tue, 3 Oct 2006 08:14:09 +0000 (01:14 -0700)] 
[PATCH] sched: cleanup sched_group cpu_power setup

Up to now sched group's cpu_power for each sched domain is initialized
independently.  This made the setup code ugly as the new sched domains are
getting added.

Make the sched group cpu_power setup code generic, by using domain child
field and new domain flag in sched_domain.  For most of the sched
domains(except NUMA), sched group's cpu_power is now computed generically
using the domain properties of itself and of the child domain.

sched groups in NUMA domains are setup little differently and hence they
don't use this generic mechanism.

Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Acked-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Nick Piggin <nickpiggin@yahoo.com.au>
Cc: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sched: introduce child field in sched_domain
Siddha, Suresh B [Tue, 3 Oct 2006 08:14:08 +0000 (01:14 -0700)] 
[PATCH] sched: introduce child field in sched_domain

Introduce the child field in sched_domain struct and use it in
sched_balance_self().

We will also use this field in cleaning up the sched group cpu_power
setup(done in a different patch) code.

Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Acked-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Nick Piggin <nickpiggin@yahoo.com.au>
Cc: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sched: don't print migration cost when only 1 CPU
Dave Jones [Tue, 3 Oct 2006 08:14:07 +0000 (01:14 -0700)] 
[PATCH] sched: don't print migration cost when only 1 CPU

If only a single CPU is present, printing this doesn't make much sense.

Signed-off-by: Dave Jones <davej@redhat.com>
Acked-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sched: remove unnecessary sched group allocations
Siddha, Suresh B [Tue, 3 Oct 2006 08:14:06 +0000 (01:14 -0700)] 
[PATCH] sched: remove unnecessary sched group allocations

Remove dynamic sched group allocations for MC and SMP domains.  These
allocations can easily fail on big systems(1024 or so CPUs) and we can live
with out these dynamic allocations.

[akpm@osdl.org: build fix]
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Acked-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sched: force /sbin/init off isolated cpus
Nick Piggin [Tue, 3 Oct 2006 08:14:04 +0000 (01:14 -0700)] 
[PATCH] sched: force /sbin/init off isolated cpus

Force /sbin/init off isolated cpus (unless every CPU is specified as an
isolcpu).

Users seem to think that the isolated CPUs shouldn't have much running on
them to begin with.  That's fair enough: intuitive, I guess.  It also means
that the cpu affinity masks of tasks will not include isolcpus by default,
which is also more intuitive, perhaps.

/sbin/init is spawned from the boot CPU's idle thread, and /sbin/init
starts the rest of userspace. So if the boot CPU is specified to be an
isolcpu, then prior to this patch, all of userspace will be run there.

(throw in a couple of plausible devinit -> cpuinit conversions I spotted
while we're here).

Signed-off-by: Nick Piggin <npiggin@suse.de>
Cc: Dimitri Sivanich <sivanich@sgi.com>
Acked-by: Paul Jackson <pj@sgi.com>
Acked-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] pata_hpt366: fix typo
OGAWA Hirofumi [Tue, 3 Oct 2006 08:14:03 +0000 (01:14 -0700)] 
[PATCH] pata_hpt366: fix typo

switch(reg1 & 0x700) {
case 5:
info_hpt366.private_data = &hpt366_40;
break;
case 9:
info_hpt366.private_data = &hpt366_25;
break;
default:
info_hpt366.private_data = &hpt366_33;
break;
}

The above runs always default part. It should be "(reg1 & 0x700) >> 8".

Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] MAINTAINERS: Removes duplicated entry
Luiz Fernando N. Capitulino [Tue, 3 Oct 2006 08:14:01 +0000 (01:14 -0700)] 
[PATCH] MAINTAINERS: Removes duplicated entry

The 'STABLE BRANCH' entry is duplicated, remove it.

Signed-off-by: Luiz Fernando N. Capitulino <lcapitulino@mandriva.com.br>
Cc: Greg KH <greg@kroah.com>
Cc: Chris Wright <chrisw@sous-sol.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ia64: note requirement for 8250_pnp, now that 8250_acpi is gone
Bjorn Helgaas [Tue, 3 Oct 2006 08:14:00 +0000 (01:14 -0700)] 
[PATCH] ia64: note requirement for 8250_pnp, now that 8250_acpi is gone

We removed 8250_acpi in 2.6.17.  If we don't have PNPACPI turned on, we
won't find any ACPI serial devices, so mention this requirement in the
troubleshooting part of the documentation.

CONFIG_PNPACPI is already turned on in all the relevant defconfigs.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Acked-by: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] IPMI: allow user to override the kernel IPMI daemon enable
Corey Minyard [Tue, 3 Oct 2006 08:13:59 +0000 (01:13 -0700)] 
[PATCH] IPMI: allow user to override the kernel IPMI daemon enable

After the previous patch to disable the kernel IPMI daemon if interrupts
were available, the issue of broken hardware was raised, and a reasonable
request to add an override was mode.  So here it is.

Allow the user to force the kernel ipmi daemon on or off.  This way,
hardware with broken interrupts or users that are not concerned with
performance can turn it on or off to their liking.

[akpm@osdl.org: save 4 bytes in vmlinux]
Signed-off-by: Corey Minyard <minyard@acm.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Add Pekka to CREDITS
Pekka Enberg [Tue, 3 Oct 2006 08:13:58 +0000 (01:13 -0700)] 
[PATCH] Add Pekka to CREDITS

Whomever said...

  "When you meet someone now who is writing a compiler or hacking a Unix
   kernel, at least you know they're not just doing it to pick up chicks."

...has obviously never met a _Linux_ kernel hacker.

Anyway, sometimes people confuse my email addresses, which is why I
really should add the proper one to CREDITS ;-).

Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] restore parport_pc probing on powermac
Olaf Hering [Tue, 3 Oct 2006 08:13:56 +0000 (01:13 -0700)] 
[PATCH] restore parport_pc probing on powermac

The last change for partport_pc did fix the common case for all PowerMacs,
but it broke the case for PCI multiport IO cards.  In fact, the config
option CONFIG_PARPORT_PC_SUPERIO=y lead to a hard crash when cups probed
the parport driver.  It enables the winbond and smsc probing.

Remove the PARPORT_BASE check again, parport_pc_find_nonpci_ports() will
take care of it.  All powerpc configs should have
CONFIG_PARPORT_PC_SUPERIO=n, the code did not find anything on the chrp
boards we tested it on.

Tested on a G4/466 with a PCI card:

0001:10:13.0 Serial controller: Timedia Technology Co Ltd PCI2S550 (Dual 16550 UART) (rev 01) (prog-if 02 [16550])
        Subsystem: Timedia Technology Co Ltd Unknown device 5079
        Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B-
        Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Interrupt: pin A routed to IRQ 53
        Region 0: I/O ports at f2000800 [size=32]
        Region 2: I/O ports at f2000870 [size=8]
        Region 3: I/O ports at f2000860 [size=8]

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Adam Belay <ambx1@neo.rr.com>
Cc: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ISDN warning fixes
Alan Cox [Tue, 3 Oct 2006 08:13:55 +0000 (01:13 -0700)] 
[PATCH] ISDN warning fixes

Clean up warnings in drivers/isdn by using long not int for the values
where we pass void * and cast to integer types.  The code is ok (ok passing
the stuff this way isn't pretty but the code is valid).  In all the cases I
checked out the right thing happens anyway but this removes all the
warnings.

Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Jeff Garzik <jeff@garzik.org>
Acked-by: Karsten Keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] schedule ftape removal
Jeff Garzik [Tue, 3 Oct 2006 08:13:54 +0000 (01:13 -0700)] 
[PATCH] schedule ftape removal

Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] drivers/char/ip2: kill unused code, label
Jeff Garzik [Tue, 3 Oct 2006 08:13:53 +0000 (01:13 -0700)] 
[PATCH] drivers/char/ip2: kill unused code, label

Kill warning:

drivers/char/ip2/ip2main.c: In function Ã¢\80\98ip2_loadmainâ\80\99:
drivers/char/ip2/ip2main.c:782: warning: label Ã¢\80\98out_classâ\80\99 defined but not used

This driver's initialization (and cleanup of errors during init) is
extremely convoluted, and could stand to be transformed into the standard
unwinding-goto style of error cleanup.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
Acked-by: Michael H. Warfield <mhw@wittsend.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ipmi: fix uninitialized data bug
Jeff Garzik [Tue, 3 Oct 2006 08:13:52 +0000 (01:13 -0700)] 
[PATCH] ipmi: fix uninitialized data bug

gcc issues the following warning:

drivers/char/ipmi/ipmi_si_intf.c: In function Ã¢\80\98init_ipmi_siâ\80\99:
drivers/char/ipmi/ipmi_si_intf.c:1729: warning: Ã¢\80\98data.irqâ\80\99 may be used uninitialized in this function

This is indeed a bug.  data.irq is completely uninitialized in some code
paths.  Worse than that, data from a previous decode_dmi() run can easily
leak through successive calls.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
Acked-by: Corey Minyard <minyard@acm.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] fs/eventpoll: error handling micro-cleanup
Jeff Garzik [Tue, 3 Oct 2006 08:13:52 +0000 (01:13 -0700)] 
[PATCH] fs/eventpoll: error handling micro-cleanup

While reviewing the 'may be used uninitialized' bogus gcc warnings, I
noticed that an error code assignment was only needed if an error had
actually occured.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
Cc: Davide Libenzi <davidel@xmailserver.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] kernel-doc for kernel/resource.c
Randy Dunlap [Tue, 3 Oct 2006 08:13:51 +0000 (01:13 -0700)] 
[PATCH] kernel-doc for kernel/resource.c

Add kernel-doc function headers in kernel/resource.c and use them in DocBook.

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] kernel-doc for kernel/dma.c
Randy Dunlap [Tue, 3 Oct 2006 08:13:50 +0000 (01:13 -0700)] 
[PATCH] kernel-doc for kernel/dma.c

Add kernel-doc function headers in kernel/dma.c and use it in DocBook.

Clean up kernel-doc in mca_dma.h (the colon (':') represents a
section header).

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] low performance of lib/sort.c
keios [Tue, 3 Oct 2006 08:13:49 +0000 (01:13 -0700)] 
[PATCH] low performance of lib/sort.c

It is a non-standard heap-sort algorithm implementation because the index
of child node is wrong .  The sort function still outputs right result, but
the performance is O( n * ( log(n) + 1 ) ) , about 10% ~ 20% worse than
standard algorithm.

Signed-off-by: keios <keios.cn@gmail.com>
Acked-by: Matt Mackall <mpm@selenic.com>
Acked-by: Zou Nan hai <nanhai.zou@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Create kallsyms_lookup_size_offset()
Franck Bui-Huu [Tue, 3 Oct 2006 08:13:48 +0000 (01:13 -0700)] 
[PATCH] Create kallsyms_lookup_size_offset()

Some uses of kallsyms_lookup() do not need to find out the name of a symbol
and its module's name it belongs.  This is specially true in arch specific
code, which needs to unwind the stack to show the back trace during oops
(mips is an example).  In this specific case, we just need to retreive the
function's size and the offset of the active intruction inside it.

Adds a new entry "kallsyms_lookup_size_offset()" This new entry does
exactly the same as kallsyms_lookup() but does not require any buffers to
store any names.

It returns 0 if it fails otherwise 1.

Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] FRV: Permit large kmalloc allocations [try #2]
David Howells [Tue, 3 Oct 2006 08:13:47 +0000 (01:13 -0700)] 
[PATCH] FRV: Permit large kmalloc allocations [try #2]

Permit kmalloc() to make allocations of up to 32MB if so configured.  This
may be useful under NOMMU conditions where vmalloc() can't do this.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] VFS: Make filldir_t and struct kstat deal in 64-bit inode numbers
David Howells [Tue, 3 Oct 2006 08:13:46 +0000 (01:13 -0700)] 
[PATCH] VFS: Make filldir_t and struct kstat deal in 64-bit inode numbers

These patches make the kernel pass 64-bit inode numbers internally when
communicating to userspace, even on a 32-bit system.  They are required
because some filesystems have intrinsic 64-bit inode numbers: NFS3+ and XFS
for example.  The 64-bit inode numbers are then propagated to userspace
automatically where the arch supports it.

Problems have been seen with userspace (eg: ld.so) using the 64-bit inode
number returned by stat64() or getdents64() to differentiate files, and
failing because the 64-bit inode number space was compressed to 32-bits, and
so overlaps occur.

This patch:

Make filldir_t take a 64-bit inode number and struct kstat carry a 64-bit
inode number so that 64-bit inode numbers can be passed back to userspace.

The stat functions then returns the full 64-bit inode number where
available and where possible.  If it is not possible to represent the inode
number supplied by the filesystem in the field provided by userspace, then
error EOVERFLOW will be issued.

Similarly, the getdents/readdir functions now pass the full 64-bit inode
number to userspace where possible, returning EOVERFLOW instead when a
directory entry is encountered that can't be properly represented.

Note that this means that some inodes will not be stat'able on a 32-bit
system with old libraries where they were before - but it does mean that
there will be no ambiguity over what a 32-bit inode number refers to.

Note similarly that directory scans may be cut short with an error on a
32-bit system with old libraries where the scan would work before for the
same reasons.

It is judged unlikely that this situation will occur because modern glibc
uses 64-bit capable versions of stat and getdents class functions
exclusively, and that older systems are unlikely to encounter
unrepresentable inode numbers anyway.

[akpm: alpha build fix]
Signed-off-by: David Howells <dhowells@redhat.com>
Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] pid.h cleanup
Andrew Morton [Tue, 3 Oct 2006 08:13:45 +0000 (01:13 -0700)] 
[PATCH] pid.h cleanup

Make the pid.h macros look less revolting in an 80-col window.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Add unifdef to gitignore
Paul Mundt [Tue, 3 Oct 2006 02:26:34 +0000 (11:26 +0900)] 
[PATCH] Add unifdef to gitignore

This seems to have been missed when unifdef went in
via Sam's tree..

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] hp100: fix conditional compilation mess
Jeff Garzik [Tue, 3 Oct 2006 01:08:22 +0000 (21:08 -0400)] 
[PATCH] hp100: fix conditional compilation mess

The previous hp100 changeset attempted to kill warnings, but was only
tested on !CONFIG_ISA platforms.  The correct conditional compilation
setup involves tested CONFIG_ISA rather than just MODULE.

Fixes link on CONFIG_ISA platforms (i386) in current -git.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] revert "insert IOAPIC(s) and Local APIC into resource map"
Andrew Morton [Tue, 3 Oct 2006 00:24:06 +0000 (17:24 -0700)] 
[PATCH] revert "insert IOAPIC(s) and Local APIC into resource map"

Commit 54dbc0c9ebefb38840c6b07fa6eabaeb96c921f5 is causing various
people's machines to fail to map PCI resources.

Revert it in preparation for addressing the show-APICs-in-/proc/iomem
requirement in a different manner.

Cc: Aaron Durbin <adurbin@google.com>
Cc: Andi Kleen <ak@muc.de>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland...
Linus Torvalds [Mon, 2 Oct 2006 22:29:11 +0000 (15:29 -0700)] 
Merge branch 'for-linus' of git://git./linux/kernel/git/roland/infiniband

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
  IB/ehca: Tweak trace message format
  IB/ehca: Fix device registration
  IB/ipath: Fix RDMA reads
  RDMA/cma: Optimize error handling
  RDMA/cma: Eliminate unnecessary remove_list
  RDMA/cma: Set status correctly on route resolution error
  RDMA/cma: Fix device removal race
  RDMA/cma: Fix leak of cm_ids in case of failures

18 years agoIB/ehca: Tweak trace message format
Hoang-Nam Nguyen [Mon, 2 Oct 2006 21:52:17 +0000 (14:52 -0700)] 
IB/ehca: Tweak trace message format

Add an extra space to make things more readable.

Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIB/ehca: Fix device registration
Hoang-Nam Nguyen [Mon, 2 Oct 2006 21:52:17 +0000 (14:52 -0700)] 
IB/ehca: Fix device registration

Move the call to ib_register_device() later, since a device should not
be registered until it is completely read to be used.  This fixes
crashes that occur if an upper-layer driver such as IPoIB is loaded
before the ehca module.

Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIB/ipath: Fix RDMA reads
Ralph Campbell [Fri, 29 Sep 2006 21:37:51 +0000 (14:37 -0700)] 
IB/ipath: Fix RDMA reads

The PSN used to generate the request following a RDMA read was
incorrect and some state booking wasn't maintained correctly.  This
patch fixes that.

Signed-off-by: Ralph Campbell <ralph.campbell@qlogic.com>
Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com>
18 years agoRDMA/cma: Optimize error handling
Krishna Kumar [Fri, 29 Sep 2006 19:09:51 +0000 (12:09 -0700)] 
RDMA/cma: Optimize error handling

Reorganize code relating to cma_get_net_info() and rdam_create_id() to
optimize error case handling (no need to alloc memory/etc. as part of
rdma_create_id() if input parameters are wrong).

Signed-off-by: Krishna Kumar <krkumar2@in.ibm.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoRDMA/cma: Eliminate unnecessary remove_list
Krishna Kumar [Fri, 29 Sep 2006 19:03:35 +0000 (12:03 -0700)] 
RDMA/cma: Eliminate unnecessary remove_list

Eliminate remove_list by using list_del_init() instead during device
removal handling.

Signed-off-by: Krishna Kumar <krkumar2@in.ibm.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoRDMA/cma: Set status correctly on route resolution error
Sean Hefty [Fri, 29 Sep 2006 18:57:09 +0000 (11:57 -0700)] 
RDMA/cma: Set status correctly on route resolution error

On reporting a route error, also include the status for the error,
rather than indicating a status of 0 when an error has occurred.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoRDMA/cma: Fix device removal race
Krishna Kumar [Fri, 29 Sep 2006 18:51:49 +0000 (11:51 -0700)] 
RDMA/cma: Fix device removal race

The race is as follows:

A process : cma_process_remove() calls cma_remove_id_dev(),
    which sets id state to CMA_DEVICE_REMOVAL and
    calls wait_event(dev_remove).

B process : cma_req_handler() had incremented dev_remove,
    and calls cma_acquire_ib_dev() and on failure
    calls cma_release_remove(), which does a
    wake_up of cma_process_remove(). Then
    cma_req_handler() calls rdma_destroy_id();

A Process : cma_remove_id_dev() gets woken and checks the
    state of id, and since it is still (wrongly)
    CMA_DEVICE_REMOVAL, it calls notify_user(id)
    and if that fails, the caller - cma_process_remove()
    calls rdma_destroy_id(id). Two processes can
    call rdma_destroy_id(), resulting in one
    de-referencing kfreed id_priv.

Fix is for process B to set CMA_DESTROYING in cma_req_handler()
so that process A will return instead of doing a rdma_destroy_id().

Signed-off-by: Krishna Kumar <krkumar2@in.ibm.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoRDMA/cma: Fix leak of cm_ids in case of failures
Krishna Kumar [Fri, 29 Sep 2006 18:47:06 +0000 (11:47 -0700)] 
RDMA/cma: Fix leak of cm_ids in case of failures

cma_connect_ib() and cma_connect_iw() leak cm_id's in failure cases.

Signed-off-by: Krishna Kumar <krkumar2@in.ibm.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
Linus Torvalds [Mon, 2 Oct 2006 21:48:07 +0000 (14:48 -0700)] 
Merge /linux/kernel/git/wim/linux-2.6-watchdog

* master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
  [WATCHDOG] improve machzwd detection
  [WATCHDOG] use ENOTTY instead of ENOIOCTLCMD in ioctl()
  [WATCHDOG] s3c24XX nowayout
  [WATCHDOG] pnx4008: add cpu_relax()
  [WATCHDOG] pnx4008_wdt.c - spinlock fixes.
  [WATCHDOG] pnx4008_wdt.c - remove patch
  [WATCHDOG] pnx4008_wdt.c - nowayout patch
  [WATCHDOG] pnx4008: add watchdog support
  [WATCHDOG] i8xx_tco remove pci_find_device.
  [WATCHDOG] alim remove pci_find_device

18 years ago[WATCHDOG] improve machzwd detection
Dave Jones [Tue, 1 Aug 2006 18:06:43 +0000 (20:06 +0200)] 
[WATCHDOG] improve machzwd detection

On a machine with no machzwd, loading the module prints out..

machzwd: MachZ ZF-Logic Watchdog driver initializing.
0xffff
machzwd: Watchdog using action = RESET

- the 0xffff printk is unnecessary
- 0xffff seems to be 'hardware not present'
- fix CodingStyle. (This driver could use some more work here)

Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@osdl.org>
18 years ago[WATCHDOG] use ENOTTY instead of ENOIOCTLCMD in ioctl()
Samuel Tardieu [Sat, 9 Sep 2006 15:34:31 +0000 (17:34 +0200)] 
[WATCHDOG] use ENOTTY instead of ENOIOCTLCMD in ioctl()

Return ENOTTY instead of ENOIOCTLCMD in user-visible ioctl() results

The watchdog drivers used to return ENOIOCTLCMD for bad ioctl() commands.
ENOIOCTLCMD should not be visible by the user, so use ENOTTY instead.

Signed-off-by: Samuel Tardieu <sam@rfc1149.net>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
18 years ago[WATCHDOG] s3c24XX nowayout
Ben Dooks [Wed, 6 Sep 2006 11:24:35 +0000 (12:24 +0100)] 
[WATCHDOG] s3c24XX nowayout

If the driver is not configured for `no way out`,
then the open method should not automatically allow
the setting of allow_close to CLOSE_STATE_ALLOW.

The setting of allow_close nullifies the use of
the magic close via the write path. It means that
in the default state, the watchdog will shut-down
even if the magic close has not been issued.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
18 years ago[WATCHDOG] pnx4008: add cpu_relax()
Vitaly Wool [Mon, 11 Sep 2006 10:42:39 +0000 (14:42 +0400)] 
[WATCHDOG] pnx4008: add cpu_relax()

Added cpu_relax as suggested by Alan Cox.

Signed-off-by: Vitaly Wool <vitalywool@gmail.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
18 years ago[WATCHDOG] pnx4008_wdt.c - spinlock fixes.
Wim Van Sebroeck [Sun, 10 Sep 2006 10:48:15 +0000 (12:48 +0200)] 
[WATCHDOG] pnx4008_wdt.c - spinlock fixes.

Add io spinlocks to prevent possible race
conditions between start and stop operations
that are issued from different child processes
where the master process opened /dev/watchdog.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
18 years agoAdd prototype for sigset_from_compat()
Linus Torvalds [Mon, 2 Oct 2006 21:05:20 +0000 (14:05 -0700)] 
Add prototype for sigset_from_compat()

Duh.  I screwed up editing David Howells patch in commit
3f2e05e90e0846c42626e3d272454f26be34a1bc, and the actual declaration for
the sigset_from_compat() function went missing. My bad.

Olaf Hering saved the day and noticed that I'm a moron.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[WATCHDOG] pnx4008_wdt.c - remove patch
Wim Van Sebroeck [Sun, 30 Jul 2006 18:06:07 +0000 (20:06 +0200)] 
[WATCHDOG] pnx4008_wdt.c - remove patch

Change remove code so that we first detach
the driver from userspace, then clean up the
clock and then clean up the memory we allocated.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
18 years ago[WATCHDOG] pnx4008_wdt.c - nowayout patch
Wim Van Sebroeck [Mon, 3 Jul 2006 07:03:47 +0000 (09:03 +0200)] 
[WATCHDOG] pnx4008_wdt.c - nowayout patch

Change nowayout to: WATCHDOG_NOWAYOUT as defined
in include/linux/watchdog.h .

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
18 years ago[WATCHDOG] pnx4008: add watchdog support
Vitaly Wool [Mon, 26 Jun 2006 15:31:49 +0000 (19:31 +0400)] 
[WATCHDOG] pnx4008: add watchdog support

Add watchdog support for Philips PNX4008 ARM board inlined.

Signed-off-by: Vitaly Wool <vitalywool@gmail.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
18 years ago[WATCHDOG] i8xx_tco remove pci_find_device.
Jiri Slaby [Wed, 19 Jul 2006 00:19:23 +0000 (02:18 +0159)] 
[WATCHDOG] i8xx_tco remove pci_find_device.

Use refcounting for pci device obtaining.
Use PCI_DEVICE macro.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Cc: Andrew Morton <akpm@osdl.org>
18 years ago[WATCHDOG] alim remove pci_find_device
Jiri Slaby [Tue, 18 Jul 2006 16:30:00 +0000 (18:29 +0159)] 
[WATCHDOG] alim remove pci_find_device

Convert pci_find_device to pci_get_device + pci_dev_put
in alim watchdog cards' drivers (refcounting).

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@osdl.org>
18 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Mon, 2 Oct 2006 15:56:58 +0000 (08:56 -0700)] 
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/netdev-2.6

* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (37 commits)
  [netdrvr] hp100: encapsulate all non-module code
  drivers/net/wireless/{airo,ipw2100}: fix error handling bugs
  [netdrvr] phy: Fix bugs in error handling
  [PATCH] spidernet: Use pci_dma_mapping_error()
  [PATCH] sky2: version 1.9
  [PATCH] sky2: fragmented receive for large MTU
  [PATCH] sky2: use netif_tx_lock instead of LLTX
  [PATCH] sky2: incremental transmit completion
  [PATCH] sky2: name irq after eth for irqbalance
  [PATCH] sky2: workarounds for some 88e806x chips
  [PATCH] sky2: use standard pci register capabilties for error register
  [PATCH] sky2: gigabit full duplex negotiation
  e100, e1000, ixgb: increment version numbers
  ixgb: convert to netdev_priv(netdev)
  ixgb: combine more rx descriptors to improve performance
  e1000: possible memory leak in e1000_set_ringparam
  e1000: Janitor: Use #defined values for literals
  e1000: don't strip vlan ID if 8021q claims it
  e1000: rework polarity, NVM, eeprom code and fixes.
  e1000: driver state fixes (race fix)
  ...

18 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy...
Linus Torvalds [Mon, 2 Oct 2006 15:27:09 +0000 (08:27 -0700)] 
Merge branch 'for-linus' of git://git./linux/kernel/git/shaggy/jfs-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2.6:
  JFS: White space cleanup
  [PATCH] JFS: return correct error when i-node allocation failed
  JFS: Remove shadow variable from fs/jfs/jfs_txnmgr.c:xtLog()

18 years agoMerge git://git.infradead.org/mtd-2.6
Linus Torvalds [Mon, 2 Oct 2006 15:22:17 +0000 (08:22 -0700)] 
Merge git://git.infradead.org/mtd-2.6

* git://git.infradead.org/mtd-2.6:
  [MTD] Cleanup of 'ioremap balanced with iounmap for drivers/mtd subsystem'
  [MTD] fix nftl_write warning
  [MTD] fix printk warning
  [MTD ONENAND] Check OneNAND lock scheme & all block unlock command support
  [MTD ONENAND] Remove unused MTD_ONENAND_SYNC_READ configuration
  [MTD ONENAND] Fix OneNAND probe
  [MTD NAND] Provide prototype for newly-exported nand_wait_ready()
  [MTD] Remove #ifndef __KERNEL__ hack in <mtd/mtd-abi.h>
  [MTD NAND] Allow override of page read and write functions.
  [MTD NAND] Allocate chip->buffers separately to allow it to be overridden
  [MTD NAND] Split nand_scan() into two parts; allow board driver to intervene
  [MTD NAND] Export nand_wait_ready() for use by board drivers

18 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
Linus Torvalds [Mon, 2 Oct 2006 15:20:33 +0000 (08:20 -0700)] 
Merge branch 'for-linus' of git://git./linux/kernel/git/dtor/input

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (35 commits)
  Input: wistron - add support for Acer TravelMate 2424NWXCi
  Input: wistron - fix setting up special buttons
  Input: add KEY_BLUETOOTH and KEY_WLAN definitions
  Input: add new BUS_VIRTUAL bus type
  Input: add driver for stowaway serial keyboards
  Input: make input_register_handler() return error codes
  Input: remove cruft that was needed for transition to sysfs
  Input: fix input module refcounting
  Input: constify input core
  Input: libps2 - rearrange exports
  Input: atkbd - support Microsoft Natural Elite Pro keyboards
  Input: i8042 - disable MUX mode on Toshiba Equium A110
  Input: i8042 - get rid of polling timer
  Input: send key up events at disconnect
  Input: constify psmouse driver
  Input: i8042 - add Amoi to the MUX blacklist
  Input: logips2pp - add sugnature 56 (Cordless MouseMan Wheel), cleanup
  Input: add driver for Touchwin serial touchscreens
  Input: add driver for Touchright serial touchscreens
  Input: add driver for Penmount serial touchscreens
  ...

18 years agoMerge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
Linus Torvalds [Mon, 2 Oct 2006 15:18:43 +0000 (08:18 -0700)] 
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus

* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
  [MIPS] Remove unused galileo-boars header files
  [MIPS] Rename SERIAL_PORT_DEFNS for EV64120
  [MIPS] Add UART IRQ number for EV64120
  [MIPS] Remove excite_flash.c
  [MIPS] Update i8259 resources.
  [MIPS] Make unwind_stack() can dig into interrupted context
  [MIPS] Stacktrace build-fix and improvement
  [MIPS] QEMU: Add support for little endian mips
  [MIPS] Remove __flush_icache_page
  [MIPS] lockdep: update defconfigs
  [MIPS] lockdep: Add STACKTRACE_SUPPORT and enable LOCKDEP_SUPPORT
  [MIPS] lockdep: fix TRACE_IRQFLAGS_SUPPORT

18 years ago[PATCH] BLOCK: Revert patch to hack around undeclared sigset_t in linux/compat.h
David Howells [Mon, 2 Oct 2006 13:12:31 +0000 (14:12 +0100)] 
[PATCH] BLOCK: Revert patch to hack around undeclared sigset_t in linux/compat.h

Revert Andrew Morton's patch to temporarily hack around the lack of a
declaration of sigset_t in linux/compat.h to make the block-disablement
patches build on IA64.  This got accidentally pushed to Linus and should
be fixed in a different manner.

Also make linux/compat.h #include asm/signal.h to gain a definition of
sigset_t so that it can externally declare sigset_from_compat().

This has been compile-tested for i386, x86_64, ia64, mips, mips64, frv, ppc and
ppc64 and run-tested on frv.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] replace cad_pid by a struct pid
Cedric Le Goater [Mon, 2 Oct 2006 09:19:00 +0000 (02:19 -0700)] 
[PATCH] replace cad_pid by a struct pid

There are a few places in the kernel where the init task is signaled.  The
ctrl+alt+del sequence is one them.  It kills a task, usually init, using a
cached pid (cad_pid).

This patch replaces the pid_t by a struct pid to avoid pid wrap around
problem.  The struct pid is initialized at boot time in init() and can be
modified through systctl with

/proc/sys/kernel/cad_pid

[ I haven't found any distro using it ? ]

It also introduces a small helper routine kill_cad_pid() which is used
where it seemed ok to use cad_pid instead of pid 1.

[akpm@osdl.org: cleanups, build fix]
Signed-off-by: Cedric Le Goater <clg@fr.ibm.com>
Cc: Eric W. Biederman <ebiederm@xmission.com>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] introduce get_task_pid() to fix unsafe get_pid()
Oleg Nesterov [Mon, 2 Oct 2006 09:18:59 +0000 (02:18 -0700)] 
[PATCH] introduce get_task_pid() to fix unsafe get_pid()

proc_pid_make_inode:

ei->pid = get_pid(task_pid(task));

I think this is not safe.  get_pid() can be preempted after checking "pid
!= NULL".  Then the task exits, does detach_pid(), and RCU frees the pid.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] proc: comment what proc_fill_cache does
Eric W. Biederman [Mon, 2 Oct 2006 09:18:57 +0000 (02:18 -0700)] 
[PATCH] proc: comment what proc_fill_cache does

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Cc: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] proc: remove the useless SMP-safe comments from /proc
Eric W. Biederman [Mon, 2 Oct 2006 09:18:57 +0000 (02:18 -0700)] 
[PATCH] proc: remove the useless SMP-safe comments from /proc

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Cc: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] proc: remove trailing blank entry from pid_entry arrays
Eric W. Biederman [Mon, 2 Oct 2006 09:18:56 +0000 (02:18 -0700)] 
[PATCH] proc: remove trailing blank entry from pid_entry arrays

It was pointed out that since I am taking ARRAY_SIZE anyway the trailing empty
entry is silly and just wastes space.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Cc: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] proc: properly compute TGID_OFFSET
Eric W. Biederman [Mon, 2 Oct 2006 09:18:55 +0000 (02:18 -0700)] 
[PATCH] proc: properly compute TGID_OFFSET

The value doesn't change but this ensures I will have the proper value when
other files are added to proc_base_stuff.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Cc: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] proc: drop tasklist lock in task_state()
Oleg Nesterov [Mon, 2 Oct 2006 09:18:54 +0000 (02:18 -0700)] 
[PATCH] proc: drop tasklist lock in task_state()

task_state() needs tasklist_lock to protect ->parent/->real_parent.  However
task->parent points to nowhere only when the actions below happen in order

1) release_task(task)
2) release_task(task->parent)
3) a grace period passed

But 3) implies that the memory ops from 1) should be finished, so pid_alive()
can't be true in such a case.

Otherwise, we don't care if ->parent/->real_parent changes under us.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] proc: convert do_task_stat() to use lock_task_sighand()
Oleg Nesterov [Mon, 2 Oct 2006 09:18:53 +0000 (02:18 -0700)] 
[PATCH] proc: convert do_task_stat() to use lock_task_sighand()

Drop tasklist_lock. ->siglock protects almost all interesting data
(including sub-threads traversal) except:

->signal->tty
protected by tty_mutex

->real_parent
the task can't be unhashed while we are holding
->siglock, so ->real_parent can change from under us
but we can safely dereference it under rcu_read_lock()

->pgrp/->session
we can get inconsistent numbers if the task does
sys_setsid/daemonize at the same time. I hope this
is acceptable.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] proc: convert task_sig() to use lock_task_sighand()
Oleg Nesterov [Mon, 2 Oct 2006 09:18:52 +0000 (02:18 -0700)] 
[PATCH] proc: convert task_sig() to use lock_task_sighand()

lock_task_sighand() can take ->siglock without holding tasklist_lock.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] proc: Use pid_task instead of open coding it
Eric W. Biederman [Mon, 2 Oct 2006 09:18:51 +0000 (02:18 -0700)] 
[PATCH] proc: Use pid_task instead of open coding it

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] proc: Merge proc_tid_attr and proc_tgid_attr
Eric W. Biederman [Mon, 2 Oct 2006 09:18:50 +0000 (02:18 -0700)] 
[PATCH] proc: Merge proc_tid_attr and proc_tgid_attr

The implementation is exactly the same and there is currently nothing to
distinguish proc_tid_attr, and proc_tgid_attr.  So it is pointless to have two
separate implementations.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] proc: Remove the hard coded inode numbers
Eric W. Biederman [Mon, 2 Oct 2006 09:18:49 +0000 (02:18 -0700)] 
[PATCH] proc: Remove the hard coded inode numbers

The hard coded inode numbers in proc currently limit its maintainability,
its flexibility, and what can be done with the rest of system.  /proc limits
pid-max to 32768 on 32 bit systems it limits fd-max to 32768 on all systems,
and placing the pid in the inode number really gets in the way of implementing
subdirectories of per process information.

Ever since people started adding to the middle of the file type enumeration we
haven't been maintaing the historical inode numbers, all we have really
succeeded in doing is keeping the pid in the proc inode number.  The pid is
already available in the directory name so no information is lost removing it
from the inode number.

So if something in user space cares if we remove the inode number from the
/proc inode it is almost certainly broken.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] proc: Factor out an instantiate method from every lookup method
Eric W. Biederman [Mon, 2 Oct 2006 09:18:49 +0000 (02:18 -0700)] 
[PATCH] proc: Factor out an instantiate method from every lookup method

To remove the hard coded proc inode numbers it is necessary to be able to
create the proc inodes during readdir.  The instantiate methods are the subset
of lookup that is needed to accomplish that.

This first step just splits the lookup methods into 2 functions.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] proc: Make the generation of the self symlink table driven
Eric W. Biederman [Mon, 2 Oct 2006 09:18:48 +0000 (02:18 -0700)] 
[PATCH] proc: Make the generation of the self symlink table driven

This patch generalizes the concept of files in /proc that are related to
processes but live in the root directory of /proc

Ideally this would reuse infrastructure from the rest of the process specific
parts of proc but unfortunately security_task_to_inode must not be called on
files that are not strictly per process.  security_task_to_inode really needs
to be reexamined as the security label can change in important places that we
are not currently catching, but I'm not certain that simplifies this problem.

By at least matching the structure of the rest of proc we get more idiom reuse
and it becomes easier to spot problems in the way things are put together.

Later things like /proc/mounts are likely to be moved into proc_base as well.
If union mounts are ever supported we may be able to make /proc a union mount,
and properly split it into 2 filesystems.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] AVR32: Implement kernel_execve
Haavard Skinnemoen [Mon, 2 Oct 2006 09:18:46 +0000 (02:18 -0700)] 
[PATCH] AVR32: Implement kernel_execve

Move execve() into arch/avr32/kernel/sys_avr32.c, rename it to
kernel_execve() and return the syscall return value directly without
setting errno.

This also gets rid of the __KERNEL_SYSCALLS__ stuff from unistd.h and
expands #ifdef __KERNEL__ to cover everything in unistd.h except the
__NR_foo definitions.

Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>