03 Oct, 2006
27 commits
-
A few of these managed to sneak back in, get rid of them once
and for all.Signed-off-by: Paul Mundt
-
Ignore build-time generated files.
Signed-off-by: Paul Mundt
-
Get all of the defconfigs building again.
Signed-off-by: Paul Mundt
-
Some old rtc and io headers were left hanging around, kill them off..
Signed-off-by: Paul Mundt
-
CPU sub-types set the pclk default in Kconfig, add one
for SH7705.Signed-off-by: Paul Mundt
-
Sync up all of the defconfigs, and kill off a few old ones..
Signed-off-by: Paul Mundt
-
* '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 -
Add an extra space to make things more readable.
Signed-off-by: Hoang-Nam Nguyen
Signed-off-by: Roland Dreier -
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
Signed-off-by: Roland Dreier -
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
Signed-off-by: Bryan O'Sullivan -
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
Signed-off-by: Sean Hefty
Signed-off-by: Roland Dreier -
Eliminate remove_list by using list_del_init() instead during device
removal handling.Signed-off-by: Krishna Kumar
Signed-off-by: Sean Hefty
Signed-off-by: Roland Dreier -
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
Signed-off-by: Roland Dreier -
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
Signed-off-by: Sean Hefty
Signed-off-by: Roland Dreier -
cma_connect_ib() and cma_connect_iw() leak cm_id's in failure cases.
Signed-off-by: Krishna Kumar
Signed-off-by: Sean Hefty
Signed-off-by: Roland Dreier -
* 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 -
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
Signed-off-by: Wim Van Sebroeck
Signed-off-by: Andrew Morton -
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
Signed-off-by: Wim Van Sebroeck
Acked-by: Alan Cox
Signed-off-by: Andrew Morton -
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
-
Added cpu_relax as suggested by Alan Cox.
Signed-off-by: Vitaly Wool
Signed-off-by: Wim Van Sebroeck -
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
-
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
-
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
-
Change nowayout to: WATCHDOG_NOWAYOUT as defined
in include/linux/watchdog.h .Signed-off-by: Wim Van Sebroeck
-
Add watchdog support for Philips PNX4008 ARM board inlined.
Signed-off-by: Vitaly Wool
Signed-off-by: Wim Van Sebroeck -
Use refcounting for pci device obtaining.
Use PCI_DEVICE macro.Signed-off-by: Jiri Slaby
Signed-off-by: Wim Van Sebroeck
Cc: Andrew Morton -
Convert pci_find_device to pci_get_device + pci_dev_put
in alim watchdog cards' drivers (refcounting).Signed-off-by: Jiri Slaby
Signed-off-by: Wim Van Sebroeck
Signed-off-by: Andrew Morton
02 Oct, 2006
13 commits
-
* '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)
... -
* '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() -
* 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 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 -
* '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
... -
* '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 -
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
Signed-off-by: Linus Torvalds -
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
Cc: Eric W. Biederman
Cc: Martin Schwidefsky
Cc: Paul Mackerras
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
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
Cc: "Eric W. Biederman"
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Signed-off-by: Eric W. Biederman
Cc: Oleg Nesterov
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Signed-off-by: Eric W. Biederman
Cc: Oleg Nesterov
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
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
Cc: Oleg Nesterov
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
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
Cc: Oleg Nesterov
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
task_state() needs tasklist_lock to protect ->parent/->real_parent. However
task->parent points to nowhere only when the actions below happen in order1) release_task(task)
2) release_task(task->parent)
3) a grace period passedBut 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
Cc: "Eric W. Biederman"
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds