Matthew Dharm [Thu, 28 Jul 2005 21:44:29 +0000 (14:44 -0700)]
[PATCH] USB Storage: close a race condition in disconnect near probe
This patch started life as as533, and has been re-diffed against the
current tree.
Disconnect processing in usb-storage naturally divides into two parts:
one to quiesce the driver (make sure no commands are executing or
queued) and remove the host, and the other to deallocate all the USB and
non-USB resources. This patch creates two subroutines to handle those
two parts. Mostly it's just code movement, but there is one significant
change. If the scsi-scanning thread fails to initialize but the host
has successfully been added, we need to quiesce the driver before
removing the host. After all, it's possible that scanning could have
been initiated from somewhere else, such as userspace -- very low
probability, but it's easily handled by calling the new subroutine.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Matthew Dharm <mdharm-usb@one-eyed-alien.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Matthew Dharm [Thu, 28 Jul 2005 21:43:08 +0000 (14:43 -0700)]
[PATCH] USB Storage: remove dependency on SCSI-provided serial/tag number
This patch started life as as531 from Alan Stern. It has been rediffed
against the latest tree.
The SCSI people have deprecated the use of scsi_cmnd.serial_number for
anything other than printk. Worse than that, the SCSI core doesn't
always increment the number (when the error handler is running, for
example). So this patch creates a locally-stored value for use in
bulk-only tags. The net result is a simplification, since we no longer
have to save & restore the serial_number value while autosensing.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Matthew Dharm <mdharm-usb@one-eyed-alien.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Olav Kongas [Fri, 5 Aug 2005 11:23:35 +0000 (14:23 +0300)]
[PATCH] USB: Switch isp116x-hcd over to root hub interrupt
Switch isp116x-hcd over from root hub polling to interrupt. This change closes
also a race that was present with the old polling scheme: status polling could
happen in a time window, where root hub status bits were not stable.
Signed-off-by: Olav Kongas <ok@artecdesign.ee>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Olav Kongas [Thu, 4 Aug 2005 14:02:54 +0000 (17:02 +0300)]
[PATCH] USB: isp116x-hcd: remove clock() and reset()
This patch removes support for user-provided platform-specific hardware reset
and clock starting/stopping functions. Hardware reset was needed earlier as
getting the software reset working was tricky due to the lack of documentation.
Recently, a number of people using isp116x have said the software reset is
working for them.
I haven't heard of anybody using the clock starting/stopping.
Signed-off-by: Olav Kongas <ok@artecdesign.ee>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Olav Kongas [Thu, 4 Aug 2005 13:54:08 +0000 (16:54 +0300)]
[PATCH] USB: isp116x-hcd: per-port overcurrent reporting
This patch sets the isp116x to report overcurrent always per-port.
Signed-off-by: Olav Kongas <ok@artecdesign.ee>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Olav Kongas [Thu, 4 Aug 2005 13:52:31 +0000 (16:52 +0300)]
[PATCH] USB: isp116x-hcd: support only per-port power switching
The isp116x chip will now always be in per-port power switching mode. Remove
conf options to set any other mode.
Signed-off-by: Olav Kongas <ok@artecdesign.ee>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Olav Kongas [Thu, 4 Aug 2005 13:48:19 +0000 (16:48 +0300)]
[PATCH] USB: isp116x-hcd: remove unnecessary ClockNotStop configuration option
Signed-off-by: Olav Kongas <ok@artecdesign.ee>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Olav Kongas [Thu, 4 Aug 2005 13:46:28 +0000 (16:46 +0300)]
[PATCH] USB: isp116x-hcd: use fixed power-on-to-power-good-time
This patch removes the power-on-to-power-good-time configuration option for
isp116x-hcd.
Signed-off-by: Olav Kongas <ok@artecdesign.ee>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
david-b@pacbell.net [Fri, 29 Jul 2005 03:46:32 +0000 (20:46 -0700)]
[PATCH] USB: usbnet and unsigned gfp_flags
This just fixes some gfp flags warnings that joined us recently.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Randy Dunlap [Mon, 1 Aug 2005 03:41:19 +0000 (20:41 -0700)]
[PATCH] USB usblp: rate-limit printer status error messages
Rate-limit usblp printer error status messages.
I unplugged my USB printer and almost instantly got several hundred
of these in my kernel message log:
drivers/usb/class/usblp.c: usblp0: error -19 reading printer status
Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Pete Zaitcev [Mon, 15 Aug 2005 04:16:03 +0000 (21:16 -0700)]
[PATCH] USB: ub 4: Zaitcev's quasi-S/G
Back out Axboe-style quasi-S/G and replace it with one command and
repeated URBs. This is similar to what usb-storage does, only instead
of a few URBs allocated together, one URB is reused.
Jens's idea was very nice, but it collapsed when I had to support
packet commads for CD burning. I cannot issue two or more packet
commands where application expected only one.
However, burning does not work completely yet. The cdrecord starts,
recognizes the device, then aborts without writing a TOC.
Signed-off-by: Pete Zaitcev <zaitcev@yahoo.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Pete Zaitcev [Sun, 31 Jul 2005 05:51:52 +0000 (22:51 -0700)]
[PATCH] USB: ub 3/3: death to ub_bd_rq_fn_1
When Al Viro saw the ub.c, he observed that it was a proof positive of
Linus not reading patches anymore: names like fo_ob_ar_ba_2 used to
cause serious fireworks. In my defence, any good scheme can be pushed
to the realm of absurd if pushed far enough.
Signed-off-by: Pete Zaitcev <zaitcev@yahoo.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Pete Zaitcev [Sun, 31 Jul 2005 05:51:45 +0000 (22:51 -0700)]
[PATCH] USB: ub 2/3: Fold one line
Evidently, Yani Ioannou's display is wider than mine.
Signed-off-by: Pete Zaitcev <zaitcev@yahoo.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Pete Zaitcev [Sun, 31 Jul 2005 05:38:30 +0000 (22:38 -0700)]
[PATCH] USB: ub 1/3: Axboe's quasi-S/G
This the quasi-S/G patch for ub as suggested by Jens Axboe at OLS and
implemented that night before 4 a.m. Surprisingly, it worked right away...
Alas, I had to skip some OLS partying, but it was for the good cause.
Now the speed of ub is quite acceptable even on partitions with small
block size.
The ub does not really support S/G. Instead, it just tells the block
layer that it does. Then, most of the time, the block layer merges
requests and passes single-segmnent requests down to ub; everything
works as before. Very rarely ub gets an unmerged S/G request. In such
case, it issues several commands to the device.
I added a small array of counters to monitor the merging (sg_stat).
This may be dropped later.
Signed-off-by: Pete Zaitcev <zaitcev@yahoo.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Mihnea-Costin Grigore [Fri, 29 Jul 2005 10:48:48 +0000 (13:48 +0300)]
[PATCH] usb-storage: Add IGNORE_RESIDUE flag for Mitsumi USB 2.0 card reader (VIA hardware)
This patch adds an entry in the unusual_devs.h file for a Mitsumi card
reader/floppy combo that uses a VIA chipset. The IGNORE_RESIDUE flag was
needed for the second LUN to operate properly.
Signed-off-by: Mihnea-Costin Grigore <mihnea@zulu.ro>
Signed-off-by: Phil Dibowitz <phil@ipom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Alan Stern [Wed, 10 Aug 2005 19:15:57 +0000 (15:15 -0400)]
[PATCH] USB: Fix regression in core/devio.c
This patch (as551) fixes another little problem recently added to the
USB core. Someone didn't fix the type of the first argument to
unregister_chrdev_region.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Kay Sievers [Sat, 30 Jul 2005 23:05:53 +0000 (01:05 +0200)]
[PATCH] USB: real nodes instead of usbfs
This patch introduces a /sys/class/usb_device/ class
where every connected usb-device will show up:
tree /sys/class/usb_device/
/sys/class/usb_device/
|-- usb1.1
| |-- dev
| `-- device -> ../../../devices/pci0000:00/0000:00:1d.0/usb1
|-- usb2.1
| |-- dev
| `-- device -> ../../../devices/pci0000:00/0000:00:1d.1/usb2
...
The presence of the "dev" file lets udev create real device nodes.
kay@pim:~/src/linux-2.6> tree /dev/bus/usb/
/dev/bus/usb/
|-- 1
| `-- 1
|-- 2
| `-- 1
...
udev rule:
SUBSYSTEM="usb_device", PROGRAM="/sbin/usb_device %k", NAME="%c"
(echo $1 | /bin/sed 's/usb\([0-9]*\)\.\([0-9]*\)/bus\/usb\/\1\/\2/')
This makes libusb pick up the real nodes instead of the mounted usbfs:
export USB_DEVFS_PATH=/dev/bus/usb
Background:
All this makes it possible to manage usb devices with udev instead of
the devfs solution. We are currently working on a pam_console/resmgr
replacement driven by udev and a pam-helper. It applies ACL's to device
nodes, which is required for modern desktop functionalty like
"Fast User Switching" or multiple local login support.
New patch with its own major. I've succesfully disabled usbfs and use real
nodes only on my box. With: "export USB_DEVFS_PATH=/dev/bus/usb" libusb picks
up the udev managed nodes instead of reading usbfs files.
This makes udev to provide symlinks for libusb to pick up:
SUBSYSTEM="usb_device", PROGRAM="/sbin/usbdevice %k", SYMLINK="%c"
/sbin/usbdevice:
#!/bin/sh
echo $1 | /bin/sed 's/usbdev\([0-9]*\)\.\([0-9]*\)/bus\/usb\/\1\/\2/'
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Andrew de Quincey [Thu, 4 Aug 2005 22:16:12 +0000 (23:16 +0100)]
[PATCH] USB: Prevent hid-core claiming Apple Bluetooth device on new G4 powerbooks
To recap: My new G4 powerbook has a bluetooth device that boots up in
what apppears to be a compatability mode - it looks exactly like an HID
keyboard/mouse device.
A special command sequence is sent to switch it into full bluetooth
mode. When this occurs the original HID device vanishes, and a new
(bluetooth HID) USB device appears on the bus with a different product
ID.
The original thread is here:
http://sourceforge.net/mailarchive/message.php?msg_id=
12532263
The attached patch adds the device to the hid-core quirks so that
hid-core ignores it.
Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ian Abbott [Tue, 2 Aug 2005 13:01:27 +0000 (14:01 +0100)]
[PATCH] USB ftdi_sio: New IDs for ELV, Xsens and Falcom products
This patch for the ftdi_sio driver adds a bunch of new devices and fixes
an incorrect PID:
o Fix PID for ELV UO100 (the PID was in fact for ELV UR100).
o Add PID ELV UR100 (see above) and ELV ALC 8500 Expert.
o Add a whole bunch of other PIDs for ELV USB devices, commented out for
now as they may be used by other drivers eventually. (Christian Abt
of ELV.de submitted a full list of devices including an indication of
which set of drivers are used by default in the MS Windows world. We
decided to comment out the devices that use FTDI's D2XX Windows
drivers by default.)
o Add PIDs for eight devices from Xsens Technologies BV (submitted in a
patch against 2.6.12.2 by Patrick Riphagen).
o Add PID for Falcom Samba GPRS modem (submitted by Sebastian Schubert).
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ian Abbott [Thu, 28 Jul 2005 17:40:32 +0000 (18:40 +0100)]
[PATCH] USB ftdi_sio: user specified VID/PID
ftdi_sio: Support one user specified vendor and product ID via a couple
of new module parameters.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Dariusz M [Thu, 28 Jul 2005 16:06:13 +0000 (18:06 +0200)]
[PATCH] USB: pl2303 driver, makes pl2303HX chip work correctly
This trivial patch makes pl2303 driver work correctly with pl2303HX chip.
Apparently some bug in HX version of pl2303 makes the chip loose some
transmitted bytes or stop working at all after reception of
USB_REQ_CLEAR_FEATURE mesage. Logs generated by UsbSnoop application reveal
that windows driver does not send this type of messages to the converter.
From: "Dariusz M." <D.Marcinkiewicz@elka.pw.edu.pl>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Greg Kroah-Hartman [Wed, 27 Jul 2005 08:06:19 +0000 (01:06 -0700)]
[PATCH] USB: fix keyspan_remote endian bug on probe
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
David Brownell [Wed, 13 Jul 2005 22:18:30 +0000 (15:18 -0700)]
[PATCH] USB: Gadget library: centralize gadget controller numbers
This patch centralizes the assignment of bcdDevice numbers for different
gadget controllers. This won't improve the object code at all, but it
does save a lot of repetitive and error-prone source code ... and will
simplify the work of supporting a new controller driver, since most new
gadget drivers will no longer need patches (unless some hardware quirks
limit USB protocol messaging).
Added minor cleanups and identifer hooks for the UDC in the Freescale
iMX series processors.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Tobias Klauser [Mon, 4 Jul 2005 17:32:51 +0000 (19:32 +0200)]
[PATCH] USB: drivers/serial/usb-serial: Remove unneeded void * casts
The following patch removes unneeded casts for the following (void *) pointers:
- tty_struct->driver_data
- void *private argument of usb_serial_port_softint()
Signed-off-by: Tobias Klauser <tklauser@nuerscht.ch>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Andrew Morton [Wed, 27 Jul 2005 08:08:30 +0000 (01:08 -0700)]
[PATCH] USB: option card driver coding style tweaks
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Lonnie Mendez [Tue, 12 Jul 2005 22:21:31 +0000 (17:21 -0500)]
[PATCH] USB: whitespace fixes for cypress_m8 driver
Reading this driver I noticed some trailing whitespaces and tabs so I
removed them with some 80th column fitting and a few more similar
things.
From: Carlo Perassi <carlo@linux.it>
Signed-off-by: Lonnie Mendez <dignome@gmail.com>
Signed-off-by: Carlo Perassi <carlo@linux.it>
Signed-off-by: Domen Puncer <domen@coderock.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Linus Torvalds [Thu, 8 Sep 2005 21:47:12 +0000 (14:47 -0700)]
Fix up ARM serial driver compile failure
Proud member of Uglyhacks'R'US.
Acked-by: David S. Miller <davem@davemloft.net>
Acked-by: Russell King <rmk+lkml@arm.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Thu, 8 Sep 2005 20:52:24 +0000 (13:52 -0700)]
Merge branch 'upstream' of /linux/kernel/git/jgarzik/netdev-2.6
Jeff Garzik [Thu, 8 Sep 2005 20:44:33 +0000 (16:44 -0400)]
Kconfig: IEEE80211 should not depend on NET_RADIO
We should not restrict use of ieee80211 to only when wireless drivers
are enabled. In-development and out-of-tree drivers may wish to use it,
and by removing this restriction we eliminate a circular dependency.
Linus Torvalds [Thu, 8 Sep 2005 18:51:01 +0000 (11:51 -0700)]
Merge branch 'upstream' of /linux/kernel/git/jgarzik/libata-dev
Al Viro [Thu, 8 Sep 2005 01:28:51 +0000 (18:28 -0700)]
[PATCH] Fix 32bit sendmsg() flaw
When we copy 32bit ->msg_control contents to kernel, we walk the same
userland data twice without sanity checks on the second pass.
Second version of this patch: the original broke with 64-bit arches
running 32-bit-compat-mode executables doing sendmsg() syscalls with
unaligned CMSG data areas
Another thing is that we use kmalloc() to allocate and sock_kfree_s()
to free afterwards; less serious, but also needs fixing.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Kumar Gala [Thu, 8 Sep 2005 14:20:55 +0000 (09:20 -0500)]
[PATCH] ppc32: Fix head_4xx.S compile error
head_4xx.S wasn't compiling due to a missing #endif
Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Thu, 8 Sep 2005 14:21:59 +0000 (07:21 -0700)]
Merge branch 'release' of /linux/kernel/git/lenb/linux-acpi-2.6
Hannes Reinecke [Wed, 29 Jun 2005 00:30:38 +0000 (17:30 -0700)]
[PATCH] scan all enabled ports on ata_piix
ICH6 spec defines the PORT_ bits as:
PORT_ENABLED (R/W):
0 = Disabled. The port is in the off state and cannot detect any
devices.
1 = Enabled. The port can transition between the on, partial, and
slumber states and can detect devices.
PORT_PRESENT (R/O)
The status of this bit may change at any time. This bit is cleared
when the port is disabled via PORT_ENABLED. This bit is not cleared upon
surprise removal of a device.
So from a textual view it is not necessary that PORT_PRESENT _must_ be set,
especially if a device detection has to be done anyway. And, in fact, this
is the view that ACER has been taken with its new Laptops (e.g. Travelmate
4150).
And the definition of PORT_ENABLED / PORT_PRESENT is mixed up, btw.
Signed-off-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Jens Axboe <axboe@suse.de>
Cc: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Garzik [Thu, 8 Sep 2005 09:37:58 +0000 (05:37 -0400)]
Merge /spare/repo/linux-2.6/
Len Brown [Thu, 8 Sep 2005 05:45:47 +0000 (01:45 -0400)]
Merge linux-2.6 with linux-acpi-2.6
Nathan Scott [Thu, 8 Sep 2005 05:38:52 +0000 (15:38 +1000)]
[XFS] Fix modular XFS builds (Makefile botch).
Signed-off-by: Nathan Scott <nathans@sgi.com>
Nathan Scott [Thu, 8 Sep 2005 05:34:58 +0000 (15:34 +1000)]
[XFS] Remove special Kconfig XFS menu, make XFS options "inline".
Signed-off-by: Eric Sandeen <sandeen@sgi.com>
Signed-off-by: Nathan Scott <nathans@sgi.com>
Nathan Scott [Thu, 8 Sep 2005 05:30:05 +0000 (15:30 +1000)]
[XFS] Cleanup some -Wundef flag warnings in the endian macros (thanks
Christoph).
SGI-PV: 942400
SGI-Modid: xfs-linux-melb:xfs-kern:23771a
Signed-off-by: Nathan Scott <nathans@sgi.com>
Linus Torvalds [Thu, 8 Sep 2005 01:44:33 +0000 (18:44 -0700)]
[SCSI] Re-do "final klist fixes"
With the previous commit that introduces the klist enhancements, we can
now re-do
2b7d6a8cb9718fc1d9e826201b64909c44a915f4 again.
James Bottomley [Tue, 6 Sep 2005 23:56:51 +0000 (16:56 -0700)]
[PATCH] fix klist semantics for lists which have elements removed on traversal
The problem is that klists claim to provide semantics for safe traversal of
lists which are being modified. The failure case is when traversal of a
list causes element removal (a fairly common case). The issue is that
although the list node is refcounted, if it is embedded in an object (which
is universally the case), then the object will be freed regardless of the
klist refcount leading to slab corruption because the klist iterator refers
to the prior element to get the next.
The solution is to make the klist take and release references to the
embedding object meaning that the embedding object won't be released until
the list relinquishes the reference to it.
(akpm: fast-track this because it's needed for the 2.6.13 scsi merge)
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Thu, 8 Sep 2005 00:50:58 +0000 (17:50 -0700)]
[SCSI] Revert "final klist fixes"
Revert commit
2b7d6a8cb9718fc1d9e826201b64909c44a915f4.
The "fix" was known to not even compile. Duh. That's not a fix.
That's just stupid.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Arnaud Patard [Wed, 7 Sep 2005 20:44:48 +0000 (22:44 +0200)]
[PATCH] sata_sis: Add support for SiS182 chipset
This patch adds support for the SiS182 sata chipset. This is a
minimalistic version of the patch from
http://bugme.osdl.org/show_bug.cgi?id=4192. Basically, it add the PCI
IDs and handles the change of the 2nd port adress register.
Signed-Off-By: Arnaud Patard <apatard@mandriva.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Linus Torvalds [Thu, 8 Sep 2005 00:31:27 +0000 (17:31 -0700)]
Merge /linux/kernel/git/jejb/scsi-for-linus-2.6
Linus Torvalds [Thu, 8 Sep 2005 00:29:07 +0000 (17:29 -0700)]
Merge branch 'drm-fixes' of /linux/kernel/git/airlied/drm-2.6
Linus Torvalds [Thu, 8 Sep 2005 00:28:25 +0000 (17:28 -0700)]
Merge branch 'upstream' of /linux/kernel/git/jgarzik/misc-2.6
Linus Torvalds [Thu, 8 Sep 2005 00:27:39 +0000 (17:27 -0700)]
Merge branch 'upstream' of /linux/kernel/git/jgarzik/libata-dev
Linus Torvalds [Thu, 8 Sep 2005 00:23:52 +0000 (17:23 -0700)]
Merge git://oss.sgi.com:8090/oss/git/xfs-2.6
Linus Torvalds [Thu, 8 Sep 2005 00:22:43 +0000 (17:22 -0700)]
Merge branch 'upstream' of /linux/kernel/git/jgarzik/netdev-2.6
Linus Torvalds [Thu, 8 Sep 2005 00:21:17 +0000 (17:21 -0700)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Thu, 8 Sep 2005 00:20:11 +0000 (17:20 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:23:50 +0000 (23:23 +0100)]
[PATCH] bogus #if (simserial)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:28:32 +0000 (23:28 +0100)]
[PATCH] CHECKFLAGS on ppc64 got broken
Now that asm-powerpc/* is using ifdefs on __powerpc64__ we need to add it
to CHECKFLAGS on ppc64.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:26:35 +0000 (23:26 +0100)]
[PATCH] bogus #if (ncr53c406)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:25:15 +0000 (23:25 +0100)]
[PATCH] bogus #if (smc91x.h)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:21:11 +0000 (23:21 +0100)]
[PATCH] bogus #if (arch/um/kernel/mem.c)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:19:41 +0000 (23:19 +0100)]
[PATCH] -Wundef fixes (hisax)
CARD_... in hisax are all used with #if; CARD_FN_ENTERNOW_PCI lacks define
to 0 if corresponding config option is not set.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:18:24 +0000 (23:18 +0100)]
[PATCH] -Wundef fixes (ncr5380)
NDEBUG and NDEBUG_ABORT are almost always used as integers in NCR5380; added
define to 0 if they are not defined, switched lone ifdef NDEBUG into if.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Wed, 7 Sep 2005 22:16:59 +0000 (23:16 +0100)]
[PATCH] -Wundef fixes (hamachi)
All uses of ADDRLEN are comparisons with 64 (it's an address width).
added define to 32 (again, we only care about comparisons with 64)
if not defined.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Tue, 6 Sep 2005 21:33:51 +0000 (22:33 +0100)]
[PATCH] bogus symbol used in arch/um/os-Linux/elf_aux.c
elf_aux is userland code; it uses symbol (ELF_CLASS) that doesn't exist in
userland headers; pulled into kernel-offsets.h, switched elf_aux to using it.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Tue, 6 Sep 2005 18:35:49 +0000 (19:35 +0100)]
[PATCH] updated mail address
parcelfarce is dead...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Tue, 6 Sep 2005 01:06:57 +0000 (02:06 +0100)]
[PATCH] iomem annotations (sound/arm/aaci)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Tue, 6 Sep 2005 01:02:22 +0000 (02:02 +0100)]
[PATCH] lost chunk of "uml: build cleanups"
A piece of the UML stubs patch got lost - it has
Killed STUBS_CFLAGS - it's not needed and the only remaining use had been
gratitious - it only polluted CFLAGS
in description and does remove it in arch/um/Makefile-x86_64, but forgets to
do the same in i386 counterpart. Lost chunk follows:
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@ZenIV.linux.org.uk [Tue, 6 Sep 2005 00:48:42 +0000 (01:48 +0100)]
[PATCH] Kconfig fix (BLK_DEV_FD dependencies)
Sanitized and fixed floppy dependencies: split the messy dependencies for
BLK_DEV_FD by introducing a new symbol (ARCH_MAY_HAVE_PC_FDC), making
BLK_DEV_FD depend on that one and taking declarations of ARCH_MAY_HAVE_PC_FDC
to arch/*/Kconfig. While we are at it, fixed several obvious cases when
BLK_DEV_FD should have been excluded (architectures lacking asm/floppy.h
are *not* going to have floppy.c compile, let alone work).
If you can come up with better name for that ("this architecture might
have working PC-compatible floppy disk controller"), you are more than
welcome - just s/ARCH_MAY_HAVE_PC_FDC/your_prefered_name/g in the patch
below...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
viro@zenIV.linux.org.uk [Fri, 2 Sep 2005 19:15:29 +0000 (20:15 +0100)]
[PATCH] s2io u64 use for uintptr_t
u64 is not uintptr_t; unsigned long is...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Thu, 8 Sep 2005 00:02:24 +0000 (17:02 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-serial
Linus Torvalds [Thu, 8 Sep 2005 00:00:53 +0000 (17:00 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm
Michael Krufky [Tue, 6 Sep 2005 22:19:40 +0000 (15:19 -0700)]
[PATCH] DVB: lgdt330x check callback fix
Most of the patch is whitespace cleanup, but more importantly, this patch
checks to see whether a callback is set before calling it. On cx88 boards
(currently the only boards using lgdt330x in 2.6.13) every callback is set.
However, newer drivers currently in development leave a callback undefined,
and lgdt330x must not call it if it isn't defined.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Michael Krufky <mkrufky@m1k.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Michael Krufky [Tue, 6 Sep 2005 22:19:38 +0000 (15:19 -0700)]
[PATCH] DVB: Clarify description text for dvb-bt8xx in Kconfig
Patrick Keene wrote to the linux-dvb list, asking where in menuconfig he
can enable dvb-bt8xx for his AVerMedia DVB card. I pointed the following
out to him:
config DVB_BT8XX
tristate "Nebula/Pinnacle PCTV/Twinhan PCI cards"
It has been agreed upon that this description is extremely misleading.
This patch changes the one-liner description text of dvb-bt8xx to something
more meaningful, and adds AVerMedia to the detailed description.
Signed-off-by: Michael Krufky <mkrufky@m1k.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Ralf Baechle [Tue, 6 Sep 2005 22:19:37 +0000 (15:19 -0700)]
[PATCH] Indycam / VINO drivers
Rewrite of the Indycam / VINO video v4l2 drivers for the SGI Indy.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Mikael Nousiainen <tmnousia@cc.hut.fi>
Cc: <video4linux-list@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Miklos Szeredi [Tue, 6 Sep 2005 22:19:36 +0000 (15:19 -0700)]
[PATCH] pivot_root() circular reference fix
Fix http://bugzilla.kernel.org/show_bug.cgi?id=4857
When pivot_root is called from an init script in an initramfs environment,
it causes a circular reference in the mount tree.
The cause of this is that pivot_root() is not prepared to handle pivoting
an unattached mount. In an initramfs environment, rootfs is the root of
the namespace, and so it is not attached.
This patch fixes this and related problems, by returning -EINVAL if either
the current root or the new root is detached.
Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
Acked-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Cc: <bigfish@asmallpond.org>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Keshavamurthy Anil S [Tue, 6 Sep 2005 22:19:35 +0000 (15:19 -0700)]
[PATCH] kprobes: fix bug when probed on task and isr functions
This patch fixes a race condition where in system used to hang or sometime
crash within minutes when kprobes are inserted on ISR routine and a task
routine.
The fix has been stress tested on i386, ia64, pp64 and on x86_64. To
reproduce the problem insert kprobes on schedule() and do_IRQ() functions
and you should see hang or system crash.
Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Acked-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jim Keniston [Tue, 6 Sep 2005 22:19:34 +0000 (15:19 -0700)]
[PATCH] kprobes: fix handling of simultaneous probe hit/unregister
This patch fixes a bug in kprobes's handling of a corner case on i386 and
x86_64. On an SMP system, if one CPU unregisters a kprobe just after
another CPU hits that probepoint, kprobe_handler() on the latter CPU sees
that the kprobe has been unregistered, and attempts to let the CPU continue
as if the probepoint hadn't been hit. The bug is that on i386 and x86_64,
we were neglecting to set the IP back to the beginning of the probed
instruction. This could cause an oops or crash.
This bug doesn't exist on ppc64 and ia64, where a breakpoint instruction
leaves the IP pointing to the beginning of the instruction. I don't know
about sparc64. (Dave, could you please advise?)
This fix has been tested on i386 and x86_64 SMP systems. To reproduce the
problem, set one CPU to work registering and unregistering a kprobe
repeatedly, and another CPU pounding the probepoint in a tight loop.
Acked-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Signed-off-by: Jim Keniston <jkenisto@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Keshavamurthy Anil S [Tue, 6 Sep 2005 22:19:32 +0000 (15:19 -0700)]
[PATCH] Kprobes/IA64: fix race when break hits and kprobe not found
This patch addresses a potential race condition for a case where Kprobe has
been removed right after another CPU has taken a break hit.
The way this is addressed here is when the CPU that has taken a break hit
does not find its corresponding kprobe, then we check to see if the
original instruction got replaced with other than break. If it got
replaced with other than break instruction, then we continue to execute
from the replaced instruction, else if we find that it is still a break,
then we let the kernel handle this, as this might be the break instruction
inserted by other than kprobe(may be kernel debugger).
Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Prasanna S Panchamukhi [Tue, 6 Sep 2005 22:19:31 +0000 (15:19 -0700)]
[PATCH] kprobes-prevent-possible-race-conditions-sparc64-changes fix
This patch adds flags "ax" to .kprobe.text section.
Signed-off-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Prasanna S Panchamukhi [Tue, 6 Sep 2005 22:19:30 +0000 (15:19 -0700)]
[PATCH] Kprobes: prevent possible race conditions sparc64 changes
This patch contains the sparc64 architecture specific changes to prevent the
possible race conditions.
Signed-off-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Prasanna S Panchamukhi [Tue, 6 Sep 2005 22:19:30 +0000 (15:19 -0700)]
[PATCH] Kprobes: prevent possible race conditions ia64 changes
This patch contains the ia64 architecture specific changes to prevent the
possible race conditions.
Signed-off-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Prasanna S Panchamukhi [Tue, 6 Sep 2005 22:19:29 +0000 (15:19 -0700)]
[PATCH] Kprobes: prevent possible race conditions ppc64 changes
This patch contains the ppc64 architecture specific changes to prevent the
possible race conditions.
Signed-off-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Prasanna S Panchamukhi [Tue, 6 Sep 2005 22:19:28 +0000 (15:19 -0700)]
[PATCH] kprobes: prevent possible race conditions x86_64 changes
This patch contains the x86_64 architecture specific changes to prevent the
possible race conditions.
Signed-off-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Prasanna S Panchamukhi [Tue, 6 Sep 2005 22:19:27 +0000 (15:19 -0700)]
[PATCH] kprobes: prevent possible race conditions i386 changes
This patch contains the i386 architecture specific changes to prevent the
possible race conditions.
Signed-off-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Prasanna S Panchamukhi [Tue, 6 Sep 2005 22:19:26 +0000 (15:19 -0700)]
[PATCH] Kprobes: prevent possible race conditions generic
There are possible race conditions if probes are placed on routines within the
kprobes files and routines used by the kprobes. For example if you put probe
on get_kprobe() routines, the system can hang while inserting probes on any
routine such as do_fork(). Because while inserting probes on do_fork(),
register_kprobes() routine grabs the kprobes spin lock and executes
get_kprobe() routine and to handle probe of get_kprobe(), kprobes_handler()
gets executed and tries to grab kprobes spin lock, and spins forever. This
patch avoids such possible race conditions by preventing probes on routines
within the kprobes file and routines used by kprobes.
I have modified the patches as per Andi Kleen's suggestion to move kprobes
routines and other routines used by kprobes to a seperate section
.kprobes.text.
Also moved page fault and exception handlers, general protection fault to
.kprobes.text section.
These patches have been tested on i386, x86_64 and ppc64 architectures, also
compiled on ia64 and sparc64 architectures.
Signed-off-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Brice Goglin [Tue, 6 Sep 2005 22:19:25 +0000 (15:19 -0700)]
[PATCH] Fix smsc_ircc_init return value
I noticed a strange return value in smsc_ircc_init in
drivers/net/irda/smsc_ircc2.c in rc4-mm1.
When reaching the line "if (ircc_fir > 0 && ircc_sir > 0)", ret is 0. So I
don't see the point of setting it to 0 in the "else" case. >From what I
see in 2.6.12 it should probably be set to -ENODEV at the begining of the
"else" case. The attached patch does this.
Note that I didn't actually see any breakage caused by this.
Signed-off-by: Brice Goglin <Brice.Goglin@ens-lyon.org>
Cc: Dmitry Torokhov <dtor_core@ameritech.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Dmitry Torokhov [Tue, 6 Sep 2005 22:19:24 +0000 (15:19 -0700)]
[PATCH] smsc-ircc2: dont use void * where specific type will do
IRDA: smsc-ircc2 - do not over-use void * pointers, use specific
types wherever possible.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Cc: Jean Tourrilhes <jt@hpl.hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Dmitry Torokhov [Tue, 6 Sep 2005 22:19:23 +0000 (15:19 -0700)]
[PATCH] smsc-ircc2: use netdev_priv()
IRDA: smsc-ircc2 - use netdev_priv() instead of accessing pointer
directly.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Cc: Jean Tourrilhes <jt@hpl.hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Dmitry Torokhov [Tue, 6 Sep 2005 22:19:22 +0000 (15:19 -0700)]
[PATCH] smsc-ircc2: add to sysfs as platform device, new PM
IRDA: smsc-ircc2 - add sysfs support (platform device and driver) and
switch power management to the new scheme.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Cc: Jean Tourrilhes <jt@hpl.hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Dmitry Torokhov [Tue, 6 Sep 2005 22:19:21 +0000 (15:19 -0700)]
[PATCH] smsc-ircc2: dont pass iobase around
IRDA: smsc-ircc2 - cleanup - do not pass around iobase, it can be
retrieved from smsc_ircc_cb structure.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Cc: Jean Tourrilhes <jt@hpl.hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Dmitry Torokhov [Tue, 6 Sep 2005 22:19:20 +0000 (15:19 -0700)]
[PATCH] smsc-ircc2: remove typedefs
IRDA: smsc-ircc2 - remove excessive typedefs.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Cc: Jean Tourrilhes <jt@hpl.hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Dmitry Torokhov [Tue, 6 Sep 2005 22:19:20 +0000 (15:19 -0700)]
[PATCH] smsc-ircc2: drop DIM macro in favor of ARRAY_SIZE
IRDA: smsc-ircc2 - remove home-grown DIM macro, use ARRAY_SIZE intead.
Also fix out-of-bound array access.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Cc: Jean Tourrilhes <jt@hpl.hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Dmitry Torokhov [Tue, 6 Sep 2005 22:19:19 +0000 (15:19 -0700)]
[PATCH] smsc-ircc2: formatting fixes
IRDA: smsc-ircc2 - some formatting changes for better readability.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Cc: Jean Tourrilhes <jt@hpl.hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Dmitry Torokhov [Tue, 6 Sep 2005 22:19:17 +0000 (15:19 -0700)]
[PATCH] smsc-ircc2: whitespace fixes
IRDA: smsc-ircc2 - whitespace fixes.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Cc: Jean Tourrilhes <jt@hpl.hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jan Kara [Tue, 6 Sep 2005 22:19:17 +0000 (15:19 -0700)]
[PATCH] Fix race in do_get_write_access()
attached patch should fix the following race:
Proc 1 Proc 2
__flush_batch()
ll_rw_block()
do_get_write_access()
lock_buffer
jh is only waiting for checkpoint
-> b_transaction == NULL ->
do nothing
unlock_buffer
test_set_buffer_locked()
test_clear_buffer_dirty()
__journal_file_buffer()
change the data
submit_bh()
and we have sent wrong data to disk... We now clean the dirty buffer flag
under buffer lock in all cases and hence we know that whenever a buffer is
starting to be journaled we either finish the pending write-out before
attaching a buffer to a transaction or we won't write the buffer until the
transaction is going to be committed.
The test in jbd_unexpected_dirty_buffer() is redundant - remove it.
Furthermore we have to clear the buffer dirty bit under the buffer lock to
prevent races with buffer write-out (and hence prevent returning a buffer with
IO happening).
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jan Kara [Tue, 6 Sep 2005 22:19:16 +0000 (15:19 -0700)]
[PATCH] Change HFS+ to not use ll_rw_block()
Use block layer predefined function.
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jan Kara [Tue, 6 Sep 2005 22:19:15 +0000 (15:19 -0700)]
[PATCH] Change ll_rw_block() calls in UFS
We need to be sure that current data are sent to disk. Hence we call
ll_rw_block() with SWRITE.
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jan Kara [Tue, 6 Sep 2005 22:19:14 +0000 (15:19 -0700)]
[PATCH] Change ll_rw_block() calls in Reiser
We need to be sure that current data in buffer are sent to disk. Hence we
need to call ll_rw_block() with SWRITE.
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jan Kara [Tue, 6 Sep 2005 22:19:12 +0000 (15:19 -0700)]
[PATCH] Change ll_rw_block() calls in JBD
We must be sure that the current data in buffer are sent to disk. Hence we
have to call ll_rw_block() with SWRITE.
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jan Kara [Tue, 6 Sep 2005 22:19:10 +0000 (15:19 -0700)]
[PATCH] Make ll_rw_block() wait for buffer lock
Introduce new ll_rw_block() operation SWRITE meaning that block layer should
wait for the buffer lock and write-out afterwards. Hence data in buffers at
the time of call are guaranteed to be submitted to the disk.
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jan Kara [Tue, 6 Sep 2005 22:19:09 +0000 (15:19 -0700)]
[PATCH] Fix JBD race in t_forget list handling
Fix race between journal_commit_transaction() and other places as
journal_unmap_buffer() that are adding buffers to transaction's t_forget list.
We have to protect against such places by holding j_list_lock even when
traversing the t_forget list. The fact that other places can only add buffers
to the list makes the locking easier. OTOH the lock ranking complicates the
stuff...
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Mark Fasheh [Tue, 6 Sep 2005 22:19:08 +0000 (15:19 -0700)]
[PATCH] kjournald: missing JFS_UNMOUNT check
It seems that kjournald() may be missing a check of the JFS_UNMOUNT flag
before calling schedule(). This showed up in testing of OCFS2 recovery
where our recovery thread would hang in journal_kill_thread() called from
journal_destroy() because kjournald never got a chance to read the flag to
shut down before the schedule().
Zach pointed out the missing check which led me to hack up this trivial
patch. It's been tested many times now and I have yet to reproduce the
hang, which was happening very regularly before.
<mild rant>
I'm guessing that we could really use some wait_event() calls with helper
functions in, well, most of jbd these days which would make a ton of the
wait code there vastly cleaner.
</mild rant>
As for why this doesn't happen in ext3 (or OCFS2 during normal
mount/unmount of the local nodes journal), I think it may that the specific
timing of events in the ocfs2 recovery thread exposes a race there.
Because ocfs2_replay_journal() is only interested in playing back the
journal, initialization and shutdown happen very quicky with no other
metadata put into that specific journal.
Acked-by: "Stephen C. Tweedie" <sct@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Richard Purdie [Tue, 6 Sep 2005 22:19:07 +0000 (15:19 -0700)]
[PATCH] Corgi: Add MMC/SD write protection switch handling
Add MMC/SD write protection switch handling for the Corgi platform
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Richard Purdie [Tue, 6 Sep 2005 22:19:07 +0000 (15:19 -0700)]
[PATCH] Corgi: Add keyboard and touchscreen device definitions
Add keyboard and touchscreen device definitions for corgi.
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>