Summary of changes from v2.6.7 to v2.6.8-rc1
============================================
<len.brown@intel.com>
Kconfig typo fix from Jochen Voss
<len.brown@intel.com>
[ACPI] PCI IRQ update (Bjorn Helgaas)
http://bugme.osdl.org/show_bug.cgi?id=2574
mp_parse_prt() and iosapic_parse_prt() used to allocate all
IRQs, whether devices needed them or not. Some devices
failed because the this method enabled unused PCI Interrupt
Link Devices, which disrupted active link devices.
Now the PRT knowledge is pulled out of the arch
code and the IRQ allocation and IO-APIC programming
is done by pci_enable_device().
This is also a step toward allowing the addition
of new root bridges and PRTs at run-time.
The architecture supplies
unsigned int
acpi_register_gsi(u32 gsi, int edge_level, int active_high_low)
which is called by acpi_pci_irq_enable(). ACPI supplies
all the information from the PRT, and the arch sets up
the routing and returns the IRQ it allocated.
<rl@hellgate.ch>
[PATCH] Nuke HAS_IP_COPYSUM for net drivers
Entirely untested, but Obviously Correct(TM). HAS_IP_COPYSUM has been
utterly meaningless for a long time.
<herbert@gondor.apana.org.au>
[NETDRV #1] Ifdef builtin-only probe in ISA/MCA drivers
Here is the bit which conditionalises the
builtin-only probe functions.
<herbert@gondor.apana.org.au>
[NETDRV #2] Use driver-specific name for resources
Here is the next part which uses a driver-specific name instead of
dev->name for resource allocations prior to netdev registration.
It also changes printks that are in direct response to errors in
resource allocations.
<hch@lst.de>
[PATCH] move scsi debugging helpers and give them sane names
- give the constants.c prettyprinting helpers proper scsi_ prefixed
names (and keep compat versions for 2.6.x)
- move them to include/scsi/scsi_dbg.h so now really only legacy stuff
is left in drivers/scsi/scsi.h
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
SCSI: slave_detach -> slave_destory comment fix
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
Convert tmcscsim to new probing interfaces
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Update the driver to use the new pci, scsi and
module interfaces.
Modified with feedback from hch
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr scsi busy io hang
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr duplicate ioa reset fix
This patch closes a window where if a device had a cancel all
outstanding as a result of a check condition and the adapter
was reset for some reason, a request sense would still be issued,
which would end up timing out and issuing an additional adapter
reset. It could also result in a leak of command blocks, depending
on when it timed out.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr driver version 2.0.8
Bump driver version
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<davej@redhat.com>
[PATCH] USB / SCSI multi-card reader whitelist updates.
For more info see Red Hat bugzilla entries #85851 and #124048
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
MPT Fusion driver 3.01.07 update
From: "Moore, Eric Dean" <Emoore@lsil.com>
Clean up backword compatibility with 2.4 kernel and older. Patch
provided by Christoph Hellwig<hch@lst.de,hch@infradead.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<michaelc@cs.wisc.edu>
[PATCH] SCSI: remove extra queue unplug calls
blk_insert_request will do the right thing and either unplug the queue or
call the request_fn, so users of scsi_do_req do not need to call
generic_unplug_device themselves. The attached patch just removes that
call from scsi_lib.c and the sg driver after they do a scsi_do_req.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<lcapitulino@prefeitura.sp.gov.br>
[PATCH] qla1280.c warning fix.
drivers/scsi/qla1280.c:3124: warning: `qla1280_64bit_start_scsi' defined but not used
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] Stop megaraid trashing other i960 based devices
From: Alan Cox <alan@redhat.com>
In 2.4 the megaraid driver was careful to avoid stepping on wrong devices.
Specifically the megaraid3 series devices used an intel pci ID (8086:1960)
which is the generic i960 identifier not their own.
The code to do this in 2.4 worked for almost all cases, but even that code has
mysteriously vanished in 2.6 meaning the megaraid driver trashes stuff like
promise i2o cards and compaq management cards.
The following patch puts back the 2.4 stuff + one additional check so that the
driver isn't quite as rude as it was before.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<davej@redhat.com>
[PATCH] SCSI: more whitelist updates for usb card readers
ATech 9-in-1 card reader.
Cbox 3 5 1/2 bay with 6in1 card reader
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<davej@redhat.com>
[PATCH] SCSI: Correct BELKIN card reader whitelist entry.
Should be FORCELUN not SPARSELUN ?
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<g.liakhovetski@gmx.de>
[PATCH] tmscsim: Update version after "new API"
The "API-update" patch, just approved by Christoph deserves a new version.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<g.liakhovetski@gmx.de>
[PATCH] tmscsim: remove DeviceCnt
On Wed, 26 May 2004, Christoph Hellwig wrote:
> On Sun, May 23, 2004 at 11:19:58PM +0200, Guennadi Liakhovetski wrote:
> >
> > Whereas, DCBCnt is incremented on slave_alloc, decremented on
> > slave_destroy and used in a couple more places. So, is it safe to assume
> > that DeviceCnt is redundant and remove it in a next patch?... Then it
> > might be already safe to move scan_devices as you suggest?
>
> Looks like a way to go. I'm not sure what scan_device is supposed to
> do as I already wrote, but from looking at when it's set/cleared I'm
> pretty sure it tries to indicate whethere we're currently scanning for
> devices. And useing slave_alloc/slave_configure is a much safer way to
> find that out then guessing from the commands sent.
So, here's the first one - remove DeviceCnt.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] unchecked kmalloc in sr_audio_ioctl()
From: "Luiz Fernando N. Capitulino" <lcapitulino@prefeitura.sp.gov.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<g.liakhovetski@gmx.de>
[PATCH] tmscsim: convert to slave_...
On Wed, 26 May 2004, Christoph Hellwig wrote:
> Looks like a way to go. I'm not sure what scan_device is supposed to
> do as I already wrote, but from looking at when it's set/cleared I'm
> pretty sure it tries to indicate whethere we're currently scanning for
> devices. And useing slave_alloc/slave_configure is a much safer way to
> find that out then guessing from the commands sent.
Attached is a patch, that moves scan_device to
slave_alloc/_configure/_destroy, as you suggested (to be precise, as I
understood your suggestion:-))
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr operational timeout oops
This patch fixes an oops that can occur if an adapter times
out coming operational.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<Markus.Lidel@shadowconnect.com>
[PATCH] get I2O working with Adaptec's zero channel
this patch now gets the mentioned controllers working with the I2O
subsystem. It tested on two different system with ASR-2005S and
ASR-2010S and reported as working.
It's also tested on i686 and x86_64 with already working I2O controllers
without a problem.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] remove calls of obsolete scsi APIs in i2o_scsi
From: Markus Lidel <Markus.Lidel@shadowconnect.com>
Here is a patch from Christoph Hellwig, which removes calls of the obsolete
scsi API in i2o_scsi.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<rl@hellgate.ch>
[PATCH] Nuke HAS_IP_COPYSUM
HAS_IP_COPYSUM has been utterly meaningless for a long time.
Signed-off-by: Roger Luethi <rl@hellgate.ch>
<rl@hellgate.ch>
[PATCH] Nuke CanHaveMII and related code
All Rhines can have a MII.
Signed-off-by: Roger Luethi <rl@hellgate.ch>
<rl@hellgate.ch>
[PATCH] Nuke HasESIPhy and related code
This has been dead code forever.
Signed-off-by: Roger Luethi <rl@hellgate.ch>
<rl@hellgate.ch>
[PATCH] Nuke default_port, references to if_port, medialock
As is, code doesn't do anything useful.
Signed-off-by: Roger Luethi <rl@hellgate.ch>
<rl@hellgate.ch>
[PATCH] Nuke all pci_flags
All this code together can be replaced with a single #ifdef USE_MMIO.
Signed-off-by: Roger Luethi <rl@hellgate.ch>
<rl@hellgate.ch>
[PATCH] Return codes for rhine_init_one
Use return codes in rhine_init_one instead of -ENODEV for all errors.
Signed-off-by: Roger Luethi <rl@hellgate.ch>
<rl@hellgate.ch>
[PATCH] Rewrite special-casing
Use PCI revision to determine special cases. One bit field replaces a
bunch of data structures holding special case information.
Replace chip_id, drv_flags in rhine_private with quirks
Remove enum rhine_chips, struct rhine_chip_info (and array),
enum chip_capability_flags
Add enum rhine_revs, enum rhine_quirks (some values in preparation for
subsequent changes)
wait_for_reset() and enable_mmio() now use quirks instead of chip_id
Remove model names from ident strings for now.
Signed-off-by: Roger Luethi <rl@hellgate.ch>
<rl@hellgate.ch>
[PATCH] Add rhine_power_init(): get power regs into sane state
Add rhine_power_init(): get power regs into sane state.
Move the respective code out of rhine_init_one. Add code for
two additional patterns (Rhine III).
Signed-off-by: Roger Luethi <rl@hellgate.ch>
<stern@rowland.harvard.edu>
[PATCH] USB: unusual_devs.h update
On Mon, 3 May 2004, zcat wrote:
> I am trying to get my camera going as a webcam (concord EyeQ Duo in PC
> mode, not HDD mode) with the 2.6.4 kernel using the se401 driver
> (compiled in).. It logged the following message, which doesn't mean much
> to me so I have no idea if it's useful information or not;
>
> May 3 21:08:11 mrsnorris kernel: usb 1-1: new full speed USB device
> using address 2
> May 3 21:08:16 mrsnorris kernel: usb 1-1: control timeout on ep0out
> May 3 21:08:16 mrsnorris kernel: usb-storage: This device
> (0595,4343,0100 S 00 P 00) has an unneeded Protocol entry in unusual_devs.h
> May 3 21:08:16 mrsnorris kernel: Please send a copy of this message
> to <linux-usb-devel@lists.sourceforge.net>
This fixes the "unneeded Protocol entry" message. We never solved the
control timeout problem.
Alan Stern
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Fix disconnect bug in dummy_hcd
Greg:
This patch fixes a bug in disconnect handling for the dummy_hcd driver.
After a disconnect the driver would still accept URBs for endpoint 0,
leading to an oops. It also improves the ad-hoc technique used by the
driver to track its gadget's struct usb_device and fixes the way
port-power changes are handled. Please apply.
Alan Stern
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<numlock@freesurf.ch>
[PATCH] Add support for ISD-300 controller
This patch adds support in unusual_devs.h for the ISD-300 USB controller
used in CD-ROM enclosures.
With it, since 2.6.0 it allowed me to move gigabytes of data and worked
without a hitch.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: pxa/rndis device descriptor
This fixes a problem that all pxa2xx_udc g_ether devices
would run into. They'd give the wrong descriptors, like:
> --------msg1- usbview ----------
> Device Descriptor: bcdUSB: 0x0200
> bDeviceClass: 0xFF
> bDeviceSubClass: 0x00
> bDeviceProtocol: 0x00
> bMaxPacketSize0: 0x10 (16)
Windows doesn't like RNDIS-supporting devices to point
out that they're really vendor-specific. So this patch
makes sure they don't.
Signed-off-by: David Brownell <dbrownelL@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: usb retry cleanups
This patch stops changing the reported fault mode in cases where retries of
GET_DESCRIPTOR fail because the device just doesn't have such a descriptor.
Plus, it stops printing messages when retrying.
It also reduces the number of retries; the first retry seems to resolve most
of these firmware problems.
Signed-Off-By: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<oliver@neukum.org>
[PATCH] USB: proper evaluation of the union descriptor for CDC ACM
this changes acm_probe() to using the proper union descriptor.
It contains the workaround David suggested. Please apply.
- fix probing to use cdc union descriptor
Signed-off-by: Oliver Neukum <oliver@neukum.name>
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<oliver@neukum.org>
[PATCH] USB: error handling of open of acm driver
this adds error handling to the open method of the cdc acm driver.
The change set is relative to my last patch rewriting probe.
- add error handling to open method
Signed-off-by: Oliver Neukum <oliver@neukum.name>
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<oliver@neukum.org>
[PATCH] USB: fix racy access to urb->status in cdc acm driver
Hi,
fix access to urb->status by introduction of an explicit flag
for finished data transfer.
- fix racy access to urb->status
Signed-off-by: Oliver Neukum <oliver@neukum.name>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<oliver@neukum.org>
[PATCH] USB: fix race between disconnect and write of acm driver
acm uses a workqueue to defer part of a write operation.
In case of disconnect this work must be waited for.
- fix race between write and disconnect
Signed-off-by: Oliver Neukum <oliver@neukum.name>
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Minor cleanups for hub driver
Greg:
This patch takes care of some small miscellaneous items in hub.c:
Move the definition of CONFIG to the right place;
Print the proper value for submission status in the error log;
Remove an unused list of all hubs;
Remove some unneeded braces;
Kill an accidentally-resurrected comment.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Move usb_new_device() et al. into hub.c
This patch moves usb_new_device(), usb_disconnect(), usb_choose_address(),
and usb_release_address() from usb.c to hub.c. As a side benefit,
choose_address() and release_address() can now become static. The other
two can't, because they have to be exported for use by HCD's when
registering/unregistering root hubs.
Some other features of the patch:
The usb_snddefctrl() and usb_rcvdefctrl() macros have been
removed, since only one of them was used and only in one spot.
The comment about configuration choice needing to interact with
hub power budgeting has been moved in accordance with David's
wish. usb_new_device() checks to make sure a configuration
could be chosen and logs a warning if no choice was made.
Following Linus's preference, the #ifdef preprocessor stuff has
been removed from around the calls the show_string routine. It
is now defined as a non-inline routine when debugging is enabled
and as an inline no-op otherwise (the compiler will optimize
away the useless tests).
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<mochel@digitalimplant.org>
[Driver Model] Consolidate attribute definition macros
- Create __ATTR(), __ATTR_RO(), and __ATTR_NULL macros to help define
attributes in a neat, short-hand form.
- Apply these macros to the attribute definition in include/linux/device.h
- Note: These can be used to more cleanly define attributes in your own
code. e.g:
static struct device_attribute attrs[] = {
__ATTR_RO(foo),
__ATTR_RO(bar),
__ATTR(baz,0666,baz_show,baz_store),
__ATTR_NULL,
};
...etc.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<p.lavarre@ieee.org>
[PATCH] ata_check_bmdma
Move hand-coded BMDMA status check into separate function.
<len.brown@intel.com>
[ACPI] fix !CONFIG_PCI build (Bjorn Helgaas)
<mochel@digitalimplant.org>
[Driver Model] Fix up silly scsi usage of DEVICE_ATTR() macros.
- Hey, just because the macro incorrectly included a ';' doesn't mean
one shouldn't add one on their own.. (Or at least be consistent.)
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<greg@kroah.com>
Add basic sysfs support for raw devices
This is needed by people who use udev and want raw devices.
SuSE is shipping with this patch.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<mochel@digitalimplant.org>
[sysfs] Add attr_name() macro
- Returns the name of an embedded attribute in a higher-level
attribute.
<mochel@digitalimplant.org>
[Driver Model] Add default attributes for classes class devices.
- add struct class::class_attrs, which is designed to point to an
array of class_attributes that are added when the class is registered
and removed when the class is unregistered.
This allows for more consolidated and cleaner definition of and
management of attributes.
- Add struct class::class_dev_attrs to do something similarly for
class devices. Each class device that is registered with the class
gets that set of attributes added for them, and subsequently removed
when the device is unregistered.
Each array depends on a terminating attribute with a NULL name. Hint:
use the new __ATTR_NULL macro to terminate it.
<greg@kroah.com>
Driver Model: More cleanup of silly scsi use of the *ATTR macros...
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<greg@kroah.com>
Driver Model: Cleanup the i2c driver silly use of the *ATTR macros which just broke
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<greg@kroah.com>
Cset exclude: vojtech@suse.cz|ChangeSet|20040602201956|45549
Oops, this broke device removal pretty badly :(
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<hannal@us.ibm.com>
[PATCH] Add class support to cpuid.c
This patch adds class support to arch/i386/kernel/cpuid.c. This enables udev
support. I have tested on a 2-way SMP system and on a 2-way built as UP.
Here are the results for the SMP:
[hlinder@w-hlinder2 hlinder]$ tree /sys/class/cpuid
/sys/class/cpuid
|-- cpu0
| `-- dev
`-- cpu1
`-- dev
2 directories, 2 files
[hlinder@w-hlinder2 hlinder]$ more /sys/class/cpuid/cpu0/dev
203:0
[hlinder@w-hlinder2 hlinder]$ more /sys/class/cpuid/cpu1/dev
203:1
[hlinder@w-hlinder2 hlinder]$
And for the UP:
[root@w-hlinder2 root]# tree /sys/class/cpuid
/sys/class/cpuid
`-- cpu0
`-- dev
1 directory, 1 file
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: 2.6-BK usb (printing) broken
On Sat, 29 May 2004, Jens Axboe wrote:
> > > Both 2.6.7-rc1 and BK current spit out a bunch of:
> > >
> > > drivers/usb/class/usblp.c: usblp1: nonzero read/write bulk status received: -2
> > > drivers/usb/class/usblp.c: usblp1: error -2 reading from printer
> > > drivers/usb/class/usblp.c: usblp1: error -115 reading from printer
> > > drivers/usb/class/usblp.c: usblp1: error -115 reading from printer
> > > ...
> > >
> > > (about ~80 of that last line) but work for me.
> Sorry wasn't quite clear - the above messages are with 2.6.7-rc1 and
> current bk with your patch backed out. Current bk with the patch reports
> only the timeouts I originally listed.
Okay, I feel better.
It looks like those errors you see are caused by a bug in the usblp
driver. The patch below ought to help.
<scott@concord.org>
[PATCH] USB: kyocera 7135 patch
Here is a patch based on 2.6.7-rc2 that makes the Kyocera 7135 work.
The Kyocera appears to have the same setup as the Trio. Its endpoints
are laid out like this:
> >>>type address
> >>>usb bulk out: 0x01
> >>>usb interrupt in: 0x82
> >>>usb bulk out: 0x03
> >>>usb bulk in: 0x84
The last two are the ones used for the syncing communication.
So the patch adds the ids for the kyocera and makes the treo_attach
function handle the kyocera too. I also changed the comment; it appears
there was an error in the original comment about the treo:
Joe Nardelli wrote:
> Actually, the comment isn't quite right for Treos either (oops). It
> should read:
>
> ...
> 1st bulk in endpoint to communicate with the 2nd bulk out endpoint
> ...
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<mochel@digitalimplant.org>
[Driver Model] Add default attributes for struct bus_type.
- Similar to default attributes for struct class, this is an array
of attributes, terminated with an attribute with a NULL name, that
are added when the bus is registered, and removed when the bus is
unregistered.
<greg@kroah.com>
USB: remove "devfs" message from kernel log for usb-serial driver
No one uses devfs on 2.6 :)
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<mochel@digitalimplant.org>
[Driver Model] Add default device attributes to struct bus_type.
- Add struct bus_type::dev_attrs, which is an array of device
attributes that are added to each device as they are registered.
- Also make sure that we don't hang when removing bus attributes
if adding one failed..
<aradford@amcc.com>
[PATCH] 1/2 3ware 9000 SATA-RAID driver v2.26.00.009
Here is an updated version v2.26.00.009 of the 3ware 9000 SATA-RAID driver.
Changes in this release:
- Convert driver to pci_driver format.
- Remove proc interface, add sysfs attributes.
- Return SCSI_MLQUEUE_HOST_BUSY when card status is busy.
Future versions may include:
- PAE fix
- 80 column wrap fixes
- Remove more prototypes by re-ordering functions.
- sysfs queue depth adjustment instead of module_param
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<aradford@amcc.com>
[PATCH] 2/2 3ware 9000 SATA-RAID driver v2.26.00.009
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<len.brown@intel.com>
[ACPI] acpi=force overrides blacklist pci=noacpi or acpi=noirq (Andi Kleen)
<hch@lst.de>
[PATCH] fix dpt_i2o compilation for alpha and sparc
This patch has been floating around for ages, got reminded of it again
when looking at the debian kernel package.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<g.liakhovetski@gmx.de>
[PATCH] tmscsim: Store pDCB in device->hostdata
On Sun, 23 May 2004, Christoph Hellwig wrote:
> The other thing is that most calls to dc390_findDCB could probably be
> replaced with stroing the pDCB in scsi_device->hostdata on slave_alloc,
> but that could aswell be done in an incremental patch.
Done in the attached patch. Tested as usual and a bit harder.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] remove sleep_on_timeout usage in megaraid
megaraid does sleep_on_timeout on a stack waitq - use msleep instead.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] handle NO_SENSE in sd
Original patch from
http://marc.theaimsgroup.com/?l=linux-scsi&m=107428662718579&w=2
reworked to according to James' suggestion to handle NO_SENSE the same
as RECOVERED_ERROR.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] fix check_region usage in eata_pio
I'd love to rework the init sequence a bit more, but without beeing able
to actually test the driver I'd rather stick to the bulletproof fix.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] fix sym53c416 check_region usage
again, the init code could use some bigger rework, but let's stick to
the minimal fix until we have some testers.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] remove obsolete API usage from dpt_i2o
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<James.Bottomley@steeleye.com>
[PATCH] Advansys: Add basic highmem/DMA support
On Wed, 2004-05-19 at 05:38, Herbert Xu wrote:
> This is a resend of my patch that adds basic support for highmem
> on i386 to the advansys driver. It has been tested in
> http://bugs.debian.org/245238.
>
> The maintainer email address listed in the MAINTAINERS file bounced
> so someone else will need to look at this.
I converted your patch to use the DMA-API. This will be necessary to
use the EISA advansys boards---Of course, EISA won't work properly until
the entire driver is converted to the driverfs probing API, sigh, but
I'll get around to that eventually.
OK, and I couldn't resist getting rid of the stupid in_isr locking on
the done function.
Converted from original patch by Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<rddunlap@osdl.org>
[PATCH] fix check_region usage in eata_pio
Based on "eata_generic.h", this SCSI controller has 9 bytes of IO
space, not 8, so update request_region(), release_region(), and
n_io_port to use 9 instead of 8.
diffstat:=
drivers/scsi/eata_pio.c | 16 ++++++++--------
1 files changed, 8 insertions(+), 8 deletions(-)
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] scsi_dev_flags must be __initdata, not __init
__init is only for functions
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] Lost 2.4 change for BusLogic info
From: Alan Cox <alan@redhat.com>
I think it might be a good thing if this was fixed to match 2.4
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] scsi_transport_spi.c build fix
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<arjanv@redhat.com>
[PATCH] SCSI: replace deprecated hosts.h file
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] 3ware 9000 driver update
From: "Adam Radford" <aradford@amcc.com>
This patch updates the 3w-9xxx driver in 2.6.7-rc2-mm1 to v2.26.02.000 to
cleanup several things pointed out by Chris Hellwig / Jeff Garzik.
Changes in this release:
- Use descriptive defines for phase numbers.
- Remove un-needed casts for TW_Command_Full
- Rework eh_reset(), eh_abort() spinlocks.
- Remove all mdelays, replace w/ schedule_timeout().
- Remove MODULE_PARAM cmds_per_lun, add sysfs device attribute 'queue_depth'.
- Remove twa_slave_configure().
- Remove twa_info().
- Remove all bitfields from structures, add bitmask macros.
- Remove twa_setup_irq() wrapper, call directly.
- Remove un-needed prototypes.
- Propogate return value of pci_enable_device(), pci_set_dma_mask(), ioremap().
- Use pci_request/free_regions().
- Add missing call to pci_disable_device() on probe failure.
- Unregister character ioctl interface in twa_remove().
- Make some excessively lengthy lines < 80 columns.
- Use pci_module_init() instead of pci_register_driver().
- Remove bogus TW_IN_INTR check, fix twa_interrupt() spinlock.
- Rev driver branch to .02 to denote kernel version.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] 3ware 9000 schedule_timeout fix
From: "Adam Radford" <aradford@amcc.com>
This small patch fixes the broken schedule_timeout() usage in the 3w-9xxx
driver, and replaces the calls with msleep().
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] missing forward declarations in scsi_eh.h
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] update 53c700 to avoid obsolete headers
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] kill dead compat code in advansys
I actually wanted to fix up the check_region usage there but got lost
in the mess. Let's start by kicking out the 2.2 compat and using scsi
layer constants instead of their own redefinitions first.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
sg update to 20040516
From: Douglas Gilbert <dougg@torque.net>
Here are some further refinements to this patch with help
from Pat Mansfield:
- replace vmalloc() with kmalloc(,GFP_KERNEL)
- bump max sg devices from 8192 to 32768
Tested to 16k devices (and 8k devices on a box with 512MB
ram), Patch is against lk 2.6.6 (or 2.6.6-bk1).
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<greg@kroah.com>
Driver Model: And even more cleanup of silly scsi use of the *ATTR macros...
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<greg@kroah.com>
PCI: convert to using dev_attrs for all PCI devices.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<vojtech@suse.cz>
[PATCH] I2C i2c-piix: Don't treat ServerWorks servers as Laptops
I'm sending you this little obvious patch which should enable i2c-piix
to work on IBM servers with ServerWorks chipsets. It still will treat
any IBM/Intel machine as a laptop and refuse to work, but it's better
than before.
i2c: Treat only IBM machines with Intel chipsets as IBM laptops.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<khali@linux-fr.org>
[PATCH] I2C: update I2C IDs
> > Greg, should I send a patch to you with these?
>
> Sure, if it's needed.
Just noticed that I never sent the promised patch. Here it is. I also
added a few other IDs, since we have them in our (2.4) i2c CVS
repository. Having them in 2.6 as well will at least prevent collisions.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<Frank.A.Uepping@t-online.de>
[PATCH] Driver Core: fix struct device::release issue
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
On Saturday 27 March 2004 02:14, Greg KH wrote:
> On Sat, Mar 06, 2004 at 12:47:24PM +0100, Frank A. Uepping wrote:
> > Hi,
> > if device_add fails (e.g. bus_add_device returns an error) then the release
> > method will be called for the device. Is this a bug or a feature?
>
> Are you sure this will happen? device_initialize() gets a reference
> that is still present after device_add() fails, right? So release()
> will not get called.
At the label PMError, kobject_unregister is called, which decrements the
recount by 2, which will result in calling release at label Done (put_device).
kobject_unregister should be superseded by kobject_del.
Here is a patch:
<dlsy@snoqualmie.dp.intel.com>
[PATCH] Fixes for hot-plug drivers (updated)
Here is the updated patch (against 2.6.7-rc1) for the shpchp and pciehp
drivers that fixes the following issues:
- proper LED status when latch is open or card is not present while the
user tries to power up the slot; (reported by D. Keck)
- check if kmalloc() return NULL before proceeding in acpi_get__hpp();
(provided by L. Capitulino)
- add up(&ctrl->crit_sect) before return in error cases in several
places;
- proper handling of resources when there are other onboard devices
behind the p2p bridge that has the hot-plug capabaility;
- need to check negotiated link width in check_lnk_status();
- cleanup board_added() in pciehp
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<spitalnik@penguin.cz>
[PATCH] USB: pegasus driver and ATEN device support
I have created a patch to add support for ATEN device in pegasus usb driver.
I've sent the patch to the maintainer stated in pegasus.h but after several
weeks I didn't recieve a response, so I'm sending it to you now. The patch
should apply cleanly on 2.6.6, but it doesn't apply cleanly on todays -bk as
there was some patch adding some other device. One thing I'm not 100% sure
are the flags specified to PEGASUS_DEV, what means HAS_HOME_PNA?
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<jnardelli@infosciences.com>
[PATCH] USB: fix Memory leak in visor.c and ftdi_sio.c
Signed-off-by: Joe Nardelli <jnardelli@infosciences.com>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Code cleanup for the UHCI driver
This patch makes some simple cleanups in the UHCI driver:
It introduces msecs_to_jiffies() conversions and uses msleep().
It wakes up threads waiting for an endpoint to be disabled
in the oddball case where interrupts aren't working. (This
should have been in a previous patch but I missed it.)
It disables PCI interrupt generation whenever the controller
is reset and enables it when the controller is started. This
may possibly solve some people's problems with suspend/resume.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Debounce all connect change events
This patch makes the hub driver debounce all connection changes. Right
now the driver only does so if the status happens to be CONNECTED at one
particular instant. However, the whole point of debouncing is that the
connection is subject to transient interruptions until it has stabilized;
hence deciding whether to debounce based on a single initial test defeats
the entire purpose.
There are some additional smaller changes that go along with the major
one:
Comments added to hub_port_connect_change() detailing the
conditions under which it will be called.
Don't clear the port's connect-changed feature if it wasn't
set.
Skip debouncing if there wasn't a physical connection change
but only a logical port-enable change (or a firmware-download-
induced device morph -- not yet implemented).
Clear all the hub status change indicators in hub_events()
before handling a connect change. This will reduce syslog
clutter from status change bits that remain set while khubd
is busy taking care of a new device.
The patch includes no changes to the debounce routine itself. Please
apply.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Superficial improvements to hub_port_debounce()
Since my previous suggestions for changes to hub_port_debounce()
encountered so much resistance, this patch makes some fairly superficial
improvements to the code while leaving the logic of the algorithm almost
completely intact. The only behavioral change is that it actually
requests the port status at the start, rather than assuming the status is
not CONNECTED. Changes include:
Vastly improved comments that are now unambiguous and accurately
descriptive of the code.
Local variables changed to more sensible names. The stability
period is now reported in milliseconds rather than a meaningless
poll count.
The sleep interval is moved from the start of the loop to the
end, so that the first time through we read the port status
immediately.
If the connection has not stabilized after the total timeout
expires, -ETIMEDOUT is returned rather than whatever the
current connect status happens to be.
If the connection does stabilize then the port status is returned
so that hub_port_connect_change() will have an up-to-date value
for the status rather than relying on the pre-debounce value.
The changes I wanted to make but other people were worried about are
included as comments. A later (small) patch will uncomment them for
testing.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Genuine changes to hub_port_debounce()
This patch includes the algorithmic changes I would like to see in
hub_port_debounce(). They are:
Increase the total timeout period from 400 ms to 1500 ms.
Check the port's connect-changed status during the polling
loop.
Return as soon as the connection has been stable for the
required time, even if it has been stably _dis_-connected.
(The current code waits for the full timeout period if there
isn't a connection.)
In previous emails I have responded to all the concerns raised by others
about these changes, and I can't imagine how they could cause any trouble.
Increasing the total timeout won't affect people with properly
functioning hardware. Their connections will quickly stabilize
and the routine will return just as before. People with flaky
hardware that takes a long time to settle down will now be able
to use their devices.
Checking the connect-changed status during the polling loop will
make the test more conservative. The code will be able to
detect transient disconnections that it would have missed
before, and it won't return until the connection really _is_
stable. Furthermore, this makes the test compliant with the
USB specification, which requires the stability timer to be
restarted whenever a connection change occurs.
Returning early for disconnections is a simple optimization.
It's more important now that the total timeout length is 1.5
seconds rather than 0.4 seconds.
I urge you to apply this patch and for people to try it out. If there do
turn out to be problems... the patch is very small, well-contained, and
easy to revert.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] Make the scsi error handler bus settle delay a per template option
On 1 Jun 2004, James Bottomley wrote:
> On Tue, 2004-06-01 at 15:29, Alan Stern wrote:
> > In addition, the settle-time delays would have to be removed from the
> > error handler -- which means adding it to all the low-level drivers. Is
> > that doable?
>
> Well, for 2.6, I think that a simple flag indicating that the driver
> will implement it's own timeout should suffice rather than altering
> every LLD...
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<corbet@lwn.net>
[PATCH] Module section offsets in /sys/module
So here I am trying to write about how one can apply gdb to a running
kernel, and I'd like to tell people how to debug loadable modules. Only
with the 2.6 module loader, there's no way to find out where the various
sections in the module image ended up, so you can't do much. This patch
attempts to fix that by adding a "sections" subdirectory to every module's
entry in /sys/module; each attribute in that directory associates a
beginning address with the section name. Those attributes can be used by a
a simple script to generate an add-symbol-file command for gdb, something
like:
#!/bin/bash
#
# gdbline module image
#
# Outputs an add-symbol-file line suitable for pasting into gdb to examine
# a loaded module.
#
cd /sys/module/$1/sections
echo -n add-symbol-file $2 `/bin/cat .text`
for section in .[a-z]* *; do
if [ $section != ".text" ]; then
echo " \\"
echo -n " -s" $section `/bin/cat $section`
fi
done
echo
Currently, this feature is absent if CONFIG_KALLSYMS is not set. I do
wonder if CONFIG_DEBUG_INFO might not be a better choice, now that I think
about it. Section names are unmunged, so "ls -a" is needed to see most of
them.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<greg@kroah.com>
Driver core: finally add a MAINTAINERS entry for it.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<davej@redhat.com>
[AGPGART] Kconfig Typo fix
From: Tuncer M zayamut Ayaz
Signed-off-by: Dave Jones <davej@redhat.com>
<greg@kroah.com>
USB: make usb devices remove their sysfs files when disconnected.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<alex.williamson@hp.com>
[PATCH] ia64: delete McKinley A-stepping code
The patch below removes the config option and one bit of code for
McKinley A0/A1 CPU workarounds. These CPUs were never used in
production, and IIRC this workaround really only affected X11.
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<Siegfried.Hildebrand@FernUni-Hagen.de>
[PATCH] Re: Problems with cyberjack usb-serial-module since kernel 2.6.2
> Send me a patch to back those changes out to fix your device and I'll
> apply it. If the author is around to realize this, that should wake
> them up :)
Ok, here you are! :)
Attached is a patch for linux-2.6.7-rc2. (though the patch hasn't changed
since -rc1)
Again a short description:
(the patch removes most of the changes done in linux-2.6.2)
1. Removed the local buffer of cyberjack_write, because something goes wrong
upon a write-request bigger than the buffer. Without this, a write-request
stalls with error -3.
2. Removed some usb_clear_halt() lines. Without this, the device doesn't even
open and returns -7.
It works for my cyberjack pinpad USB card reader on
- nforce2 chipset
- VIA KM266 chipset
- AMD Irongate chipset
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<mdharm-usb@one-eyed-alien.net>
[PATCH] USB Storage: GetMaxLUN tightening
This patch started life from Alan Stern as as274, and has been heavily
modified. It narrows the case where a clear_halt() is issued after a
failed GetMaxLUN command to only a STALL case.
Since the only legimate responses to a GetMaxLUN are STALL or data,
anything else is now considered a fatal error and we give up on the device.
Signed-off-by: Matthew Dharm <mdharm-usb@one-eyed-alien.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<kaie@kuix.de>
[PATCH] USB: enable pwc usb camera driver
The attached patch enables the pwc driver included with kernel 2.6.7-rc2
It also removes the warnings during compilation.
However, note that I blindly duplicated the release approach used by
other usb camera drivers, replacing the current no-op.
The driver works for me with a Logitech QuickCam Notebook Pro and
GnomeMeeting.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Fix logic in usb_get_descriptor()
This patch fixes a simple logic error in usb_get_descriptor(). It also
takes the opportunity to make the subroutine a little easier to read.
Please apply.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<arun.sharma@intel.com>
[PATCH] ia64: fix ia32 virtual memory leaks due to partial-page mappings
Certain IA-32 applications which do mmap/munmaps which are not
PAGE_SIZE aligned could see temporary (recovered at process exit time)
memory leaks, because the kernel didn't have enough data to decide if
the complete page could be unmapped. This patch adds a new data
structure called the "partial page list" which helps the kernel keep
track of precisely which 4k pages are in use by the IA-32 application.
Armed with this data, the kernel can make better decisions at munmap
and mprotect time. No significant performance degradation was observed
in the workloads we tested and in some cases, the performance actually
improved! This is possibly due to the reduced length of the vma list.
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: Gordon Jin <gordon.jin@intel.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<baldrick@free.fr>
[PATCH] USB devio.c: deadlock fix
proc_resetdevice is called with dev->serialize held.
usb_reset_device takes dev->serialize and then calls
__usb_reset_device. To avoid deadlock, proc_resetdevice
should call __usb_reset_device directly.
Signed-off-by: Duncan Sands <baldrick@free.fr>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Check port reset return code
This patch adds checking for the SET-FEATURE request that actually does a
port reset. Without the check, the hub driver just assumes that the port
reset command actually was transferred okay.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Fix resource leakage in the hub driver
The hub driver is very careless about returning resources when an error
occurs while installing a new device. This patch attempts to put some
order back into the situation. Details:
Since usb_new_device() allocates neither the device structure
nor the device address, it shouldn't release either one.
Because usb_new_device() no longer releases the device structure,
usb_register_root_hub() doesn't need to take an extra reference
to it.
Since the device address selection and TT setup code is used
only for new devices, not ones being reset, move that code from
hub_port_init() to hub_port_connect_change(). By the same token,
hub_port_init() doesn't have to release the device address or
the device structure.
Just to make things look better, move the failure code in
hub_port_init() to the end of the routine. And when disabling
endpoint 0, disable both the IN and OUT parts of the endpoint.
In hub_port_connect_change(), make all the failure paths
execute the same code so that resources are always released.
These resources comprise: the pointer from the parent to the
new child device, the HCD state for ep0, the device's address,
and the device structure itself -- in short, everything that's
set up before calling usb_new_device().
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: unusual_devs.h update
Given the problems that Dan Scholnik has reported, we should combine the
unusual_devs.h entries for the Casio QV cameras into one. The new
NEED_OVERRIDE flag will prevent complaints about unnecessary overrides,
and Dan says the same subclass and protocol values should work for all the
cameras. If they don't we'll hear about it soon enough!
On Tue, 1 Jun 2004, Dan Scholnik wrote:
> On Tue, 2004-06-01 at 14:14, Alan Stern wrote:
> > On Tue, 1 Jun 2004, Dan Scholnik wrote:
> >
> > > Up until the 2.6 kernels, there was one entry for all the QV cameras
> > > with both US_SC_8070 and US_PR_CB that I think seemed to work fine for
> > > everyone. As far as I know the only problem was all the folks emailing
> > > the log entry stating that the Casio entry wasn't needed. So, you could
> > > revert back to that, or revert back to the 2.6.3ish version (pre-as190)
> > > that had the overrides just for product IDs 1001-9009. I'm not really
> > > an expert on Casio's cameras, I'm afraid, just the one model I own which
> > > is 4-5 years old now.
> > >
> > > I'll be happy to prepare a patch any way you choose to go.
> >
> > How does this work for you?
> >
> > Alan Stern
>
> Works fine for me; that's I think exactly how it was from the beginning
> until 2.6 and the later 2.4 kernels when all the changes were made.
> Just cross your fingers that it doesn't somehow break newer Casios, as
> it would seem every camera they ever made falls under that entry.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: rndis (1/4) update OID support
NDIS devices have a generic attribute get/set API where the attributes
are identified by 32 bit "OIDs". This fixes some problems with the OIDs
supported by the original RNDIS patch:
- It included OIDs not found in the RNDIS spec. These have been
removed. As a rule, these weren't exported in the "OIDs I support"
list, and only a couple wouldn't fail those accesses, so this mostly
changes what debug printk appears.
- OIDs used for optional 802.3 statistics were partially supported.
They're all in the OID list now, but the support is #ifdeffed out.
(Those statistics were mostly just made up, anyway!)
- "Required" OIDs for suspend, resume, and wakeup support weren't
listed. Their messages are now defined, but support is #ifdeffed
out. Seems the docs aren't entirely accurate, and Windows can
behave reasonably without them. (This area needs help from someone
who knows MS-Windows power management.)
There are also a few minor cleanups, more reasonable default volume level
for debug messages (never at KERN_INFO, keepalives only if VERBOSE), and
dumping of all bytes of some undocumented messages Windows XP has been
seen emitting shortly before the host suspended itself.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: rndis (2/4) fix memory leaks
Tao Huang wrote:
> I'm writing udc driver for S3C2410. I found RNDIS almost not call my
> driver's free_request and free_buffer. So after run my driver about 3
> hours the system will out of memory.
>
> This patch will fix the memory leak.
>
> There will still have memory leak when driver unload, but I don't known
> where is the proper place to fix it.
> 1) rndis.c should free resp_queue when it unload
> 2) ether.c should free tx_reqs and rx_reqs when it unload (as
> eth_reset_config)
Thanks ... this is a nice patch to have.
From: Tao Huang <huangt@star-net.cn>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: rndis (4/4) start documenting spec variances
This partially reverts one of the changes in an earlier patch,
starting to document where Microsoft's spec is lying. Needed
to interop with Windows ME.
The Windows ME implementation of RNDIS relies on a message that
Microsoft's specification says isn't used. Restore this (removed
in earlier cleanup), and start collecting comments specifically
on where MSFT violates its own specifications.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<kaos@sgi.com>
[PATCH] ia64: Rename SN "modules" variable to "sn_modules".
SN code has a "modules" variable that conflicts with a variable of the
same name in kernel/module.c. This conflict breaks lcrash for ia64.
Rename "modules" to "sn_modules".
Signed-off-by: Keith Owens <kaos@sgi.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<davej@redhat.com>
[AGPGART] Don't waffle about unsupported serverworks chipsets if they don't do AGP.
From: Matt Domsch
Signed-off-by: Dave Jones <davej@redhat.com>
<daniel.ritz@gmx.ch>
[PATCH] PCI: fix irq routing on acer travelmate 360 laptop
Fixes interrupt routing on acer travelmate 360 notebooks. it looks like
the bios assigned the wrong pirq value for the cardbus bridge. just
assigning irq 10 to all devices with pirq 0x63 would break second usb port.
pirq 0x68 seems to be right one for cardbus.
Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<mhoffman@lightlink.com>
[PATCH] I2C: add alternate VCORE calculations for w83627thf and w83637hf
This patch adds support for the alternate in0/VCORE calculation which is
available for 2 of 4 chips this driver supports. It also fixes a minor
bug in the standard voltage input calculation.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<jmunsin@iki.fi>
[PATCH] I2C: drivers/i2c/chips/it87.c cleanup patch
Attached is a cleanup patch for the it87 sensor driver, against
2.6.7-rc2. Jean Delvare has reviewed it.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: usb root hubs can set power budgets
This adds hub_set_power_budget(), mostly so that HCDs for low
powered ports (cell phone, PDA, etc) can more easily report their
true power budgets. It's not always 500mA per root hub port; this
makes dummy_hcd report the minimum, 8mA.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: usb suspend/resume work better on net2280
This makes net2280 behave more correctly with respect to
usb suspend and resume processing.
So for example gadget zero autoresume testing works.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: rndis (3/4) Big Endian support for gadget RNDIS
Add byteswapping. Original version partially worked on PPC with Net2280,
this version applies to the latest RNDIS code but hasn't been retested on
big-endian. Ping should be working in at least one one direction.
Also added a handful of other things from my BK: track suspend/resume
(to eventually implement wake-on-lan), give a better rndis error
message, and add missing declarations for PM-related OIDs (usage is
#ifdeffed out by previous patch).
From: Jon Neal <jon@ballardtech.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] lh7a404 USB host against 2.6.7-rc2
Support for the Sharp LH7A404 OHCI, another non-PCI implementation.
This uses a platform_device and a workaround for a register read
problem.
Signed-off-by: Marc Singer <elf@buici.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Initialize endpoint autoconfig in g_file_storage
This one-line patch corrects a simple problem in the g_file_storage
driver. It neglected to initialize the endpoint-autoconfiguration library
before using it. Please apply.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<hannal@us.ibm.com>
[PATCH] Add cpu hotplug support to cpuid.c
Here is the patch that uses a cpu hotplug callback, to allow dynamic support
of cpu id for classes in sysfs.
This patch applies on top of the one I sent out earlier that Greg included.
I do not have access to hardware that supports cpu hotswapping (virtually or not)
so have not been able to test that aspect of the patch. However, the original
functionality of listing static cpu's still works.
Please consider for testing or inclusion.
Signed-off-by: Hanna Linder <hannal@us.ibm.com>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<rmk@arm.linux.org.uk>
[PATCH] Add platform_get_resource()
This patch adds management of platform device resources to the
device model, allowing drivers to lookup resources, IRQs and DMA
numbers in the platform device resource array. We also add a
couple of functions which allow platform devices and their resources
to be registered.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<greg@kroah.com>
cpuid: fix hotplug cpu remove bug for class device.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<akpm@osdl.org>
[PATCH] I2C: w83627hf.c build fix
with gcc-2.95:
drivers/i2c/chips/w83627hf.c:482: parse error before `static'
drivers/i2c/chips/w83627hf.c:502: parse error before `static'
drivers/i2c/chips/w83627hf.c: In function `show_regs_fan_1':
drivers/i2c/chips/w83627hf.c:541: warning: implicit declaration of function `show_fan'
drivers/i2c/chips/w83627hf.c: In function `w83627hf_detect':
drivers/i2c/chips/w83627hf.c:1074: `dev_attr_in0_min' undeclared (first use in this function)
drivers/i2c/chips/w83627hf.c:1074: (Each undeclared identifier is reported only once
drivers/i2c/chips/w83627hf.c:1074: for each function it appears in.)
drivers/i2c/chips/w83627hf.c: At top level:
drivers/i2c/chips/w83627hf.c:428: warning: `show_regs_in_min0' defined but not used
drivers/i2c/chips/w83627hf.c:441: warning: `store_regs_in_min0' defined but not used
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<oliver@neukum.org>
[PATCH] USB: add printer reset ioctl
- add soft reset ioctl
Signed-off-by: Oliver Neukum <oliver@neukum.name>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Fix bus-list root-hub race
There are a few places where the code enumerates through all the USB
devices on all the buses, starting with each bus's root hub and working
down. However a bus does not always have a root hub, and the code does
not check that the root_hub pointer is non-NULL. This patch fixes the
problem, using the usb_bus_list_lock semaphore to synchronize access when
root hubs are added or removed.
In addition it seemed like a good idea to minimize the time that a
non-fully-configured root hub is accessible through the bus's pointer. So
this patch delays setting the pointer and holds usb_bus_list_lock while
configuring a root hub.
It turned out that a bunch of things needed to be changed for all this to
work:
Check for NULL root_hub pointer in usb_device_read() and
usb_find_device().
Pass the root-hub device as a separate argument to
hcd_register_root().
Make usb_register_root_hub() acquire the usb_bus_list_lock and
set the bus->root_hub pointer.
For consistency's sake, move the place where the children[]
pointer to a non-root-hub device gets stored as close as possible
to where usb_new_device() is called.
Make usb_disconnect() acquire the usb_bus_list_lock when removing
a root hub.
Change usb_hcd_pci_remove() and the non-PCI host drivers so that
they call usb_disconnect() with a pointer to the bus's root_hub
pointer, not a pointer to a temporary variable.
Change all the host controller drivers not to store the root_hub
pointer in the bus structure but instead to pass it as a new
argument to hcd_register_root().
I made some attempt to update the hc_sl811 driver along with the rest, but
it's pretty clear that driver won't work in the current framework. Among
other things, it never reads the root hub's device descriptor. To what
extent is the driver really supported?
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Minor tidying up of hub driver
After my last few changesets there were a few small items that needed to
be tidied up.
Update kerneldoc to reflect the actual operation of
usb_disconnect() and usb_new_device(). The new locking
requirements are listed too, though they aren't all
implemented yet.
Fulfill the new locking requirement in hcd_panic().
Remove unneeded local variables to conserve stack space in
usb_disconnect(), which calls itself recursively.
In hub_port_connect_change(), store the parent's children[]
pointer as late as possible and don't lock the new device until
then (that's when it becomes globally accessible). This will
minimize the time that the not-fully-configured device structure
is visible to other parts of the kernel.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Update root-hub code for the ohci-lh7a404 driver
On Wed, 9 Jun 2004, David Brownell wrote:
> Needs an update for ohci-lh7a404.c too ...
I didn't even know this driver existed! Where did usb/host/* come from?
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<greg@kroah.com>
USB: crap, I misapplied a patch with the wrong level
This gets rid of usb/host and puts the file in the proper drivers/usb/host
directory.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<dtor_core@ameritech.net>
[PATCH] Driver Core: Suppress platform device suffixes
Do not add numeric suffix to platform device name if device id is set to
-1. This can be used when there can be only one instance of a device
(like i8042).
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<dtor_core@ameritech.net>
[PATCH] Driver Core: Whitespace fixes
Whitespace and formatting changes (a,b,c -> a, b, c) in drivers/base
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<greg@kroah.com>
Driver Core: more whitespace fixups
This catches the files I had to do by hand as Dmitry's patch differed from my tree.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<rtjohnso@eecs.berkeley.edu>
[PATCH] PATCH: 2.6.7-rc3 drivers/usb/core/devio.c: user/kernel pointer bugs
Since ctrl is copied in from userspace, ctrl.data cannot safely be
dereferenced. Let me know if you have any questions or if I've made
a mistake.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<greg@kroah.com>
USB: sparse cleanups for the whole driver/usb/* tree.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<greg@kroah.com>
USB: fix up dumb int_user_arg variable name as pointed out by Al Viro.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<greg@kroah.com>
I2C: sparse cleanups for drivers/i2c/*
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<Robert.Picco@hp.com>
[PATCH] ia64: mark non-existent NUMA-nodes as offline
I found a problem with HP NUMA configuration in 2.6.7-rc3-mm1. The
node_online_map is incorrect because of actions taken by
reassign_cpu_only_nodes in arch/ia64/mm/discontig.c. The mm1 patch
which changes the mempolicy for the init_task uses this invalid
node_online_map and eventually uses a non-existent node's zonelist
when calling __alloc_pages.
The patch below takes care of this issue. It puts the non-existent
nodes offline.
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<kenneth.w.chen@intel.com>
[PATCH] ia64: fix race in fsys_bubble_down to avoid fp-register corruption
The fast system-call fall-back-path has a race: it reads PSR, modifies
some bits, then writes back the new PSR. Unfortunately, the contents
of PSR may change between reading and writing it. For example, an
interrupt could occur which could trigger a context-switch. The
context-switch might in turn flush the floating-point-high (FPH)
partition to memory, clear PSR.MFH, and set PSR.DFH. To prevent this
race, the patch below turns off PSR.I before reading PSR.
This fixes a floating-point corruption problem that was observed on a
system with a libc which has the fast system-call support enabled.
The performance impact is minimal (on the order of a handful of cycles).
Signed-off-by: Kevin Tian <kevin.tian@intel.com>
Signed-off-by: Ken Chen <kenneth.w.chen@intel.com>
Signed-off-by: Asit Mallick <asit.k.mallick@intel.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<akpm@osdl.org>
[PATCH] fealnx-mac-address-and-other-issues.patch
(resend - I need to get this out of my tree my one means or another..)
From: "SuD (Alex)" <sud@latinsud.com>
I recently was given a surecom 10/100 ethernet card and found that i could
not change Mac address for it as other driver/devices allow. I tried to
implement the missing feature and noticed that the device is quite peculiar
(or either my system is broken), when trying to fill mac address registers
(no matter whether io_ops is set): - If I write a byte (writeb) to an even
i/o address it seems like actually a word was written (the next byte is set
to 0). - If I write a byte to an odd i/o address my pc gets bad freezed.
That made think of writing 16bit words (writew) for the memory address, as
opposed to what most driver examples do. It works for me (I hope i set the
lines at the right place in device_open function after the device is
reset). I hope the code is clean enough and does not mess with byte
ordering. This is the patch (this time against 2.6.5):
(akpm: Is this right on big-endian?)
<margitsw@t-online.de>
[PATCH] prism54: Kernel compatibility
2004-03-20 Margit Schubert-While <margitsw@t-online.de>
* isl_38xx.[ch], isl_ioctl.c, islpci_dev.[ch], islpci_eth.c
islpci_hotplug.c, islpci_mgt.[ch], oid_mgt.c, prismcompat.h:
Adopt new prism54 kernel compatibility.
Remove remaining kernel version ifdefs.
<shemminger@osdl.org>
[PATCH] fix oops from acenic ethtool
Fix the following OOPS that happens when doing ifup on FC-2
with 2.6.7 in acenic and a security hole due to missing capable(NET_ADMIN),
by replacing private ethtool handling with ethtool_ops.
(Yes, Jes because of DEV_ETHTOOL_OPS define it will still work
on ancient kernels.)
<jgarzik@pobox.com>
[netdrvr acenic] remove unneeded ifdefs
<margitsw@t-online.de>
[PATCH] prism54: Fix endian patch
* Split out patch islpci_eth.c :
* Fix endian problem (bug 74/75 related)
<rmk@arm.linux.org.uk>
[PATCH] add ARM smc91x driver
<bunk@fs.tum.de>
[PATCH] add NAPI help texts
NAPI seems to be so self-explaining that no help texts are needed. ;-)
I combined the two help texts that were at NAPI options, and added them
to all NAPI options.
<margitsw@t-online.de>
[PATCH] prism54: Fix bugs 74/75
2004-03-22 Aurelien Alleaume <slts@free.fr>
* oid_mgt.c, isl_ioctl.c : Minor bugfixes : #74 and #75.
<margitsw@t-online.de>
[PATCH] prism54: Fix bugs 39/73
2004-04-07 Margit Schubert-While <margitsw@t-online.de>
* Bugs 39 and 73
<margitsw@t-online.de>
[PATCH] prism54: Fix bug 77, strengthened oid txn
2004-04-09 Aurelien Alleaume <slts@free.fr>
* oid_mgt.c, isl_ioctl.c : Cleanups. Bug #77. Minor stuffs.
* islpci_mgt.c (islpci_mgt_transaction) : enforce serialization
in oid transaction. lindent.sh.
* islpci_mgt.c (islpci_mgt_transaction) : Strengthened oid transaction.
<margitsw@t-online.de>
[PATCH] prism54: Don't allow mib reads while unconfigured
004-04-17 Aurelien Alleaume <slts@free.fr>
* oid_mgt.c, isl_ioctl.c : Cleanup. Prevented real oid reading
before the card is configured with mib values (might be
related to
bug #53).
<margitsw@t-online.de>
[PATCH] prism54: Add likely/unlikely, KO wds completely
* islpci_mgt.h : Change init_wds definition
* islpci_eth.c : Do some likely/unlikely
<margitsw@t-online.de>
[PATCH] prism54: Align skb patch
* islpci_eth.c, islpci_dev.c : Align skb->data unconditonally after
allocation. This would appear to improve RX rate
<margitsw@t-online.de>
[PATCH] prism54: Reduce module verbosity
2004-05-01 Margit Schubert-While <margitsw@t-online.de>
* Reduce module verbosity
<margitsw@t-online.de>
[PATCH] prism54: Fix channel stats, bump version to 1.2
2004-05-20 Aurelien Alleaume <slts@free.fr>
* islpci_eth.c : use dev_kfree_skb_irq instead of dev_kfree_skb where needed.
* isl_ioctl.c : report channel instead of frequency in scan.
* islpci_hotplug.c : bump version to 1.2
<margitsw@t-online.de>
[PATCH] prism54: Fix typo
2004-05-29 Margit Schubert-While <margitsw@t-online.de>
* isl_ioctl.c : Fix typo
<margitsw@t-online.de>
[PATCH] prism54: White space and indentation
2004-05-29 Margit Schubert-While <margitsw@t-online.de>
* White space and indentation patch
<kaos@sgi.com>
[PATCH] ia64: Remove warnings when unwind debug is turned on
Turning on UNW_DEBUG generates warnings for incorrect number of
parameters for formats and several cases of "suggest explicit braces to
avoid ambiguous `else'", because UNW_DPRINT contains an if statement.
Signed-off-by: Keith Owens <kaos@sgi.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<davidm@tiger.hpl.hp.com>
ia64: Update defconfig
<stern@rowland.harvard.edu>
[PATCH] USB: Mark devices as NOTATTACHED as soon as possible
This patch implements something we've been lacking for a long time: a way
to mark devices as USB_STATE_NOTATTACHED as soon as we know that they're
gone. The usb_device->state member is no longer protected by the
->serialize semaphore; instead there's a new private spinlock. Usbcore
routines should no longer set ->state directly; instead they should use
the new utility routine usb_set_device_state(). There are protections
against changing states while devices are being added or removed.
Change assignments to udev->state into calls of
usb_set_device_state().
Add new private device_state_lock to the hub driver, along
with usb_set_device_state() and recursively_mark_NOTATTACHED().
Acquire the new spinlock while adding or removing children[]
pointers.
When disabling a port that has a child device, mark the child
as NOTATTACHED.
You mentioned once having tried to do something like this and running into
trouble. Take a good look and let me know if you see any difficulties
here.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<thoffman@arnor.net>
[PATCH] USB: ATI Remote driver update
Here are some contributed improvements for the ATI remote driver.
I submitted the driver and it was accepted several months ago.
Since then a few people have sent me patches and suggestions.
This patch adds two things:
(1) support for the "Lola" X10 remote, sent to me by
Seth Cohn <sethcohn (at) yahoo.com>
(2) key autorepeat support, sent to me by
Vincent Vanackere <vanackere (at) lif.univ-mrs.fr>
The key autorepeat support has been tested by me, but the Lola support
has not, as I don't have the hardware.
Thanks to Seth and Vincent, with my apologies for taking so long to
forward their improvements along.
Signed-off-by: Torrey Hoffman <thoffman@arnor.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: usbtest just uses module_param()
This prevents some warnings during modprobe.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: usbnet shouldn't oops on cdc error path
If the string descriptor fetch works, no problem. Else
make the disconnect() logic -- newly called because of
"recent" changes to interface claiming logic -- use its
fast cleanup path, since we're still not fully set up yet.
Should resolve OSDL bugid 2714; please merge.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: retry string fetches on ZLPs not just STALLs
This matches the behavior for other descriptor fetches.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: usb on big endian, ehci needs a byteswap
Adds a missing byteswap that would affect interrupt transfers
with EHCI on big-endian platforms, like Rick's MIPS-4km uClinux.
Needed for external hubs, and then likely for mice, keyboards,
and so on.
From: Rick Sewill <rsewill@cableone.net>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<bjorn.helgaas@hp.com>
[PATCH] PCI: clarify pci.txt wrt IRQ allocation
I think we should make it explicit that PCI IRQs shouldn't be relied
upon until after pci_enable_device(). This patch:
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.7-rc3/2.6.7-rc3-mm1/broken-out/bk-acpi.patch
does PCI interrupt routing (based on ACPI _PRT) and IRQ allocation
at pci_enable_device()-time.
(To avoid breaking things in 2.6, the above patch still allocates
all PCI IRQs in pci_acpi_init(), before any drivers are initialized.
But that shouldn't be needed by correct drivers, and I'd like to
remove it in 2.7.)
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<lxiep@us.ibm.com>
[PATCH] PCI Hotplug: rpaphp.patch -- multi-function devices not handled correctly
I made changes to rpaphp code, so it can handle multi-fuction
devices correctly. The problem is that the pci_dev field of slot struct
can only record one pci_dev of the devices of a multi-fuction card. I
changed pci_dev (a single pci_dev type pointer) to pci_funcs( a list of
pci_dev type pointers). I rewrote some of the config/unconfig code to
support the slot struct change.
Along with above changes, I added LDRSLOT(logical I/O slot) support.
We need LDRSLOT support for DLPAR I/O. A card in a LDRSLOT can't be
physically removed, but can be logically removed from one partiton and
reassinged to another partition.
I also merged rpaphp changes from ames tree.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<hannal@us.ibm.com>
[PATCH] Driver Model: Add class support to msr.c
This patch enables class support in arch/i386/kernel/msr.c. Very simliar
to cpuid (with the fixes Zwane/Greg made, thanks).
[root@w-hlinder2 root]# tree /sys/class/msr
/sys/class/msr
| -- msr0
| `-- dev
`-- msr1
`-- dev
2 directories, 2 files
Thanks to Randy Dunlap for pointing out the unnecessary tabs. Fixed.
Signed-off-by Hanna Linder <hannal@us.ibm.com>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<linux@kodeaffe.de>
[PATCH] sysfs: fs/sysfs/inode.c: modify parents ctime and mtime on creation
When a node is added to sysfs (e.g. a device plugged in via USB), the
filesystem fails to make this change visible in the parent directory's
ctime/mtime. This is in contrast to removing a device, because in that
case, sysfs makes use of the function simple_unlink from fs/libfs.c which
takes care of that. Instead of using simple_link from fs/libfs.c on
creation, sysfs implements its own mechanism. This patch hooks into the
function sysfs_create and sets the ctime and the mtime of the parent to
CURRENT_TIME.
Signed-off-by: Sebastian Henschel <linux@kodeaffe.de>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<acme@toy.kerneljanitors.org>
[NET] first bits of net/core/stream.c
Move tcp sk_wmem_queued related functions to net/core/stream.c, will be
used by other SOCK_STREAM protocols, starting with LLC.
Also move the tcp_charge_skb to sock.h, for the same reasons.
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<greg@kroah.com>
I2C: sparse cleanups again, based on comments from lkml
This is more like the original code.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<mdharm-usb@one-eyed-alien.net>
[PATCH] USB Storage: INQUIRY fixup, mode-sense options, Genesys devices
This patch does a few things (all in the same section of code). It started
life as patches as226b, as280, and as275. Later it was merged into as226e
and I added significantly to it.
First, this patch introduces a new config option to allow people to enable
write-protect detection for their USB devices. With some luck, we've
finally got it right and can eventually remove this option in favor of
enabling this behavior all the time.
Next, we change how we force some flags on -- it turns out that there are
some 'generic' entries in the SCSI devinfo which was overriding us when we
didn't want it.
Finally, we add a safety check to the workaround for GeneSys Logic devices
-- if the max_sectors parameter has already been turned down, we won't turn
it up.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<mdharm-usb@one-eyed-alien.net>
[PATCH] USB Storage: Fix race when removing the SCSI host
This patch fixes a race is disconnecting a usb-storage device that occurs
with the SCSI layer. It's primarily reproducable via adding delays into
various disconnect and reset processing paths, but has also been
encountered in the field.
This patch started life as as281b, and was modified by me only to patch
properly against current kernels.
The main features of the patch are:
Store the host pointer at the start of the control thread
rather than trying to get it from srb->device; after the host
is removed the SCSI device structure may no longer exist.
Keep dev_semaphore locked during the entire time the control
thread or reset handlers are using the us_data structure.
Reorder the items in dissociate_dev() and release_resources()
so that things are released in the opposite order from the way
they were acquired originally. Don't bother to increment and
decrement the usb_device's reference count; it's unnecessary.
In disconnect(), first set the DISCONNECTING flag so that no
more I/O will take place and no more requests will be accepted.
Next, cut short the current command and wait for it to finish.
Then call scsi_remove_host(). The SCSI core guarantees that
when scsi_remove_host() returns, the host will not be in error
recovery and all outstanding commands will have been cancelled.
Remove some old useless left-over code that was #if'ed out.
Use a wait_queue for the 6-second delay during device resets
so that we can be woken up in the middle if a disconnect occurs.
The key point here is that after scsi_remove_host(), everything is idle as
far as the SCSI midlayer is concerned. But if there was a command in
progress at the time, the midlayer will abort it without telling us or
waiting for it to complete. Hence we have to wait for the control thread
to be idle before we can try to kill it. This should happen quickly,
since all I/O attempted by the thread will fail immediately.
Signed-off-by: Matthew Dharm <mdharm-usb@one-eyed-alien.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Fix bug in TT initialization introduced by earlier
This patch repairs a bug introduced by an earlier patch: The TT
initialization code was moved to _after_ the TT's first use. The patch
simply puts the code back the way it used to be.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<mhoffman@lightlink.com>
[PATCH] I2C: add alternate VCORE calculations for w83627thf and w83637hf
Pick a VRM (for VID interpretation) based on the VRM & OVT config,
if available. Props to Jean Delvare <khali@linux-fr.org> for the
idea & code fragment.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<rl@hellgate.ch>
[PATCH] PCI: Fix PME bits in pci.txt
Signed-off-by: Roger Luethi <rl@hellgate.ch>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<rl@hellgate.ch>
[PATCH] PCI: Fix off-by-one in pci_enable_wake
Fix off-by-one in pci_enable_wake.
Bit field location determined by mask, not value.
Signed-off-by: Roger Luethi <rl@hellgate.ch>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<jgarzik@pobox.com>
[libata] don't probe from workqueue
Since we want the probe phase to call other workqueues, this is
required to eliminate future deadlocks.
Other methods would include starting a single-shot thread just for
probing, but overall, using a separate thread for probing is pointless
since we are already in process context when we probe.
So, we simply call ata_bus_probe directly.
<stern@rowland.harvard.edu>
[PATCH] USB: Remove private khubd semaphore
This patch removes the private semaphore used by the hub driver, and uses
the regular "serialize" semaphore instead. This will satisfy the general
locking requirements for adding and removing devices attached to the hub.
The only tricky aspect is that now the hub event handler must take a
reference to the hub device while waiting to acquire the semaphore, in
case the hub is disconnected during the wait.
The patch also replaces a few occurrences of spin_lock_irqsave() in
regions where interrupts are known to be enabled with spin_lock_irq().
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<johnpol@2ka.mipt.ru>
[PATCH] Typo in ethtool code in acenic driver
In 10mbps detection code.
<a.othieno@bluewin.ch>
[PATCH] Kill stale references to Documentation/networking/8139too.txt
Documentation/networking/8139too.txt was removed with this ChangeSet:
ChangeSet@1.1371.153.2 2004-01-10 15:34:47-05:00 jgarzik@redhat.com
[netdrvr] remove Documentation/networking/8139too.txt
All sections of the document are woefully outdated.
However, `grep' still reveals these references to it:
drivers/net/8139too.c:90: See 8139too.txt for more details.
drivers/net/Kconfig:1539: <file:Documentation/networking/8139too.txt> as well as the
Documentation/networking/00-INDEX:7:8139too.txt
Signed-off-by: Arthur Othieno <a.othieno@bluewin.ch>
<akpm@osdl.org>
[PATCH] prism94 build fix
init_wds is being instantiated in both isl_ioctl.c and islpci_eth.c, causing
linkage errors.
drivers/net/wireless/prism54/islpci_mgt.o(.rodata+0x198): In function `islpci_mgmt_rx_fill':
/usr/src/25/drivers/net/wireless/prism54/islpci_mgt.c:154: multiple definition of `init_wds'
drivers/net/wireless/prism54/islpci_eth.o(.rodata+0x1c8):/usr/src/25/include/linux/skbuff.h:815: first defined here
Signed-off-by: Andrew Morton <akpm@osdl.org>
<jgarzik@pobox.com>
[libata] PCI IDE DMA code shuffling
PCI IDE DMA standard (or "bmdma") helper routines ata_bmdma_stop,
ata_bmdma_ack_irq, and ata_bmdma_status are added to linux/libata.h,
and used in libata-core.
There is a minor behavior change, such that, the Alt Status register
is read before acknowledging the bmdma interrupt. This should be ok,
and furthermore there will be more significant behavior changes
in this area coming soon.
<jgarzik@pobox.com>
[libata] PCI IDE command-end/irq-acknowledge cleanup
Restruct default irq handler (used for many PCI IDE-like SATA
controllers) to obtain device status and acknowledge interrupts
a bit differently.
In an attempt to better attack the "ich5 screaming interrupt" problem,
acknowledge and clear the device's INTRQ by reading the Status register
_before_ ack'ing the controller's irq status. This is a deviation
from how the Linux IDE driver acknowledges interrupts, but it may
be the best method, since the ICH5 appears to continue to assert
the interrupt bit in the BMDMA until the device INTRQ line is cleared.
Of course, SATA has no INTRQ line per se, so ICH5 essentially has
new interrupt behavior not seen before in the PCI IDE world, while
pretending that it's compatible with PCI IDE. Sigh.
This change affects all SATA controllers (for which there are libata
drivers) except for sata_promise and sata_sx4.
<jgarzik@pobox.com>
[libata] ->qc_prep hook
Rename ->fill_sg hook to ->qc_prep, and call it unconditionally
(as opposed to ->fill_sg, which was called only when the
flag ATA_QCFLAG_SG was set).
<aia21@cantab.net>
NTFS: sparse fix: void function with return (value)
Sparse:
=======
CHECK fs/ntfs/attrib.c
fs/ntfs/malloc.h:57:15: warning: return expression in void function
[repeated several times]
From: Mika Kukkonen <mika@osdl.org>
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
<aia21@cantab.net>
NTFS: - Add new element itype.index.collation_rule to the ntfs inode
structure and set it appropriately in ntfs_read_locked_inode().
- Implement a new inode type "index" to allow efficient access to the
indices found in various system files and adapt inode handling
accordingly (fs/ntfs/inode.[hc]). An index inode is essentially an
attribute inode (NInoAttr() is true) with an attribute type of
AT_INDEX_ALLOCATION. As such, it is no longer allowed to call
ntfs_attr_iget() with an attribute type of AT_INDEX_ALLOCATION as
there would be no way to distinguish between normal attribute inodes
and index inodes. The function to obtain an index inode is
ntfs_index_iget() and it uses the helper function
ntfs_read_locked_index_inode(). Note, we do not overload
ntfs_attr_iget() as indices consist of multiple attributes so using
ntfs_attr_iget() to obtain an index inode would be confusing.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
<rmk@flint.arm.linux.org.uk>
[ARM] Add clock API
Since peripheral clocks are be derived in SoC or even platform
specific ways, we need a way to keep this information out of the
drivers. AMBA Primecells are defined in terms of functional units
where clocks are derived from external sources, and it is up to the
SoC designer to determine where to derive those clocks from.
Therefore, we provide a very basic API which allows platforms to
provide this information in a generic manner to their peripherals.
This framework also allows peripherals to shut down unused clock
sources when they're not in use.
<aia21@cantab.net>
NTFS: Ensure that there is no overflow when doing page->index <<
PAGE_CACHE_SHIFT by casting page->index to s64 in fs/ntfs/aops.c.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
<icampbell@com.rmk.(none)>
[ARM PATCH] 1926/3: PXAFB cleanups and fixes
Patch from Ian Campbell
Sorry, 1926/2 was missing a brace. Fixed here.
Previous commentry:
I have corrected the grayscale conversion to correctly use the upper
byte rather than the lower one. As requested I have also left the
actual grayscale conversion where it was this time and just dealt with
the palette differences in pxafb_setpalettereg.
fb_alloc_cmap is only called when bits_per_pixel is < 16, otherwise
any existing cmap is freed.
I also fixed up all the spaces and brackets issues (not just the one
you raised previously) this introduces some noise in the patch, if
you'd like the two patches separately please ask.
<elf@com.rmk.(none)>
[ARM PATCH] 1928/1: lh7a40x #7 Changes to memory model to support contiguous SDRAM
Patch from Marc Singer
[if's replaced by ifdef's.]
While the BLOB boot loader doesn't support it, there are two others,
UBOOT and Logic's LOLO, that will initialize the SDRAM controller such
that the memory appears as a contiguous region. This layout to be
required for WinCE and, thus, is the default for these loaders. The
memory organization had been optimized for discontiguous blocks. Now,
it supports a default mode that is compatible with all of the
bootloaders as well as options to optimize for either contiguous or
discontiguous models.
Withing, there is also a slight change to the way that the DEBUG_LL
macros select the UART address. Now it uses immediate constants
exclusively.
<rmk@flint.arm.linux.org.uk>
[ARM] pxafb doesn't need to include asm/mach-types.h
<hch@lst.de>
[PATCH] clean up SCSI_TIMEOUT usage
- qlogicfc.c abuses SCSI_TIEMOUT although it's not part of the scsi
core, give it it's own ISP_TIMEOUT define
- avoid redefining timeouts #ifdef DEBUG, that's a cause for heisenbugs
just waiting to happen
- now SCSI_TIMEOUT is private to scsi_scan.c, move it there
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] avoid obsolete scsi APIs in eata_pio
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<g.liakhovetski@gmx.de>
[PATCH] tmscsim: 64-bit cleanup
> Although, I think, there's still a glitch there (modified if's order).
> I'll send a new version, if the approach is approved in principle.
Ok, attached is version 3:-) It also fixes a definite (although, perhaps,
harmless) bug in scsiiom.c. And removes a redundant assignment in
tmscsim.c.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] drivers/scsi/megaraid.c: user/kernel pointer bugs
From: "Robert T. Johnson" <rtjohnso@eecs.berkeley.edu>
Since arg is a user pointer, so are uioc_mimd and uiocp, and hence umc is a
user pointer. Thus reading umc->xferaddr requires dereferencing a user
pointer, which isn't safe.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<bunk@fs.tum.de>
[PATCH] modular scsi/mca_53c9x doesn't work
On Mon, Jun 14, 2004 at 08:22:15PM +0100, Christoph Hellwig wrote:
> On Mon, Jun 14, 2004 at 08:52:56PM +0200, Adrian Bunk wrote:
> > The issue described in the mail forwarded below is still present in
> > 2.6.7-rc3-mm2 (but not specific to -mm).
> >
> > I'd suggest the following workaround:
>
> Please add the exports instead. It'll affect all the other 53C9X-based
> drivers aswell.
This sounds like a better solution.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<rddunlap@osdl.org>
[PATCH] Comment out an unused function in drivers/scsi/wd7000.c
Eliminate unused function wd7000_abort() in wd7000 driver.
CC [M] drivers/scsi/wd7000.o
drivers/scsi/wd7000.c:1612: warning: `wd7000_abort' defined but not used
As the author states in his comment, this is "unfinished business" ;-)
From: Mika Kukkonen <mika@osdl.org>
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
Fix endless loop in SCSI SPI transport class
If the driver doesn't update the peroid, we go
around forever. The fix is to keep our old period
unless the driver returns a greater one.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<eranian@hpl.hp.com>
[PATCH] ia64: fix info in /proc/pal/*/bus_info
This patch fixes to minor bugs:
- corrected descriptions for bit 52 and 53 of the /proc/pal/CPU*/bus_info
entry; they were swapped
- corrected a typo for bit 55 of the /proc/pal/CPU*/bus_info entry
Signed-off-by: Stephane Eranian <eranian@hpl.hp.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<dsaxena@omelas.(none)>
[ARM] Timer cleanup
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<dsaxena@omelas.(none)>
[ARM] Remove bogus gettimeoffset ptr from machine_desc struct.
This was accidently added during the timer code cleanup.
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<dsaxena@omelas.(none)>
[ARM] Delete include/asm-arm/arch-nexuspci/time.h
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<dsaxena@omelas.(none)>
[ARM] Delete include/asm-arm/arch-iop3xx/time.h
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<dsaxena@omelas.(none)>
[ARM] Delete include/asm-arm/arch-ixp4xx/time.h
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<dsaxena@omelas.(none)>
[ARM] Delete include/asm-arm/arch-versatile/time.h
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<dsaxena@omelas.(none)>
[ARM] Add include/asm-arm/mach/time.h for shared timer definitions
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<ahu@ds9a.nl>
[NET]: Update some sysctl documentation.
I ran the following (crappy) script:
...
In /proc/sys/ and found a host of undocumented sysctls. This patch documents
a number of them, and at least mentions the rest as 'TODO'. Please verify my
code-inspired documentation before applying!
Signed-off-by: Bert Hubert <ahu@ds9a.nl>
Signed-off-by: David S. Miller <davem@redhat.com>
<acme@toy.kerneljanitors.org>
[ECONET] kill some trivial warnings
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<hadi@znyx.com>
[NET]: Add tc extensions infrastructure.
Signed-off-by: Jamal Hadi Salim <hadi@znyx.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<jmorris@redhat.com>
[SELINUX]: Fix sock_orphan race.
The patch below fixes a race between sock_orphan() and
selinux_socket_sock_rcv_skb() which can lead to a null pointer deref oops
under heavy load. The sk_callback_lock is used in the patch to
synchronize access to the incoming socket's inode security state.
This patch has been under test in the Fedora kernel for over a month
without incident.
Author: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<yoshfuji@linux-ipv6.org>
[IPV6]: UDPv6 checksum.
We always need to check UDPv6 checksum because it is mandatory.
Author: Yoshifuji Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
[TCP]: Tweak some default sysctl values.
tcp_default_win_scale: 7
tcp_vegas_cong_avoid: 1
tcp_moderate_rcvbuf: 1
tcp_bic: 1
<shemminger@osdl.org>
[ATM]: Include compiler.h in atm.h
<anton@samba.org>
[NET]: Allow IP header alignment to be overriden.
Author: Anton Blanchard <anton@samba.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<jmorris@redhat.com>
[SELINUX]: Fine-grained Netlink support - SELinux headers
This patch regenerates the SELinux module headers to reflect new class
and access vectors definitions. The size of the diff is misleading;
much of it is simply a change in the ordering of the automatically
generated definitions. The corresponding generation script has been
changed to ensure a stable order in the future.
Author: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<jmorris@redhat.com>
[SELINUX]: Fine-grained Netlink support - move security_netlink_send() hook.
This patch moves the security_netlink_send() LSM hook after the user copy,
so that LSM modules can safely examine skb payload content. For SELinux,
we need to look at the Netlink message type.
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<jmorris@redhat.com>
[SELINUX]: Fine-grained Netlink support - add sk to netlink_send hook
Modifies the LSM netlink_send() hook so that it takes a struct sock
parameter. SELinux will use this parameter to lookup the class of socket,
which was assigned during socket security initialization.
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<jmorris@redhat.com>
[SELINUX]: Fine-grained Netlink support - SELinux changes
This patch contains SELinux changes which add support for extended Netlink
socket classes and the associated permissions nlmsg_read and nlmsg_write.
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<jejb@mulgrave.(none)>
SCSI: fix uninitialised variable warning
Spotted By: Andrew Morton <akpm@osdl.org>
drivers/scsi/scsi_transport_spi.c: In function `spi_dv_retrain':
drivers/scsi/scsi_transport_spi.c:393: warning: `period' might be used uninitialized in this function
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<davej@redhat.com>
[AGPGART] Re-add VIA VP3 support.
The refactoring of the PCI IDs supported by the VIA driver dropped
this one.
Spotted-by: Carsten Rietzschel
Signed-off-by: Dave Jones <davej@redhat.com>
<jejb@mulgrave.(none)>
scsi_debug: num_parts, ptype and (re-)scans
From: Douglas Gilbert <dougg@torque.net>
Changes in version 1.73:
- 'num_parts' parameter to specify 0 to 4 partitions
- 'ptype' to specify (or change via sysfs) SCSI
peripheral device type
- support ability to increase the number of targets
and/or luns then re-scan a scsi_debug host
- remove redundant trailing spaces
The new facilties are described at:
http://www.torque.net/sg/sdebug26.html
A tarball of driver (version 1.73) is also there.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
(conflict resolution)
<davej@redhat.com>
[AGPGART] Delete trailing whitespace in generic routines.
Bump copyright dates whilst we're there.
Signed-off-by: Dave Jones <davej@redhat.com>
<herbert@gondor.apana.org.au>
[NET]: Clear dev refs in dst->child.
This is a resend of an earlier patch to dst_dev_event. I've changed
it slightly by moving the input/output assignment into dst_ifdown.
To recap, this patch drops lingering IPsec references to a device that
is being unregistered. The child processing in the GC is too late
since it never runs until the reference on the dst hits zero which
could take a long time for things like TCP connections.
The reason I've left the input/output assignment outside the loop is
because they aren't really necessary for the IPsec dst's, and if
it were in the loop then we'll have to do the same child processing
in ___dst_free as well.
I've tested this with an ESP/IPCOMP tunnel and I can confirm that it
does fix the problem.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@redhat.com>
<davej@redhat.com>
[AGPGART] If we can't do AGP x8 in v3 mode, just drop back to x4.
This should stop people seeing crazy stuff like agpgart
trying to set itself to x0 mode when it sees a x8 bridge and a x4 card.
Signed-off-by: Dave Jones <davej@redhat.com>
<davej@redhat.com>
[AGPGART] Show the untampered arguments in debug printk
agp_v3_parse_one() does some changes to these args by the time we
get to the printk. It'll be useful to know what they started at.
Signed-off-by: Dave Jones <davej@redhat.com>
<dwmw2@shinybook.infradead.org>
PPC: Make Motorola CPM2 I/O core support more generic.
It's used on more than one CPU.
<dlstevens@us.ibm.com>
[IPV4]: Fix interface selection in multicast sockops.
<dwmw2@shinybook.infradead.org>
PPC: Move CPM2 common core routines to arch/ppc/syslib/
<davej@redhat.com>
[AGPGART] Improved AGPx8 handling.
If something fails, we should now explain what happened,
before we fall back to AGPx4 gracefully.
Signed-off-by: Dave Jones <davej@redhat.com>
<davej@redhat.com>
[AGPGART] Extra debugging info just in case.
Signed-off-by: Dave Jones <davej@redhat.com>
<davej@redhat.com>
[AGPGART] Remove typo from comment
Signed-off-by: Dave Jones <davej@redhat.com>
<dada1@cosmosbay.com>
[NET]: Tidy somaxconn sysctl doc.
<dwmw2@shinybook.infradead.org>
PPC: Add support for ADS8272 board.
From Kumar Gala <kumar.gala@motorola.com>
<davem@nuts.davemloft.net>
[TG3]: Always do 4gb tx dma test, and fix the test.
Based upon a patch from Sun.
<davem@nuts.davemloft.net>
[TCP]: No vegas by default just yet.
<stevef@stevef95.austin.ibm.com>
fix throttle to limit number of requests to 50 on wire to server at one time.
Signed-off-by: Steve French (sfrench@us.ibm.com)
<alan@redhat.com>
[PATCH] add new via-velocity gigabit ethernet driver
Contributed by VIA, cleaned up by Alan.
<dwmw2@shinybook.infradead.org>
UART driver for Motorola CPM/CPM2 I/O core on 8xx/8xxx chips.
<dwmw2@shinybook.infradead.org>
Remove old MPC82xx (CPM2) uart driver
<dwmw2@shinybook.infradead.org>
PPC SBC82xx: Move RTC to 0xd0000000 to make room for PCI I/O stuff.
<dwmw2@shinybook.infradead.org>
PCI host bridge support for Motorola MPC826x
<dwmw2@shinybook.infradead.org>
Add support for i8259 IRQ controller on WindRiver PowerQUICC II
<kaos@sgi.com>
[PATCH] ia64: Support SN platform specific error features
The SN prom supports fine grained error handling features, the OS needs
to tell the prom if the OS expects to use these platform specific
features.
Signed-off-by: Keith Owens <kaos@sgi.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<jbarnes@engr.sgi.com>
[PATCH] ia64: update sn2_defconfig
Small patch to update the sn2_defconfig file. I just did a 'make oldconfig'
with the current sn2_defconfig and removed 8250 support.
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<jgarzik@pobox.com>
[IDE] Introduce SATA enable/disable config option
This config option is introduced to help reduce user confusion,
and eliminate conflicts between the IDE driver (which is often
built into user kernels) and the new libata SATA driver.
<achew@nvidia.com>
[libata] Add NVIDIA SATA driver
<jgarzik@pobox.com>
[libata] put nvidia in Kconfig, in alphabetical order
<davidm@tiger.hpl.hp.com>
ia64: Fix ia32 partial-page-list code to compile cleanly in more configs.
<davidm@tiger.hpl.hp.com>
ia64: Nuke two warnings in mca.c that showed in the simulator configuration.
<stevef@smfhome1.smfdom>
Fix /proc/fs/cifs/Stats to handle larger return data, and correct Kconfig reference to /proc/fs/cifs/Stats
Signed-off-by: Steve French (sfrench@us.ibm.com)
<jgarzik@pobox.com>
[libata/IDE nvidia] shuffle pci ids
* Mark conflicting PCI ids with CONFIG_BLK_DEV_IDE_SATA
* Move not-yet-released PCI ids to libata sata_nv driver
<len.brown@intel.com>
[ACPI] *** Warning: "acpi_register_gsi" [drivers/serial/8250_acpi.ko] undefined!
Signed-off-by: Andrew Morton <akpm@osdl.org>
<len.brown@intel.com>
[ACPI] mp_find_ioapic() oops from mp_register_gsi() on device resume
Signed-off-by: Andrew Morton <akpm@osdl.org>
<len.brown@intel.com>
[ACPI] delete "__init" from x86_64 version of mp_find_ioapic()
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Andrew Morton <akpm@osdl.or
<len.brown@intel.com>
[ACPI] Fix a lockup which Sid Boyce <sboyce@blueyonder.co.uk>
discovered with IOAPIC disabled.
The problem was that drivers/serial/8250_acpi.c found COM1 in the ACPI
namespace and called acpi_register_gsi() to set up its IRQ. ACPI tells us
that the COM1 IRQ is edge triggered, active high, but acpi_register_gsi()
was ignoring the edge_level argument, so it blindly set the COM1 IRQ to be
level-triggered.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org
<dwmw2@shinybook.infradead.org>
Change new Motorola copyright notices and email addresses to Freescale.
Requested by Kumar Gala <kumar.gala@{motorola,freescale}.com>
<dwmw2@shinybook.infradead.org>
Workaround for MPC826x PCI erratum #9.
<stevef@stevef95.austin.ibm.com>
fix typo in cifs kernel config option title
Signed-off-by: Steve French (sfrench@us.ibm.com)
<shemminger@osdl.org>
[SPARSE]: Get rid of warning in irtty_ioctl().
Don't really need verify_area because result of copy_to_user is checked.
Add annotation to get rid of sparse warnings.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jean Tourrilhes <jt@bougret.hpl.hp.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<shemminger@osdl.org>
[SPARSE]: Add annotations to sock_filter.h
Since sock_fprog is argument in ioctl, the filter pointer needs
to be annotated.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[BRIDGE]: Fix bridge sysfs improprely initialized kobject.
The bridge sysfs interface introduced around 2.6.7-rc1 created a bad
entry in /sys because it didn't initialise the name member of the kobject.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<shemminger@osdl.org>
[SPARSE]: Annotate csum_and_copy_to_user().
<shemminger@osdl.org>
[SPARSE]: Get rid of warning in bridge ethtool ioctl.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<shemminger@osdl.org>
[SPARSE]: Fix another net warning.
Get rid of warning from assignment in conditional.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
Cset exclude: kuznet@ms2.inr.ac.ru|ChangeSet|20040616204246|05149
<davem@nuts.davemloft.net>
[NET]: In unregister_netdevice(), do synchronize_net() before final dev_put().
This way we make sure that all destination cache updates
to remove references to this device are seen by entire
system before final destruction of the device.
<len.brown@intel.com>
[ACPI] PCI bus numbering workaround for ServerWorks
from David Shaohua Li
http://bugzilla.kernel.org/show_bug.cgi?id=1662
<jmorris@redhat.com>
[IPV6]: Fix OOPS in fragmentation.
Incorrect SKB pointer is passed to output() callback
in ip6_fragment().
Work done by James Morris and Yoshifuji Hideaki.
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Yoshifuji Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<dsaxena@plexity.net>
[ARM] Consolidate various ARM timer fns. into single timer_tick() call.
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<stern@rowland.harvard.edu>
[PATCH] USB: Only process ports with change events pending
This patch adds a bit-array to the hub driver's private data structure,
used for storing the contents of the hub's interrupt status message. That
message indicates which ports have events pending (and whether the hub
itself has events pending). By only polling the status of the ports
listed in the bit-array we can save a fair amount of overhead in hub
communication.
(The #error test added to hub.h is a little awkward, but it's purely
precautionary -- it won't matter until someone decides to support hubs
with more than 31 ports!)
Also included in the patch, since this seemed the perfect opportunity for
it, is Byron's suggestion for handling hub events in the order in which
they were received.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<sean@mess.org>
[PATCH] USB: PhidgetServo driver fixes
Here is a patch for the phidgetservo driver -- it was using memory after
kfree(), and using driver_info is much nicer. :)
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] proper bios handoff in ehci-hcd
Stuart Hayes here at Dell has identified this or/and mix-up in the
ehci-hcd driver. Because of this, ehci-hcd is not properly released by
BIOSes supporting full 2.0 and port behavior can then become erratic.
(Code predates general availability of such BIOS firmware. This version
of the patch also fixes minor linewrap issues.)
From: Gary Lerhaupt <Gary_Lerhaupt@Dell.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: add support for Buffalo LUA-U2-KTX
Add support for Buffalo's LUA-U2-KTX, which is a AX8817X based usb
ethernet adapter. I just added the USB id and it worked like a dream.
From: Neil Bortnak <neil@bortnak.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<mdharm-usb@one-eyed-alien.net>
[PATCH] USB Storage: Lexar Jumpshot CF reader
This patch is required to fix up the jumpshot driver, and to supress
the 'unneeded entry' message for another device which uses the same
VID/PID/rev for multiple different versions of the device.
Alan Stern cooked this patch up, originally.
Signed-off-by: Matthew Dharm <mdharm-usb@one-eyed-alien.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB Storage: unusual_devs.h update
On Thu, 17 Jun 2004, Daniel Nouri wrote:
> I get this message when inserting my USB MMC card reader:
>
> usb 3-1: new full speed USB device using address 4
> usb.agent[5388]: usb-storage: already loaded
> usb-storage: This device (04e6,0006,0205 S 01 P 01) has an unneeded Protocol entry in unusual_devs.h
> Please send a copy of this message to <linux-usb-devel@lists.sourceforge.net>
Thanks for letting us know. This patch will eliminate that log message.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Fix endian bug in g_file_storage
This patch fixes a couple of places in g_file_storage where I forgot to
use proper byte-swapping.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<davidm@tiger.hpl.hp.com>
ia64: Squish compiler-warning in perfmon.c when compiling for UP.
<dsaxena@plexity.net>
[ARM] Remove ADIFCC machine type
The code is completely out of date, I am no longer maintaining it,
and nobdy has volunteered to do so; therefore, I am killing it.
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<davidm@tiger.hpl.hp.com>
ia64: Squish some more hazards & warnings for UP compile.
<davidm@tiger.hpl.hp.com>
ia64: Fix build-problem when CONFIG_IA32 is not enabled.
Without this fix, you'll get unresolved references to
sys_rt_sigaction().
<pfg@sgi.com>
[PATCH] ia64: fix SN2 interrupt rerouting
Signed-off-by: Patrick Gefre <pfg@sgi.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<tony.luck@intel.com>
[PATCH] ia64: switching between CPEI & CPEP
A couple of months ago Hidetoshi Seto from Fujitsu proposed
a patch to provide similar switching between interrupt mode
and polling mode for corrected platform events (CPE) as we
have for processor events (CMC) [with the obvious difference
that not all platforms support an interrupt for CPE].
I dusted it off and made a couple of very minor cleanups (which
Seto-san checked out last night on his test setup and confirmed
still passes).
Signed-off-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<nathans@sgi.com>
[XFS] No longer hold the BKL for the entire ioctl operation,
its not needed here.
SGI Modid: xfs-linux:xfs-kern:173032a
Signed-off-by: nathans@sgi.com
<nathans@sgi.com>
[XFS] Remove a couple of redundant NULL parent inode pointer checks.
SGI Modid: xfs-linux:xfs-kern:173033a
Signed-off-by: nathans@sgi.com
<nathans@sgi.com>
[XFS] Fix xfs_lowbit64, it mishandled zero in the high bits.
Cleanup a couple of other ffs users, since ffs(0) is apparently
undefined on some architectures.
SGI Modid: xfs-linux:xfs-kern:173034a
Signed-off-by: nathans@sgi.com
<nathans@sgi.com>
[XFS] sparse: fix uses of macros before their definitions, etc.
SGI Modid: xfs-linux:xfs-kern:173194a
Signed-off-by: nathans@sgi.com
<roehrich@sgi.com>
[XFS] Change things to use new version of xfs_dm_init/xfs_dm_exit
SGI Modid: xfs-linux:xfs-kern:173206a
Signed-off-by: nathans@sgi.com
<roehrich@sgi.com>
[XFS] Fix non-dmapi build
SGI Modid: xfs-linux:xfs-kern:173222a
Signed-off-by: nathans@sgi.com
<nathans@sgi.com>
[XFS] Ensure buffers that map to unwritten extents are only submitted
when properly setup.
SGI Modid: xfs-linux:xfs-kern:173555a
Signed-off-by: nathans@sgi.com
<nathans@sgi.com>
[XFS] Sanitise the ACL initialisation macros.
SGI Modid: xfs-linux:xfs-kern:173559a
Signed-off-by: nathans@sgi.com
<nathans@sgi.com>
[XFS] Remove unused MAC macros, never needed on Linux.
SGI Modid: xfs-linux:xfs-kern:173561a
Signed-off-by: nathans@sgi.com
<nathans@sgi.com>
[XFS] Remove the one remaining, broken use of XFS_WRITEIO_LOG and
sanitize direct IO map blocks call.
SGI Modid: xfs-linux:xfs-kern:173562a
Signed-off-by: nathans@sgi.com
<nathans@sgi.com>
[XFS] Fix flags argument to xfs_incore call on attr removal.
SGI Modid: xfs-linux:xfs-kern:173563a
Signed-off-by: nathans@sgi.com
<nathans@sgi.com>
[XFS] Fix a race condition in the undo-delayed-write buffer routine.
SGI Modid: xfs-linux:xfs-kern:173564a
Signed-off-by: nathans@sgi.com
<nathans@sgi.com>
[XFS] Fix up memory allocators to be more resilient.
SGI Modid: xfs-linux:xfs-kern:173571a
Signed-off-by: nathans@sgi.com
<len.brown@intel.com>
[ACPI] fix passive cooling mode indicator (Luming Yu)
http://bugzilla.kernel.org/show_bug.cgi?id=1770
<len.brown@intel.com>
[ACPI] avoid spurious interrupts on VIA
http://bugzilla.kernel.org/show_bug.cgi?id=2243
<cattelan@sgi.com>
[XFS] Fix for NFS+XFS data corruption problem.
See http://oss.sgi.com/bugzilla/show_bug.cgi?id=198 for full details.
SGI Modid: xfs-linux:xfs-kern:173598a
Signed-off-by: nathans@sgi.com
<stevef@smfhome1.smfdom>
Fix typo in name of CIFS Kconfig option and add rename stats
<paulus@samba.org>
[PATCH] ppc64: Implement CONFIG_PREEMPT
This implements CONFIG_PREEMPT for ppc64. Aside from the entry.S
changes to check the _TIF_NEED_RESCHED bit when returning from an
exception, there are various changes to make the ppc64-specific code
preempt-safe, mostly adding preempt_enable/disable or get_cpu/put_cpu
calls where needed. I have been using this on my desktop G5 for the
last week without problems.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: Optimize exception/syscall entry/exit
This rewrites the PPC64 exception entry/exit routines to make them
smaller and faster.
In particular we no longer save all of the registers for the common
exceptions - system calls, hardware interrupts and decrementer (timer)
interrupts - only the volatile registers. The other registers are saved
and restored (if used) by the C functions we call. This involved
changing the registers we use in early exception processing from r20-r23
to r9-r12, which ended up changing quite a lot of code in head.S.
Overall this gives us about a 20% reduction in null syscall time.
Some system calls need all the registers (e.g. fork/clone/vfork and
[rt_]sigsuspend). For these the syscall dispatch code calls a stub that
saves the nonvolatile registers before calling the real handler.
This also implements the force_successful_syscall_return() thing for
ppc64.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nathans@sgi.com>
[XFS] Fix up highmem build and error handling on inode shrink register.
SGI Modid: xfs-linux:xfs-kern:173764a
Signed-off-by: nathans@sgi.com
<rth@twiddle.net>
[PATCH] alpha: fix discontigmem+initrd build
From: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Compilation fails due to incorrect usage of NODE_DATA().
Reported by hpa.
<len.brown@intel.com>
[ACPI] handle SCI override to nth IOAPIC
http://bugzilla.kernel.org/show_bug.cgi?id=2835
<yoshfuji@linux-ipv6.org>
[IPV6] make several functions static in ip6_tunnel that should be.
<yoshfuji@linux-ipv6.org>
[IPV6] XFRM: add missing xfrm6_policy_check().
<yoshfuji@linux-ipv6.org>
[IPV6] XFRM: support (uncompressed) tunnel mode ipcomp6 using xfrm6_tunnel infrastructure.
<yoshfuji@linux-ipv6.org>
[XFRM] fix dependency issues for CONFIG_IPV6=m.
<rmk@flint.arm.linux.org.uk>
[ARM] Add support code for ARM hardware vector floating point
This cset adds the code to handle the hardware vector floating point
unit found on some ARM926 and later CPUs. The hardware provides
an implementation for the common cases, and bounces exceptions for
other cases, which have to be handled in software, and signalling
SIGFPE as appropriate.
<hugh@veritas.com>
[PATCH] mm: flush TLB when clearing young
Traditionally we've not flushed TLB after clearing the young/referenced bit,
it has seemed just a waste of time. Russell King points out that on some
architectures, with the move from 2.4 mm sweeping to 2.6 rmap, this may be a
serious omission: very frequently referenced pages never re-marked young, and
the worst choices made for unmapping.
So, replace ptep_test_and_clear_young by ptep_clear_flush_young throughout
rmap.c. Originally I'd imagined making some kind of TLB gather optimization,
but don't see what now: whether worth it rather depends on how common
cross-cpu flushes are, and whether global or not.
ppc and ppc64 have already found this issue, and worked around it by arranging
TLB flush from their ptep_test_and_clear_young: with the aid of pgtable rmap
pointers. I'm hoping ptep_clear_flush_young will allow ppc and ppc64 to
remove that special code, but won't change them myself.
It's worth noting that it is Andrea's anon_vma rmap which makes the vma
available for ptep_clear_flush_young in page_referenced_one: anonmm and
pte_chains would both need an additional find_vma for that.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hugh@veritas.com>
[PATCH] mm: pretest pte_young and pte_dirty
Test for pte_young before going to the costlier atomic test_and_clear, as
asm-generic does. Test for pte_dirty before going to the costlier atomic
test_and_clear, as asm-generic does (I said before that I would not do so for
pte_dirty, but was missing the point: there is nothing atomic about deciding
to do nothing). But I've not touched the rather different ppc and ppc64.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kumar.gala@freescale.com>
[PATCH] ppc32: support for e500 and 85xx
Here is both a GNU style and BK patch for adding support for the e500 core and
85xx platform to 2.6. This is pretty much a direct port from 2.4 with a bit
of cleanup around the edges.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mikpe@csd.uu.se>
[PATCH] ppc32 irq.c cpumask fix
2.6.7-rc3-mm1 changed cpumask_t from ulong to a struct, causing
compile-time errors in arch/ppc/kernel/irq.c.
Proposed fix below. Tested on a G3.
Signed-off-by: Mikael Pettersson <mikpe@csd.uu.se>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<olh@suse.de>
[PATCH] ppc64: avoid multiline /proc/cmdline content on iSeries
/proc/cmdline is filled via an OS400 call iSeries_init(). It scans the
returned data from the end, instead of the beginning. This leads to
multiple lines in /proc/cmdline
Just scan from the beginning and stop at the first newline. This patch
changes also the /proc/iSeries/mf/*/cmdline interface to do the same as the
initial setup.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mporter@kernel.crashing.org>
[PATCH] Add PPC4xx MAINTAINERS entry, merge CREDITS from 2.4
Add myself as the PPC4xx maintainer. Merge CREDITS entry from 2.4
Signed-off-by: Matt Porter <mporter@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<yoav.zach@intel.com>
[PATCH] Handle non-readable binfmt_misc executables
<background>
I work in a group that works on enabling the IA-32 Execution Layer
(http://www.intel.com/pressroom/archive/releases/20040113comp.htm) on Linux.
In a few words - this is a dynamic translator for IA-32 binaries on IPF
platform. Following David Mosberger's advice - we use the binfmt_misc
mechanism for the invocation of the translator whenever the user tries to
exec an IA-32 binary.
The EL is meant to help in the migration path from IA-32 to IPF. From our
beta customers we learnt that at first stage - they tend to keep their
environment mostly intact, using the legacy IA-32 binaries.
Such an environment has, naturally, setuid and non-readable binaries. It
will be useless to ask the administrator to change the settings of such an
environment - some of them are very complex, and the administrators are
reluctant to make any changes in a system that already proved itself to be
robust and secure. So, our target with these patches is not to enhance the
support for scripts but rather to allow a translator to be integrated into a
working environment that is not (and should not be) aware to the fact it's
being emulated.
As I said before - it is practically hopeless to expect an administrator of
such a system to change it so that it will suit the current behavior of
binfmt_misc. But, even if we could do that,
I'm not sure it would be a good idea - these changes are likely to be less
secure than the suggested patches -
- In order to execute non-readable binaries the binary will have to be made
readable, which is obviously less secure than allowing only a trusted
translator to read it
- There will be no way for the translator to calculate the accurate
AT_SECURE value for the translated process. This might end up with the
translated process running in a non-secured mode when it actually needs to
be secured.
</background>
I prepared a patch that solves a couple of problems that interpreters have
when invoked via binfmt_misc. currently -
1) such interpreters cannot open non-readable binaries
2) the processes will have their credentials and security attributes
calculated according to interpreter permissions and not those of the
original binary
the proposed patch solves these problems by -
1) opening the binary on behalf of the interpreter and passing its fd
instead of the path as argv[1] to the interpreter
2) calling prepare_binprm with the file struct of the binary and not the
one of the interpreter
The new functionality is enabled by adding a special flag to the registration
string. If this flag is not added then old behavior is not changed.
A preliminary version of this patch was sent to the list on 9/1/2003 with the
title "[PATCH]: non-readable binaries - binfmt_misc 2.6.0-test4". This new
version fixes the concerns that were raised by the patch, except of calling
unshare_files() before allocating a new fd. this is because this feature did
not enter 2.6 yet.
Arun Sharma <arun.sharma@intel.com> says:
We were going through an internal review of this patch:
http://marc.theaimsgroup.com/?l=linux-kernel&m=107424598901720&w=2
which is in your tree already. I'm not sure if this line of code got
sufficient review.
+ /* call prepare_binprm before switching to interpreter's file
+ * so that all security calculation will be done according to
+ * binary and not interpreter */
+ retval = prepare_binprm(bprm);
The case that concerns me is: unprivileged interpreter and a privileged
binary. One can use binfmt_misc to execute untrusted code (interpreter) with
elevated privileges. One could argue that all binfmt_misc interpreters are
trusted, because only root can register them. But that's a change from the
traditional behavior of binfmt_misc (and binfmt_script).
(Update):
Arun pointed out that calculating the process credentials according to the
binary that needs to be translated is a bit risky, since it requires the
administrator to pay extra attention not to register an interpreter which is
not intended to run with root credentials.
After discussing this issue with him, I would like to propose a modified
patch: The old patch did 2 things - 1) open the binary for reading and 2)
calculate the credentials according to the binary.
I removed the riskier part of changing the credentials calculation, so the
revised patch only opens the binary for reading. It also includes few words
of warning in the description of the 'open-binary' feature in
binfmt_misc.txt, and makes the function entry_status print the flags in use.
As for the 'credentials' part of the patch, I will prepare a separate patch
for it and send it again to the LKML, describe the problem and ask for people
comments.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jejb@mulgrave.(none)>
Enable clustering in the 53c700 driver
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<yoav.zach@intel.com>
[PATCH] binfmt_misc: improve calculation of interpreter's credentials
This patch allows for misc binaries to run with credentials and security
token that are calculated according to the binaries, and not according to the
interpreter, which is the legacy behavior of binfmt_misc.
The way it is done is by calling prepare_binprm, which is where these
attributes are calculated, before switching the 'file' field in the bprm from
the binary to the interpreter.
This feature should be used with care, since the interpreter will have root
permissions when running a setuid binary owned by root.
Please note -
- Only root can register an interpreter with binfmt_misc. The feature is
documented and the administrator is advised to handle it with care
- The new feature is enabled only with a special flag in the registration
string. When this flag is not specified the current behavior of
binfmt_misc is kept
- This is the only 'right' way for an interpreter to know the correct
AT_SECURE value for the interpreted binary
From: Chris Wright <chrisw@osdl.org>
This patchset looks OK, except for one problem. It installs the fd (which
could've been unreadable) without unsharing the ->files. So someone can use
this to read unreadable yet executable files. Here's a patch which fixes
that up. I added one bit that's commented out because I'm not positive if a
final steal_locks() is needed.
I did a fair amount of rearranging to simplify the error conditions
relative to the fd_install(), and unshare_files().
From: Chris Wright <chrisw@osdl.org>
I found that the intel patchset (and mine as well) leaked i_writecount on
the original executed file. In addition, I verified that the steal_locks()
bit is indeed needed.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rmk@arm.linux.org.uk>
[PATCH] Clean up asm/pgalloc.h include
This patch cleans up needless includes of asm/pgalloc.h from the fs/
kernel/ and mm/ subtrees. Compile tested on multiple ARM platforms, and
x86, this patch appears safe.
This patch is part of a larger patch aiming towards getting the include of
asm/pgtable.h out of linux/mm.h, so that asm/pgtable.h can sanely get at
things like mm_struct and friends.
I suggest testing in -mm for a while to ensure there aren't any hidden arch
issues.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rmk@arm.linux.org.uk>
[PATCH] Clean up asm/pgalloc.h include
This patch cleans up needless includes of asm/pgalloc.h from the drivers/
subtree. drivers/char/mem.c has been compile tested; the others have not,
since they are for non-x86 and non-ARM architectures.
This patch is part of a larger patch aiming towards getting the include of
asm/pgtable.h out of linux/mm.h, so that asm/pgtable.h can sanely get at
things like mm_struct and friends.
I suggest testing in -mm for a while to ensure there aren't any hidden arch
issues.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rmk@arm.linux.org.uk>
[PATCH] Clean up asm/pgalloc.h include 3
This patch cleans up needless includes of asm/pgalloc.h from the arch/i386/
subtree. Compile tested on x86_pc SMP.
[I also tried VISWS + SMP without PM doesn't build in smpboot.c,
though I don't believe its caused by this patch. With PM, fails
to link complaining maxcpus is undefined. Therefore, I presume
VISWS + SMP is an invalid configuration.]
This patch is part of a larger patch aiming towards getting the include of
asm/pgtable.h out of linux/mm.h, so that asm/pgtable.h can sanely get at
things like mm_struct and friends.
I suggest testing in -mm for a while to ensure there aren't any hidden arch
issues.
The outstanding list of files for other architectures can be found
at http://www.arm.linux.org.uk/misc/pgalloc.txt
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] ppc64: uninline __pte_free_tlb()
The pgalloc.h changes broke ppc64:
In file included from include/asm-generic/tlb.h:18,
from include/asm/tlb.h:24,
from arch/ppc64/mm/hash_utils.c:48:
include/asm/pgalloc.h: In function `__pte_free_tlb':
include/asm/pgalloc.h:110: dereferencing pointer to incomplete type
include/asm/pgalloc.h:111: dereferencing pointer to incomplete type
Uninlining __pte_free_tlb() fixes that.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mason@suse.com>
[PATCH] reiserfs: block allocator optimizations
From: <mason@suse.com>
From: <jeffm@suse.com>
The current reiserfs allocator pretty much allocates things sequentially
from the start of the disk, it works very nicely for desktop loads but
once you've got more then one proc doing io data files can fragment badly.
One obvious solution is something like ext2's bitmap groups, which puts
file data into different areas of the disk based on which subdirectory
they are in. The problem with bitmap groups is that if you've got a
group of subdirectories their contents will be spread out all over the
disk, leading to lots of seeks during a sequential read.
This allocator patch uses the packing locality to determine which bitmap
group to allocate from, but when you create a file it looks in the bitmaps
to see how 'full' that packing locality already is. If it hasn't been
heavily used yet, the packing locality is inherited from the parent
directory putting files in new subdirs close to the parent subdir,
otherwise it is the inode number of the parent directory putting new
files far away from the parent subdir.
The end result is fewer bitmap groups for the same working set. For
example, one test data set created by 20 procs running in parallel has
6822 subdirs. And with vanilla reiserfs that would mean 6822
packing localities. This patch turns that into 26 packing localities.
This makes sequential reads of big directory trees more efficient, but
it also makes the btree more efficient in general. Things end up sorted
better because groups of subdirs end up with similar keys in the btree,
instead of being spread out all over.
The bitmap grouping code tries to use the start of each bitmap group
for metadata, and offsets the data slightly. The data and metadata
are still close together, but not completely intermixed like they are
in the default allocator. The end result is that leaf nodes tend to be
close to each other, making metadata readahead more effective.
The old block allocator had the ability to enforce a minimum
allocation size, but did not use it. It now tries to do a pass looking
for larger allocation chunks before falling back to the old behaviour
of taking any blocks it can find.
The patch changes the defaults to:
mount -o alloc=skip_busy:dirid_groups:packing_groups
You can get back the old behaviour with mount -o alloc=skip_busy
mount -o alloc=dirid_groups will turn on the bitmap groups
mount -o alloc=packing_groups turns on the packing locality reduction code
mount -o alloc=skip_busy:dirid_groups turns on both dirid_groups and
skip_busy
Finally the patch adds a mount -o alloc=oid_groups, which puts files into
bitmap groups based on a hash of their objectid. This would be used for
databases or other situations where you have a limited number of very
large files.
This command will tell you how many packing localities are actually in
use:
debugreiserfs -d /dev/xxx | grep '^|.*SD' | sed 's/^.....//' | awk '{print $1}' | sort -u | wc -l
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mason@suse.com>
[PATCH] reiserfs: block allocator should not inherit "packing locality 1"
reiserfsck --rebuild-tree expects the only key with a packing locality of 1 to
be for the root directory (key [1 2]). The new block allocator inherited that
packing locality down to subdirectories, which triggers failures in reiserfsck
--rebuild-tree
reiserfsck in readonly check mode doesn't complain about this, thanks to Jeff
Mahoney for finding it.
The fix is to never inherit packing locality #1
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mason@suse.com>
[PATCH] reiserfs: remove debugging warning from block allocator
Remove debugging warning from the reiserfs block allocator code
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mason@suse.com>
[PATCH] reiserfs: btree readahead
Walking the btree can trigger a number of single block synchronous reads.
This patch does btree readahead during operations that are likely to be long
and sequential. So far, that only includes directory reads and truncates, but
it can make both much faster.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mason@suse.com>
[PATCH] reiserfs data logging support
Add data=journal support for reiserfs
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<alan@redhat.com>
[PATCH] PATCH: Further aacraid work
I've been going through Mark's changes with a fine toothcomb and this merges
most of them. Its tested on 64bit SMP hardware and seems to be fine. There
are a couple of Mark's changes I've left out for now but there isnt really
an easy way to break down the changes further.
This fixes a whole host of problems including random hangs under high load
Signed-off-by: Alan Cox <alan@redhat.com>
Original contribution under GPL from Adaptec, updates checking by Red Hat
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<minyard@acm.org>
[PATCH] Fixes for idr code
* On a 32-bit architecture, the idr code will cease to work if you add
more than 2^20 entries. You will not be able to find many of the
entries. The problem is that the IDR code uses 5-bit chunks of the
number and the lower portion used by IDR is 24 bits, so you have one bit
that leaks over into the comparisons that should not be there. The
solution is to mask off that bit before doing IDR processing. This
actually causes the POSIX timer code to crash if you create that many
timers. I have included an idr_test.tar.gz file that demonstrates this
with and without the fix, in case you need more evidence :).
* When the IDR fills up, it returns -1. However, there was no way to
check for this condition. This patch adds the ability to check for the
idr being full and fixes all the users. It also fixes a problem in
fs/super.c where the idr code wasn't checking for -1.
* There was a race condition creating POSIX timers. The timer was added
to a task struct for another process then the data for the timer was
filled out. The other task could use/destroy time timer as soon as it is
in the task's queue and the lock is released. This moves settup up the
timer data to before the timer is enqueued or (for some data) into the
lock.
* Change things so that the caller doesn't need to run idr_full() to find
out the reason for an idr_get_new() failure.
Just return -ENOSPC if the tree was full, or -EAGAIN if the caller needs
to re-run idr_pre_get() and try again.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] idr: remove counter bits from id's
idr_get_new() currently returns an incrementing counter in the top 8 bits of
the counter. Which means that most users have to mask it off again, and we
only have a 24-bit range.
So remove that counter. Also:
- Remove the BITS_PER_INT define due to namespace collision risk.
- Make MAX_ID_SHIFT 31, so counters have a 0 to 2G-1 range.
- Why is MAX_ID_SHIFT using sizeof(int) and not sizeof(long)? If it's for
consistency across 32- and 64-bit machines, why not just make it "31"?
- Does this still hold true with the counter removed?
/* We can only use half the bits in the top level because there are
only four possible bits in the top level (5 bits * 4 levels = 25
bits, but you only use 24 bits in the id). */
If not, what needs to change?
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<minyard@acm.org>
[PATCH] IDR fixups
There were definately some problems in there. I've made some changes and
tested with a lot of bounds. I don't have a machine with enough memory to
fill it up (it would take ~16GB on a 64-bit machine), but I use the "above"
code to simulate a lot of situations.
The problems were:
* IDR_FULL was not the right value
* idr_get_new_above() was not defined in the headers or documented.
* idr_alloc() bug-ed if there was a race and not enough memory was
allocated. It should have returned NULL.
* id will overflow when you go past the end.
* There was a "(id >= (1 << (layers*IDR_BITS)))" comparison, but at
the top layer it would overflow the id and be zero.
* The allocation should return ENOSPC for an "above" value with
nothing above it, but it returned EAGAIN.
I have not tested on 64-bits (as I don't have a 64-bit machine).
I've included the files, a diff from the previous version, and my test
programs.
For the test programs, idr_test <size> will just attempt to allocate
<size> elements, check them, free them, and check them again.
idr_test2 <size> <incr> will allocate <size> element with <incr> between
them.
idr_test3 just tests some bounds and tries all values with just a few in
the idr.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] i2c fixups for idr API change
Fix up the i2c code which uses the IDR library.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] RLIM: add rlimit entry for controlling queued signals
The following patches introduce per user rlimits for both queued signals and
POSIX message queues. The changes touch all the arches resource.h files as
well as init_task.c to get the rlimit defaults setup.
Both require caching the user_struct to avoid problems with setuid().
The signal changes makes some small changes to send_signal() to pass along the
task being signalled to get proper accounting for signals initiated in
interrupt. Thanks to Marcelo for getting this one going.
This patch:
Add an rlimit entry to control the maximum number of pending signals a user
may have. This is essentially just the resource.h changes.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] RLIM: add sigpending field to user_struct
Add sigpending field to user_struct, and make sure it's properly initialized.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] RLIM: add simple get_uid() helper
Add simple helper function to grab a reference to a user_struct.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] RLIM: add rlimit entry for POSIX mqueue allocation
Add an rlimit entry to control the maximum number of bytes a user can allocate
to a POSIX mqueue.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] RLIM: add mq_bytes to user_struct
Add mq_bytes field to user_struct, and make sure it's properly initialized.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] RLIM: add mq_attr_ok() helper
Add helper function mq_attr_ok() to do mq_attr sanity checking, and do some
extra overlow checking.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] RLIM: enforce rlimits for POSIX mqueue allocation
Add a user_struct to the mq_inode_info structure. Charge the maximum number
of bytes that could be allocated to a mqueue to the user who creates the
mqueue. This is checked against the per user rlimit.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] RLIM: adjust default mqueue sizes
Lower default sizes for POSIX mqueue allocation now that rlimits are in place.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Robert.Picco@hp.com>
[PATCH] HPET driver
The driver supports the High Precision Event Timer. The driver has adopted
a similar API to the Real Time Clock driver. It can support any number of
HPET devices and the maximum number of timers per HPET device. For further
information look at the documentation in the patch.
Thanks to Venki at Intel for testing the driver on X86 hardware with HPET.
HPET documentation is available at http://www.intel.com/design/chipsets/datashts/252516.htm
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<James.Bottomley@steeleye.com>
[PATCH] SCSI Flexible timout intfrastructure
The object of this infrastructure is to give HBAs early warning that
error handling is about to happen and also provide them with the
opportunity to do something about it.
It introduces the extra template callback:
eh_timed_out()
which scsi_times_out() will call if it is populated to notify the LLD
that an outstanding command took a timeout.
There are three possible returns:
EH_HANDLED: I've fixed the problem, please complete the command for me
(as soon as the timer fires, scsi_done will do nothing, so the timer
itself will call a special version of scsi_done that doesn't check the
timer).
EH_NOT_HANDLED: Invoke error recovery as normal
EH_RESET_TIMER: The command will complete, reset the timer to its
original value and start it ticking again.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Based on work by Christoph Hellwig and Luben Tuikov
<rddunlap@osdl.org>
[PATCH] Remove PC9800 support
PC9800 sub-arch is incomplete, hackish (at least in IDE), maintainers don't
reply to emails and haven't touched it in awhile. Can't even config it to
try to build it without other patches to the kernel tree.
bk-rm-script:
#! /bin/sh
bk rm -r ./arch/i386/mach-pc9800
bk rm -r ./arch/i386/boot98
bk rm ./drivers/char/lp_old98.c
bk rm ./drivers/serial/serial98.c
bk rm ./drivers/scsi/scsi_pc98.c
bk rm ./drivers/scsi/pc980155.c
bk rm ./drivers/scsi/pc980155.h
bk rm ./drivers/block/floppy98.c
bk rm ./drivers/input/keyboard/98kbd.c
bk rm ./drivers/input/serio/98kbd-io.c
bk rm ./drivers/input/misc/98spkr.c
bk rm ./drivers/input/mouse/98busmouse.c
bk rm ./drivers/ide/legacy/pc9800.c
bk rm ./drivers/ide/legacy/hd98.c
bk rm -r ./include/asm-i386/mach-pc9800
bk rm ./include/asm-i386/pc9800_sca.h
bk rm ./include/asm-i386/pc9800.h
bk rm ./fs/partitions/nec98.c
bk rm ./fs/partitions/nec98.h
bk rm ./sound/isa/cs423x/pc98.c
bk rm ./sound/isa/cs423x/pc9801_118_magic.h
bk rm ./sound/isa/cs423x/sound_pc9800.h
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] more PC9800 removal
Removes more PC9800 code.
Requires:
bk rm drivers/char/upd4990a.c
bk rm drivers/net/ne2k_cbus.c
bk rm drivers/net/ne2k_cbus.h
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rene.herman@keyaccess.nl>
[PATCH] pc9800: merge std_resources.c back into setup.c
std_resources.{c,h} was only split off due to pc9800 wanting to override it.
With it gone, it might as well be merged back in. Doesn't change any code.
It was compiled and booted.
This time this also actually doesn't break compilation of any of the
subarches. That's to say, any further. I guess it might have been my .config
(my regular PC config, with just the subarch switched through menuconfig) or
O=, but only ELAN actually compiled. Voyager and VISWS bombed out at the
final link and NUMAQ much sooner (with "physnode_map undeclared" during
compilation of numaq.c).
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tytso@mit.edu>
[PATCH] Ext3: Retry allocation after transaction commit (v2)
Here is a reworked version of my patch to ext3 to retry certain filesystem
operations after an ENOSPC error. The ext3_should_retry_alloc() function will
not wait on the currently running transaction if there is a currently active
handle; hence this should avoid deadlocks in the Lustre use case. The patch
is versus BK-recent.
I've also included a simple, reliable test case which demonstrates the problem
this patch is intended to fix. (Note that BK-recent is not sufficient to
address this test case, and waiting on the commiting transaction in
ext3_new_block is also not sufficient. Been there, tried that, didn't work.
We need to do the full-bore retry from the top level. The
ext3_should_retry_alloc() will only wait on the committing transaction if
there is an active handle; hence Lustre will probably also need to use
ext3_should_retry_alloc() if it wants to reliably avoid this particular
problem.)
#!/bin/sh
#
#
TEST_DIR=/tmp
IMAGE=$TEST_DIR/retry.img
MNTPT=$TEST_DIR/retry.mnt
TEST_SRC=/usr/projects/e2fsprogs/e2fsprogs/build
MKE2FS_OPTS=""
IMAGE_SIZE=8192
umount $MNTPT
dd if=/dev/zero of=$IMAGE bs=4k count=$IMAGE_SIZE
mke2fs -j -F $MKE2FS_OPTS $IMAGE
function test_log ()
{
echo $*
logger -p local4.notice $*
}
mkdir -p $MNTPT
mount -o loop -t ext3 $IMAGE $MNTPT
test_log Retry test: BEGIN
for i in `seq 1 3`
do
test_log "Retry test: Loop $i"
echo 2 > /proc/sys/fs/jbd-debug
while ! mkdir -p $MNTPT/foo/bar
do
test_log "Retry test: mkdir failed"
sleep 1
done
echo 0 > /proc/sys/fs/jbd-debug
cp -r $TEST_SRC $MNTPT/foo/bar 2> /dev/null
rm -rf $MNTPT/*
done
umount $MNTPT
test_log "Retry test: END"
akpm@osdl.org
Rework the code to make it a formal JBD API entry point.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hpa@zytor.com>
[PATCH] Use first-fit for pty allocation
(With Andrew Morton).
The current dynamic pty allocation scheme has a few problems:
- pty numbers grow to be very large, causing wtmp file bloat.
- Seems to break libc5 and some old applications
So change it to do first-fit. An IDR tree is used to provide a
logarithmic-time search.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rene.herman@keyaccess.nl>
[PATCH] small tweaks to standard resource stuff
Various small tweaks. Compiled and booted.
1. add IORESOURCE_BUSY | IORESOURCE_MEM also for the kernel code and
data resources. I don't believe this actually matters one bit, but
they're hooked into a BUSY/MEM parent ("System RAM") and marking
them busy seems to make sense.
2. delete the .start = 1M default for the kernel code resource. This
isn't actually a change; it's set to virt_to_phys(_text) in
setup_arch() overriding any default anyways.
3. s/vram_resource/video_ram_resource/. Lines up much nicer with
video_rom_resource...
4. s/checksum/romchecksum/. setup.c is a fairly large file, and
"checksum" pollutes the namespace.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rene.herman@keyaccess.nl>
[PATCH] same small resource tweaks, x86_64 version
The same small tweaks for x86_64. Just to keep the two in sync. One
additional wrinkle: vram_resource was exported to e820.c, which didn't
actually use it. Undo that.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tol@stacken.kth.se>
[PATCH] getgroups16() fix
sys_getgroups16 (or rather groups16_to_user()) returns large gids
truncated. Needs to be fixed, one way or another. Don't know why the
other similar casts are still there.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<herbert@gondor.apana.org.au>
[PATCH] Check return status of register calls in i82365
i82365 calls driver_register and platform_device_register without checking
their return values. This patch fixes that.
It also runs platform_device_register() prior to isa_probe() so we don't have
to undo ise_probe()'s effects if platform_device_register() ends up failing.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] invalidate_inodes2(): mark pages not uptodate
Andrea Arcangeli <andrea@suse.de> points out that invalidate_inode_pages2() is
supposed to mark mapped-into-pagetable pages as not uptodate so that next time
someone faults the page in we will go get a new version from backing store.
The callers are the direct-io code and the NFS "something changed on the
server" code. In both these cases we do need to go and re-read the page.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] Fix read() vs truncate race
do_generic_mapping_read()
{
isize1 = i_size_read();
...
readpage
copy_to_user up to isize1;
}
readpage()
{
isize2 = i_size_read();
...
read blocks
...
zero-fill all blocks past isize2
}
If a second thread runs truncate and shrinks i_size, so isize1 and isize2 are
different, the read can return up to a page of zero-fill that shouldn't really
exist.
The trick is to read isize1 after doing the readpage. I realised this is the
right way to do it without having to change the readpage API.
The patch should not cost any cycles when reading from pagecache.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pavel@ucw.cz>
[PATCH] io_apic.c code consolidation
This cleans up io_apic.c a bit -- I do not really like 4 copies of same
code.
Ingo said:
yeah, agreed - i checked & test it, it's ok. I made a small
modification (see the patch below) to uninline the __modify_IO_APIC_irq()
function - shaving 0.5K off the kernel's size.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@elte.hu>
[PATCH] x86: remove APIC_LOCKUP_DEBUG
the patch below gets rid of APIC_LOCKUP_DEBUG. It has been in the kernel
for more than 3 years and the message was only reported once during that
period of time - and even in that case it was a side-effect of a really bad
crash. The lockup workaround works, the debugging code can be moved out.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@elte.hu>
[PATCH] x86: remove io_apic_sync
The patch below gets rid of io_apic_sync().
io_apic_sync() was introduced in 2.1.104 and it was originally done for
masking and unmasking as well. Later the unmasking use got removed but the
masking use lingered around. I dont think it was ever justified to do it
and clearly since the lack of io_apic_sync() didnt break some of the other
writes we do to the IO-APIC registers, it must be unnecessary in the
masking case too.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<willy@debian.org>
[PATCH] ahc1542 !CONFIG_MCA build fix
The old 1542 scsi driver is both ISA and MCA. The MCA portions are disabled
when !CONFIG_MCA through the typical wrapper scheme (a la pci.h and
!CONFIG_PCI). However... the driver unconditionally includes linux/mca.h
which in turn unconditionally includes asm/mca.h.
This breaks drivers on platforms with ISA but not MCA, like alpha.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<joris@eljakim.nl>
[PATCH] Validate PM-Timer rate at boot time
Add a check to the PM-Timer initialization code. It validates the PM-Timer
rate against PIT channel 2 and rejects the PM-Timer if its rate is not
withing 5% of the expected number.
Rationale:
The PMTMR timers of certain (older) mainboards are running at invalid
rates, often much faster than the rate expected by the PM-Timer code. This
causes the system clock to run much too fast. See also
http://bugme.osdl.org/show_bug.cgi?id=2375
Possible workarounds are disabling the PM-Timer in the kernel config or
disabling the PM-Timer at boot time through the "clock=tsc" parameter.
However, we believe it is more user friendly to automatically validate the
PM-Timer rate at boot time before using it as the system time source.
Tested by me (with broken timer) and John Stultz (with good timer) and
believed to be ok.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bwindle@fint.org>
[PATCH] fix 3c59x.c to allow 3c905c 100bT-FD
Fix the 3c905C 10/100 transceiver initialisation woes.
(This was reverted from 2.6.7-rcX, but the bug reporter said the failure
turned out to be unrepeatable).
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<alan@redhat.com>
[PATCH] make the 3c59x/3c90x driver somewhat more reliable
The existing driver violates basic PCI rules in several places making it
unusable for basic things like DHCP in Fedora Core. This patch removes all
the situations I can find where it writes to the device while in D3 state
and breaks stuff.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tim@physik3.uni-rostock.de>
[PATCH] BSD accounting format rework
BSD accounting format rework:
Use all explicit and implicit padding in struct acct to
- correctly report 32 bit uid/gid,
- correctly report jobs (e.g., daemons) running longer than 497 days,
- increase the precision of ac_etime from 2^-13 to 2^-20
(i.e., from ~6 hours to ~1 min. after a year)
- store the current AHZ value.
- allow cross-platform processing of the accounting file
(limited for m68k which has a different size struct acct).
- introduce versioning for smooth transition to incompatible formats in
the future. Currently the following version numbers are defined:
0: old format (until 2.6.7) with 16 bit uid/gid
1: extended variant (binary compatible to v0 on M68K)
2: extended variant (binary compatible to v0 on everything except M68K)
3: a new binary incompatible format (64 bytes)
4: new binary incompatible format (128 bytes).
layout of its first 64 bytes is the same as for v3.
5: marks second half of new binary incompatible format (128 bytes)
(layout is not yet defined)
All this is accomplished without breaking binary compatibility. 32 bit
uid/gid support is compatible with the patch previously floating around and
used e.g. by Red Hat.
This patch also introduces a config option for a new, binary incompatible
"version 3" format that
- is uniform across and properly aligned on all platforms
- stores pid and ppid
- uses AHZ==100 on all platforms (allows to report longer times)
Much of the compatibility glue goes away when v1/v2 support is removed from
the kernel. Such a patch is at
http://www.physik3.uni-rostock.de/tim/kernel/2.7/acct-cleanup-04.patch
and might be applied in the 2.7 timeframe.
The new v3 format is source compatible with current GNU acct tools (6.3.5).
However, current GNU acct tools can be compiled for only one format. As there
is no way to pass the kernel configuration to userspace, with my patch it will
still only support the old v2 format. Only if v1/v2 support is removed from
the kernel, recompiling GNU acct tools will yield v3 support.
A preliminary take at the corresponding work on cross-platform userspace tools
(GNU acct package) is at
http://www.physik3.uni-rostock.de/tim/kernel/utils/acct/
This version of the package is able to read any of the v0/v2/v3 formats,
regardless of byte-order (untested), even within the same file.
Cross-platform compatibility with m68k (v1 format) is not yet implemented, but
native use on m68k should work (untested). pid and ppid are currently only
shown by the dump-acct utility.
Thanks to Arthur Corliss, Albert Cahalan and Ragnar Kjørstad for their
comments, and to Albert Cahalan for the u64->IEEE float conversion code.
Signed-off-by: Tim Schmielau <tim@physik3.uni-rostock.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paul@serice.net>
[PATCH] iso9660: fix handling of inodes beyond 4GB
This is my fourth attempt to patch the isofs code. It is similar to the last
posting except this one implements the NFS get_parent() method which has
always been missing.
The original problem I set out to addresses is that the current iso9660 file
system cannot reach inodes located beyond the 4GB barrier. This is caused by
using the inode number as the byte offset of the inode data. Being 32-bits
wide, the inode number is unable to reach inode data that does not reside on
the first 4GB of the file system.
This causes real problems with "growisofs"
http://fy.chalmers.se/~appro/linux/DVD+RW/#isofs4gb
and my pet project "shunt"
http://www.serice.net/shunt/
This patch switches the isofs code from iget() to iget5_locked() which allows
extra data to be passed into isofs_read_inode() so that inode data anywhere on
the disk can be reached.
The inode number scheme was also changed. Continuing to use the byte offset
would have resulted in non-unique inodes in many common situations, but
because the inode number no longer plays any role in reading the meta-data off
the disk, I was free to set the inode number to some unique characteristic of
the file. I have chosen to use the block offset which is also 32-bits wide.
Lastly, the pre-patch code uses the default export_operations to handle
accessing the file system through NFS. The problem with this is that the
default NFS operations assume that iget() works which is no longer the case
because of the necessity of switching to iget5_locked(). So, I had to
implement the NFS operations too. As a bonus, I went ahead and implemented
the NFS get_parent() method which has always been missing.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paul@serice.net>
[PATCH] iso9660: NFS fix
Make all inode numbers unique for images less than 128GB in size. Required
for knfsd.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jeremy@sgi.com>
[PATCH] SCSI whitelist changes
The BLIST_REPORTLUN2 blacklist item has exactly the behavior that
the MYLEX DACARMRB (and SGI TP9100, which is really a 2Gb upgrade
to the DACARMRB) need.
These devices use a PQ of 1 instead of 3 for unconfigured luns,
which means that every RAID has 32 luns, many or most of which
are just phantoms.
However, it does support Report Luns, and it returns the correct
data.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<thomas@winischhofer.net>
[PATCH] sisfb update 1.7.10
attached is an update for the sisfb driver to version 1.7.10.
This update includes
- fixes for pure 64bit and 32/64bit mixed systems (add ioctl conversion;
fix variable sizes, etc; REQUIRED for current X.org/XFree86 on 64bit
systems, even if pure 64bit),
- fixes for 301C video bridge, (scales TV output correctly now)
- fixes for 1600x1200 and 1400x1050 LCD panels,
- many fixes for 661/741/760 (amongst others, proper LFB support for the
760 and corrections for SiS' new BIOS data layout; would lead to display
corruption with old driver)
- add support for many modes for LCD which were unsupported previously,
- add support for HiVision and YPbPr HDTV
- "vga=" statement now honoured properly (sisfb will set the same mode as
the kernel did by default)
- use LCD native resolution mode if no mode is given
- a major clean up of main driver code,
- radical removal of duplicate (or nearly duplicate) code,
- switched to 2.6 module_param macros,
- enhanced communication with the X driver,
- added eventual POSTing of SiS300/305 card for non-x86 archs,
- added ability to relocate the image on the TV screen using a userland
tool,
- added Documentation/fb/sisfb.txt (why the heck was this missing?!)
- small fix for SiS DRM driver (match 32/64bit fixes mentioned above)
(cast the data passed to sis_free as u32)
- make driver re-entrant by avoiding static structures and variables.
As usual, heavily tested. The mode switching code is even lab-tested by
SiS (although 100% written by me). Please apply asap (especially since
64bit systems were not properly supported previously; as mentioned, current
X.org/XFree86 needs this update for proper communication with the
framebuffer driver on 64bit systems. X crashes on such systems with the
old driver).
Signed-off-by: Thomas Winischhofer <thomas@winischhofer.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bogdan.costescu@iwr.uni-heidelberg.de>
[PATCH] 3c59x: support for ATI Radeon 9100 IGP
The following patch adds support for the 3Com networking core found in the
ATI Radeon 9100 IGP southbridge used on boards like Asus P4R800-VM.
The main point of this patch is using HAS_MII instead of HAS_NWAY for the
definition of the board. All the previous trials since the end of last
year used HAS_NWAY which disables the Tx part of the transceiver; using
HAS_NWAY was the way all 3Com Cyclone and Tornado chips worked, as they had
the transceiver integrated. The ATI solution has an external transceiver
and I had to physically see the different chip on the board (the board was
provided by ATI) to finally understand that it needs the HAS_MII
definition... I'm still waiting for some docs from ATI to clarify if this
is the correct way of handling this chip and if there are any differences
w.r.t EEPROM handling, but as it appears to work and was also confirmed by
other testers, I don't want to keep owners of such boards away from their
networks :-)
The textual identification was a bit hard to decide; it's called
"3c920B-EMB-WNM" in the Windows .INF file that Asus provides for their
boards. As this name was already used for PCI ID 9210, I added the
paranthesis which specifies where this chip is found.
The Scyld driver defines FEATURE_TORNADO to include HAS_NWAY. This board
would then probably need to not be defined with FEATURE_TORNADO, but the
same as in this patch.
I would like to publicly thank Tyson Vickers for both ideas and patience
during the last few weeks. He managed to get the driver working by
randomly setting driver parameters :-) But then he contacted me and worked
with me towards the solution.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<agk@redhat.com>
[PATCH] dm-io: device-mapper i/o library for kcopyd
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<agk@redhat.com>
[PATCH] Device-mapper: kcopyd
Add kcopyd - a daemon for copying regions of block devices around in an
efficient manner. Multiple destinations can be specified for a copy.
Designed to perform well both with many small chunks or few large chunks.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] dm: kcopyd: remove superfluous INIT_LIST_HEADs
Remove superfluous kcopyd INIT_LIST_HEAD.
From: Alasdair Kergon <agk@redhat.com>
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] dm: kcopyd: No need to lock pages
No need to lock kcopyd pages.
From: Alasdair Kergon <agk@redhat.com>
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] kcopyd commentary
We're also working on some general documentation which will go in
Documentation/device-mapper and will include more detailed information
about the core driver and the other sub-modules. We'll try to submit those
patches in the near future.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<agk@redhat.com>
[PATCH] Device-mapper: snapshots
Add snapshot target
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] dm: Fix error cleanup in dm_create_persistent()
dm-exception-store.c: Fix error cleanup in dm_create_persistent().
This was originally found by chrisw during code review.
From: Dave Olien <dmo@osdl.org>
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<agk@redhat.com>
[PATCH] Device-mapper: mirroring
Add mirror target.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<agk@redhat.com>
[PATCH] Device-mapper: dm-zero
Add dm-zero target
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] dm: dm-zero version
Add missing dm-zero version number.
From: Alasdair Kergon <agk@redhat.com>
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<christophe@saout.de>
[PATCH] Device-mapper: dm-zero flushing fix
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] dm: Documentation
Device-Mapper documentation.
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] dm: Create/destroy kcopyd on demand.
Create/destroy kcopyd on demand.
This changes kcopyd to initialize its mempool and workqueue only when a
client specifically needs to use it.
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] dm: Use structure assignments instead of memcpy
Use structure assignments instead of memcpy's.
[Suggested by akpm during kcopyd review.]
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] dm: dm-io: Error handling
dm-io: Proper error handling when someone is trying to read from multiple
regions.
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] dm: dm-raid1.c: Make delayed_bios a bio_list
dm-raid1.c: Make struct region::delayed_bios a bio_list instead of a bio*.
This will ensure the queued bios are kept in the proper order.
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] dm: dm-raid1.c: Use list_for_each_entry_safe
dm-raid1.c: In rh_exit(), use list_for_each_entry_safe instead of
list_for_each_safe.
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tom.l.nguyen@intel.com>
[PATCH] msi TARGET_CPUS fix
Somehow the change in TARGET_CPUS generated this error in UP environment.
Patch below will fix it.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] x86_64 numa cpumask build fix
arch/x86_64/mm/numa.c: In function `numa_initmem_init':
arch/x86_64/mm/numa.c:185: error: incompatible types in assignment
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] i386 uninline some bitops
Uninline the non-leaf bit search functions. Saves 9 kbytes from my vmlinux.
And gratuitously s/__inline__/inline/
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] APIC enumeration fixes
The following patch appears sound according to an audit to ensure that all
of the codepaths where it was introduced were called after the APIC
fixmappings were set up.
This patch introduces get_physical_broadcast(), which checks the version ID
of the local APIC to determine whether it's a serial APIC or xAPIC, and
returns the correct physical broadcast ID. It replaces all uses of
APIC_BROADCAST_ID and IO_APIC_MAX_ID with this in order to ensure. It also
changes the checks during MP table parsing so the APIC ID is checked in
tandem with the version number.
I'm holding out for some kind of testing to get an idea of whether this
covers the cases or introduces regressions, or whatever.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] apic: fix kicking of non-present cpus
The following patch repairs kicking of non-present cpus by making
cpu_present_to_apicid() bounds-check its argument. It also corrects the
same issue on NUMA-Q by correctly passing the generated artificial APIC ID
instead of the raw value discovered in the MP table.
A miscellaneous compilefix for CONFIG_ACPI_BOOT is also included for
completeness.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] apic: remove marking of non-present physids in phys_cpu_present_map
Marking invalid APIC ID's in phys_cpu_present_map was intended to generate
"collisions" between APIC ID's in order to assist the ordinary bounds
checking against the broadcast physical APIC ID. However, this is bounds
checked everywhere it's necessary, and it's also not even possible to
properly bounds-check everywhere. So this patch removes that marking of
non-present physical APIC ID's.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] apic: make mach_default compile again
While sweeping the APIC code two points were missed. The first is getting
the definition of BAD_APICID available to
include/asm-i386/mach-default/mach_apic.h by #including the right header,
and the second is UP local APIC without UP IO-APIC linking in
get_broadcast_physid().
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ak@suse.de>
[PATCH] Use numa policy API for boot time policy
Suggested by Manfred Spraul.
__get_free_pages had a hack to do node interleaving allocation at boot
time. This patch sets an interleave process policy using the NUMA API for
init and the idle threads instead. Before entering the user space init the
policy is reset to default again. Result is the same.
Advantage is less code and removing of a check from a fast path.
Removes more code than it adds.
I verified that the memory distribution after boot is roughly the same.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torque@ukrpost.net>
[PATCH] memory allocation checks in eth1394_update()
Adds memory allocation checks in eth1394_update().
Signed-off-by: Yury Umanets <torque@ukrpost.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torque@ukrpost.net>
[PATCH] memory allocation checks in mtdblock_open()
Fixes memory allocation check in mtdblock_open()
Signed-off-by: Yury Umanets <torque@ukrpost.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<umka@namesys.com>
[PATCH] memory allocation checks in cs46xx_dsp_proc_register_scb_desc()
Adds memory allocation checks in cs46xx_dsp_proc_register_scb_desc()
Signed-off-by: Yury Umanets <torque@ukrpost.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ashok.raj@intel.com>
[PATCH] don't create cpu/online sysfs file
This file provides ability for caller of register_cpu() to either create a
control file, or not. This can be handy if a particular platform decides
that certain CPU's are not removable. Hence would like to not create a
control file.
Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tvignaud@mandrakesoft.com>
[PATCH] checksatck.pl fixes
- "\<" and "\>" can be safely replaced with "<" and ">"
- "$var =~ /^string$/" is better written "$var eq 'string'"
- $i is better written without the double quotes
- it's not safe to use for without "my"ing the iteration variable
- "print foreach @array" is better written "print @array"
- declare variables
- ".*" is useless at the end of a regexp
- "$a[@a] = $foo" is a rather obfuscated syntax for "push @a, $foo"...
let's not opencoding language basic operators...
- ignoring return value from a regexp is very bad: this can results in
working on previous value of $1, $2, ...
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<arun.sharma@intel.com>
[PATCH] sys_getdents64 needs compat wrapper
Due to different structure alignment rules in the ABI between ia32 and
ia64, certain members of the dirent structure are not guaranteed to be 8
byte aligned on ia64. This requires a compat wrapper around these 32 bit
system calls. Other architectures may or may not have the problem,
depending on the alignment rules.
This was observed by running /emul/ia32-linux/bin/ls on 2.6.6 which produces
kernel mode unaligned faults.
Original patch by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Gordon Jin <gordon.jin@intel.com>
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<andrea@suse.de>
[PATCH] remap_file_pages() speedup
Avoid taking down_write(mmap_sem) unless we really need it.
Seems that the only reason we're taking it for writing is to protect
vma->vm_flags.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mikem@beardog.cca.cpqcorp.net>
[PATCH] cciss ioctl32 update
This patch provides a conversion routine for 32-bit user space apps that
call into a 64-bit kernel on x86_64 architectures. This is required for
the HP Array Configuration utility and the HP management agents. Without
this patch the apps will not function.
The 2 ioctls affected are the cciss pass thru ioctls. Caveat: it spits out
2 warnings during compilation. I've tried everything I can think of to
clean them up, but... If anyone has any helpful suggestions I'm all ears.
Code by Stephen Cameron
Tested by Stephen Cameron & Mike Miller
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<axboe@suse.de>
[PATCH] fix cdrom mt rainier probe
Mt rainier probe must be deferred to media load time, since it requires a
valid media (the drive may present a different capability based on what
media is loaded). This fixes that for ide-cd and sr.
Signed-Off-By: Jens Axboe <axboe@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<axboe@suse.de>
[PATCH] blk: move threshold unplugging
The 'unplug on queued exceeding unplug threshold' logic only works for file
system requests currently, since it's in __make_request(). Move it where
it belongs, in elv_add_request(). This way it works for queued block sg
requests as well.
Signed-Off-By: Jens Axboe <axboe@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pavel@ucw.cz>
[PATCH] Fix memory leak in swsusp
This fixes 2 memory leaks in swsusp: during relocating pagedir, eaten pages
were not properly freed in error path and even regular freeing path was
freeing one page too little.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<herbert@gondor.apana.org.au>
[PATCH] omdisk memory leak fix
Fix a couple of memory leaks in the pmdisk driver.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<herbert@gondor.apana.org.au>
[PATCH] remove unnecessary memsets from swsusp and pmdisk
Here's the patch that removes the memset calls from both pmdisk and swsusp.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<herbert@gondor.apana.org.au>
[PATCH] swsusp: remove copy_pagedir
It can be replaced by a simple memcpy.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<vandrove@vc.cvut.cz>
[PATCH] Decrease stack usage in ncpfs's ioctl
It decreases stack consumption in one of ncpfs's paths from 3000 to 2200
bytes (and stack portion in ncpfs ioctl code from 1336 to 452 bytes).
- some code used large structure (with embeded 256 bytes for filename)
while it never passed filename around. Use something smaller in
ncp_conn_logged_in. Decrease 616 => 300.
- gcc-3.3 is very bad when it comes to parallel blocks in ioctl. Split
some branches from large switch to separate functions. ncp_ioctl now
uses 152 bytes of stack (instead of 720) and biggest child 64.
Signed-off-by: Petr Vandrovec <vandrove@vc.cvut.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] Make update_one_process() static
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rtjohnso@eecs.berkeley.edu>
[PATCH] drivers/char/ipmi/ipmi_devintf.c: user/kernel pointer typo
Judging from context, I think there's a misplaced "&" in this code that can
cause stack overflows and other nasty problems. Perhaps it's left over
from when msgdata was an array instead of a pointer?
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davidel@xmailserver.org>
[PATCH] epoll: replace the file lookup hash with rbtrees
The epoll allocation for the fd lookup hash used to allocate up to 1MB
(depending on the "hint" size passed to epoll_create()) with
__get_free_pages(0), and this might lead to a "malicious" user to do
something like:
for (i = 0; i < 1024; i++)
epoll_create(BIG-NUM);
You can replace "malicious user" with IBM-ltp test suite, and the meaning
does not change. The above code might exhaust memory badly, even before
the file creation limit is topped. Also, the allocation was independent
from the number of fds pushed into the epoll fd hash. Using an rb-tree
ther will be not pre-allocation of the hash, and the size of the memory
used will be proportional to the number of fds pushed into the epoll fd.
The patch also removes 100 lines of code, that is never a bad thing ;)
Signed-off-by: Davide Libenzi <davidel@xmailserver.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<egmont@uhulinux.hu>
[PATCH] Shift+PgUp if nr of scrolled lines is < 4
Using the vga console driver, if the number of the lines scrolled out is
less than four, then Shift+PageUp doesn't work.
The bug is closely related to the 'margin' feature of scrolling, which
means that if less than four lines should remain unvisible in the direction
we are scrolling to, then we scroll a little bit more just to see those few
lines. Kind of two small magnets at the borders of the buffer.
This bug was also reported with maybe a less clear description by Stepan
Koltsov (cc'ed just for fun) back in 2001 and he got no answer. I found it
at http://seclists.org/lists/linux-kernel/2001/Nov/0080.html
His patch simply disables margin support and hence everythings becomes
okay, but you lose a nice feature.
Here's a patch that retains margin support and fixes the bug. Works for
me, tested for a week. No guarantee. As I don't fully understand the code
(see also my previous mail) I'm not 100% sure that I'm doing the right
thing, so I'd prefer if someone would take a closer look at it.
At least 2.4 and 2.6 are affected, maybe older ones too.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rddunlap@osdl.org>
[PATCH] istallion printk fix
istallion: Remove duplicate "%d" in printk();
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] lower priority of "too many keys" msg in atkbd.c
From: "Jon Thackray" <jgt@pobox.com>
* Lowered priority of "too many keys" message in drivers/input/keyboard/atkbd.c
This fixes Debian BTS #239036.
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=239036
The keyboard under 2.6.4 seems to be behaving strangely, reporting unknown
key codes and too many keys pressed, even when no keys have been pressed.
The keyboard is connected via an 8 way KVM switch, but was working quite
acceptably under 2.4.25 with no such messages. Trying 2.6.3 is not an
option as it doesn't support the hardware properly, as previously reported.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] unregister driver if probing fails in sb_card.c
* Unregister driver if probing fails in sound/oss/sb_card.c
This fixes Debian BTS #218845.
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=218845
From: Robin Gerard <robin.jag@free.fr>
To: submit@bugs.debian.org
Subject: no sound with kernel-image-2.6.0-test9-1-386
Message-ID: <20031103004939.GA2071@mauritius>
I downlaoded the kernel-image-2.6.0-test9-1-386_2.6.0-test9-1_i386.deb
and I installed it successfully. Everything works fine, except the sound.
(I run also the kernel-image-2.4.20 and the sound is ok with this kernel)
My sound card is a sb.
First I launched modconf but no module was displayed.
I did: modprobe sb
and I got:
sb: Init: Done
sb: Init: Starting Probe...
kobject_register failed for OSS SndBlstr (-17)
Call Trace:
[<c0191cda>] kobject_register+0x3a/0x40
[<c01d9bcc>] bus_add_driver+0x30/0x64
[<c01d9e51>] driver_register+0x2d/0x34
[<c011a24a>] preempt_schedule+0x2a/0x48
[<c01b6f84>] pnp_register_driver+0x28/0x58
[<c01b6c5e>] pnp_register_card_driver+0x5e/0x98
[<c488f063>] sb_init+0x63/0xb5 [sb]
[<c0130bf4>] sys_init_module+0xe8/0x1f0
[<c010b577>] syscall_call+0x7/0xb
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] fix duplicate environment variables passed to init
* Fixed argument processing bug in init/main.c (Eric Delaunay)
This fixes Debian BTS #58566.
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=58566
From: Eric Delaunay <delaunay@lix.polytechnique.fr>
Message-Id: <200002201918.UAA02327@jazz.pontchartrain.fr>
Subject: pb in handling parameters on kernel command line
To: submit@bugs.debian.org (debian bug tracking system)
Hello, I found some bugs in kernel command line parser. AFAIK, they are not
Debian nor sparc specific but I'm not subscribed to linux-kernel mailing list
and since I'm involved with boot-floppies (mainly for sparc), I think I'm right
to report it here. Feel free to forward it upstream (I checked the latest
2.3.46 sources and it seems these bugs are still there).
These bugs are not release critical. The latter just not gives the user a
chance to overwrite TERM env var at boot time. It could be just
inconvenient for serial console boot, and in this case, our busybox' init is
already enforcing TERM=vt102.
Nevertheless if it could not be fixed before the release, I could even write a
workaround in busybox' init (it's just a matter of rewriting getenv()).
At last, it does not affect sysvinit package because serial console tty is
controlled by a getty process which is reading terminal settings on its command
line (take a look in inittab for T0 entries, if any).
Ok, here is my modest contribution to kernel hacking. I don't know much about
kernel internals but it seems that argument parsing is a bit broken.
One trivial patch for command line like "init=/bin/sh console=prom" where
console=prom is replaced by lot of spaces in previous call to setup_arch() on
sparc, therefore the line parsed by parse_options() is really
"init=/bin/sh " and a lot of null args are pushed into argv_init.
The other patch is for command line like "TERM=vt100" where both default & user
TERM entries are pushed into the env array.
Taking a look into /proc/1/environ, it shows up:
HOME=/
TERM=linux
TERM=vt100
It appears that ash (maybe other shells too) is giving the latter entry but
glibc getenv() is giving the former. It is therefore impossible to get entry
from the user in a C program like busybox' init (used in Debian boot-floppies).
I guess getenv() is not written to support duplicate entries, therefore the
kernel should avoid such construct.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] fix handling of '/' embedded in filenames in isofs
* Fix slashes in broken Acorn ISO9660 images in fs/isofs/dir.c (Darren Salt)
This fixes Debian BTS #141660.
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=141660
From: Darren Salt <linux@youmustbejoking.demon.co.uk>
Message-ID: <4B238BA09A%linux@youmustbejoking.demon.co.uk>
To: submit@bugs.debian.org
Subject: Handle '/' in filenames in broken ISO9660 images
[Also applicable to 2.2.x]
There has been for some time a problem with certain CD-ROMs whose images
were generated using a particular tool on Acorn RISC OS. The problem is
that in certain catalogue entries, the extension separator character '/'
(RISC OS uses '.' and '/' the other way round) was not replaced with '.';
thus Linux cannot properly parse this without this patch, thinking that it
is a directory separator.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] fix isofs ignoring noexec and mode mount options
* Removed period check for executables in fs/isofs/inode.c
This fixes Debian BTS #162190
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=162190
From: Jan Gregor <gregor_jan@seznam.cz>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: kernel-source-2.4.18: kernel ignores noexec and mode option in cdrom case
Message-ID: <20020924162129.A328@pisidlo>
In /etc/fstab i have following line:
/dev/cdrom /cdrom iso9660 gid=100,noauto,ro,noexec,mode=0444,user 0 0
I found on one CD that some files have exec bit set. From brief view
those files has no extension (filename.ext).
My drive is asus-1610a (ATAPI writer) connected throught scsi-emulation.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<alex@clusterfs.com>
[PATCH] ext3: htree readdir fix
I've observed that ext3_htree_fill_tree() doesn't ignore empty records
(de->inode == 0). test case is very simple: turn htree on, create several
hundreds of files, remove them and look at strace ls:
[root@victim tests]# ls -a /test/1
. ..
[root@victim tests]# strace ls /test/1/
....
getdents64(3, /* 18 entries */, 4096) = 432
getdents64(3, /* 0 entries */, 4096) = 0
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] Fix raid1 read_balancing code.
The meaning of mddev->in_sync changed subtly a while ago, and raid1 wasn't
changed to match. This results in raid1 read_balancing not working
properly. This patch corrects the relevant test.
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<linux@dominikbrodowski.de>
[PATCH] mull'ify multiplication with HZ in __const_udelay()
John Stultz mentioned on lkml ( http://lkml.org/lkml/2004/6/5/15 ) that
calls to udelay() don't delay long enough, causing trouble e.g. in the USB
subsystem. The following patches address this issue.
Move the multiplication of (loops_per_jiffy * xloops) with HZ into the
"mull" asm operation. This increases the accuracy of the delay functions
largely:
n usec delay on a system with loops_per_jiffy = 1500000 :
n before after
1 1000 ticks 1499 ticks
10 14000 ticks 14999 ticks
n usec delay on a system with loops_per_jiffy = 100000 :
n before after
1 0 ticks 99 ticks
10 0 ticks 999 ticks
100 9000 ticks 9999 ticks
As noted by Kurt Garloff, it's necessary to adjust for large
loops_per_jiffies, as the multiplication of it with HZ fails for 4GHz or
larger. So, John Stultz suggested multiplying xloops with 4 first, and
multiplying with (HZ/4).
Signed-off-by: Dominik Brodowski <linux@brodo.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<linux@dominikbrodowski.de>
[PATCH] round up in __udelay()
Round up in __udelay(): 2**32 / 100000 is 4294.97, so it's more intuitive
to round up, and it causes more predictable results:
n usec delay on a 1500000 BogoMIPS system:
n before -mull after
1 1000 ticks 1499 ticks 1500 ticks
10 14000 ticks 14999 ticks 15000 ticks
n usec delay on a 100000 BogoMIPS system:
n before -mull after
1 0 ticks 99 ticks 100 ticks
10 0 ticks 999 ticks 1000 ticks
100 9000 ticks 9999 ticks 10000 ticks
While it can be argued that some time is also spent in the delay functions,
it's better to spend _at least_ the specified time sleeping, in my humble
opinion. And the overhead of a specific ->delay() implementation should be
substracted in the specific ->delay() implementation.
Signed-off-by: Dominik Brodowski <linux@brodo.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<linux@dominikbrodowski.de>
[PATCH] add 1 in __const_udelay()
The "mull" instruction in __const_udelay() cuts off the lower 32 bits --
so, it is "rounding down". This is both an issue for small ndelay()s for
_all_ values for loops_per_jiffy and for certain {n,u}delay()s for many
loops_per_jiffy values.
Assuming
LPJ = 1501115
udelay(87)
results in
130597 loops to be spent.
However, 1000 * 130597 / 1501115 is 86.999997 us, so we're actually
_rounding down_. 1000 * 130598 / 1501115 is 87.000662841, which would be
the technically correct thing to do. Of course, for the TSC case this
won't matter as the maths take some time, so the actual delay is
1000 * __udelay(x) / lpj + __OVERHEAD(x)
Anybody worried about both the additional overhead and the fact that the
overhead takes some time to run should add a check
if (unlikely(xloops < OVERHEAD))
return;
xloops -= OVERHEAD;
to the delay() routines in arch/i386/kernel/timers/*.c and determine
what the OVERHEAD is.
Signed-off-by: Dominik Brodowski <linux@brodo.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jmorris@redhat.com>
[PATCH] Add security_file_permission() to AIO paths.
Currently, there are no LSM hooks in the AIO codepaths, which means that
LSM based access controls are not revalidated upon AIO read and write
operations. The patch below adds the security_file_permission() LSM hook
prior to the VFS aio_read()/aio_write() calls.
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<marcelo.tosatti@cyclades.com>
[PATCH] update Marcelo CREDITS info
Update my CREDITS information.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jmorris@redhat.com>
[PATCH] Fix sock_orphan race.
The patch below fixes a race between sock_orphan() and
selinux_socket_sock_rcv_skb() which can lead to a null pointer deref oops
under heavy load. The sk_callback_lock is used in the patch to synchronize
access to the incoming socket's inode security state.
This patch has been under test in the Fedora kernel for over a month
without incident.
Author: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] fix standalone inclusion of asm-i386/dma-mapping.h
Without this a usb-storage patch I sent fails on x86 because dma-mapping.h
uses struct device and various VM stuff without proper includes. It's fine
on ppc at least.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: lost dirty bits
The SetPageUptodate function is called for pages that are already up to
date. The arch_set_page_uptodate function of s390 may not clear the dirty
bit in that case otherwise a dirty bit which is set between the start of an
i/o for a writeback and a following call to SetPageUptodate is lost.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<daniel@osdl.org>
[PATCH] handle partial DIO write
The fsx-linux hole fill failure problem was caused by
generic_file_aio_write_nolock() not handling the partial DIO write
correctly. Here's a patch lets DIO do the partial write, and the fallback
to buffered is done (correctly) for what is left. This fixes the hole
filling without retrying the entire i/o. This patch also applies to
2.6.7-rc3 with some offset.
I tested this (on ext3) with
fsx-linux -l 500000 -r 4096 -t 4096 -w 4096 -Z -N 10000 junk -R -W
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<eger@havoc.gtf.org>
[PATCH] fb accel capabilities
Baseline patch to make framebuffer/fbcon interaction more sane by basing the
fbcon heuristics on capabilities advertized by underlying framebuffer via the
fb_info.flags field.
This patch updates fbcon, fb.h, and skeletonfb.c. It does *not* yet update
the drivers themselves. They should compile and work, but their hinting is
not correct yet, meaning most fb drivers will be slow until I set the flags to
the right hinting driver-by-driver
Signed-off-by: David Eger <eger@havoc.gtf.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<eger@havoc.gtf.org>
[PATCH] fbcon: prefer pan when available
Improve heuristics to favor panning over copyarea() thanks to pseudocode
from Antonino Daplas <adaplas@hotpop.com>
Signed-off-by: David Eger <eger@havoc.gtf.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] Updates to rivafb driver
The patch updates rivafb to the following:
1. Fixed cursor corruption and simplified cursor code.
2. Maximized var->yres_virtual on initial mode setting. Scrolling,
therefore, defaults to y-panning which is significantly faster.
3. Restricted var->xres_virtual and var->yres_virtual to 0x7fff
(hardware limitation?). Otherwise, var->yres_virtual > 0x7fff + panning
will hang the GPU.
4. Added I2C/DDC support. This feature enables independent mode setup
to rivafb. 'stty rows n cols n' should now work correctly. This is a
configurable option.
5. Various/minor fixes to drawing code.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] More updates to rivafb driver
1. pass info->monspecs.modedb and info->monspecs.modedb_len to
fb_find_mode() instead of NULL, 0 since its contents are specific to the
attached display. Anyway, if info->monspecs.modedb == NULL,
fb_find_mode() will use the default database.
2. Added best fit algo to fb_find_mode().
3. Use snprintf instead of sprintf.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lethal@Linux-SH.ORG>
[PATCH] asiliantfb init fix
asiliantfb seems to have only been partially merged (the fbmem.c bits in
particular seem to have been missed entirely). This adds them back in,
though they do seem to be present in the fbdev tree, at least they were the
last time I looked.
These are the last bit of outstanding changes I have in the LinuxSH
tree for asiliantfb, so it would be nice to get this out of the way.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<eger@havoc.gtf.org>
[PATCH] fix radeonfb panning and make it play nice with copyarea()
radeonfb: fix panning corruption on a large virtual screen, Make panning
and copyarea() play nicely with each other.
Signed-off-by: David Eger <eger@havoc.gtf.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<geert@linux-m68k.org>
[PATCH] fix warning in fbmem.c
Fix a const/non-const warning.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<eger@havoc.gtf.org>
[PATCH] rivafb: fb accel capabilities
Here's the fb accel capabilities patch for rivafb.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] fix simple_strtoul base 16 handling
I know it's simple_strtoul, but is it meant to be that simple? Fix up for
both simple_strtoul and simple_strtoull.
simple_strtoul(0x401b, NULL, 0) = 0x401b
simple_strtoul(0X401b, NULL, 0) = 0x0
simple_strtoul(0x401b, NULL, 16) = 0x0
simple_strtoul(0X401b, NULL, 16) = 0x0
simple_strtoull(0x401b, NULL, 0) = 0x401b
simple_strtoull(0X401b, NULL, 0) = 0x0
simple_strtoull(0x401b, NULL, 16) = 0x0
simple_strtoull(0X401b, NULL, 16) = 0x0
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jmorris@redhat.com>
[PATCH] SELinux: Fine-grained Netlink support - SELinux headers update
This patch regenerates the SELinux module headers to reflect new class and
access vectors definitions. The size of the diff is misleading; much of it is
simply a change in the ordering of the automatically generated definitions.
The corresponding generation script has been changed to ensure a stable order
in the future. Please apply.
Author: Stephen Smalley <sds@epoch.ncsc.mil>
Cc: David S. Miller <davem@redhat.com>
Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jmorris@redhat.com>
[PATCH] SELinux: Fine-grained Netlink support - move security_netlink_send() hook
This patch moves the security_netlink_send() LSM hook after the user copy, so
that LSM modules can safely examine skb payload content. For SELinux, we need
to look at the Netlink message type.
Cc: David S. Miller <davem@redhat.com>
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jmorris@redhat.com>
[PATCH] SELinux: Fine-grained Netlink support - add sk to netlink_send hook
Modifies the LSM netlink_send() hook so that it takes a struct sock parameter.
SELinux will use this parameter to lookup the class of socket, which was
assigned during socket security initialization.
Cc: David S. Miller <davem@redhat.com>
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jmorris@redhat.com>
[PATCH] SELinux: Fine-grained Netlink support - SELinux changes
This patch contains SELinux changes which add support for extended Netlink
socket classes and the associated permissions nlmsg_read and nlmsg_write.
Cc: David S. Miller <davem@redhat.com>
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<minyard@acm.org>
[PATCH] IPMI base patch to fix channel handling and add polling
This patch fixes some problems with handling of channel detection in the
driver. Some systems that are IPMI 1.5 do not implement the channel query
command. Also, the interface has to be fully up before the command is
ready.
This patch also adds a polling interface; this is required for situations
where interrupts are not running, but the system must still issue IPMI
commands, like when taking a crash dump.
It also updates the driver version to v32.
Signed-off-by: Corey Minyard <minyard@acm.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kenneth.w.chen@intel.com>
[PATCH] Hugetlb page bug fix for i386 in PAE mode
Hit a bug check when unmap a hugetlb vma in PAE mode on i386 (and x86-64).
Bad page state at free_hot_cold_page (in process 'a.out', page c165cc40)
flags:0x20000000 mapping:f75e1d00 mapped:0 count:0
Backtrace:
Call Trace:
[<c0133e0d>] bad_page+0x79/0x9e
[<c0134550>] free_hot_cold_page+0x71/0xfa
[<c0115d60>] unmap_hugepage_range+0xa3/0xbf
[<c013d375>] unmap_vmas+0xac/0x252
[<c0117691>] default_wake_function+0x0/0xc
[<c0140bea>] unmap_region+0xd8/0x145
[<c0140f2d>] do_munmap+0xfc/0x14d
[<c01b8a56>] sys_shmdt+0xa5/0x126
[<c010a2ad>] sys_ipc+0x23c/0x27f
[<c014a85e>] sys_write+0x38/0x59
[<c0103e1b>] syscall_call+0x7/0xb
It turns out there is a bug in hugetlb_prefault(): with 3 level page table,
huge_pte_alloc() might return a pmd that points to a PTE page. It happens
if the virtual address for hugetlb mmap is recycled from previously used
normal page mmap. free_pgtables() might not scrub the pmd entry on munmap
and hugetlb_prefault skips on any pmd presence regardless what type it is.
Patch to fix the bug.
Signed-off-by: Ken Chen <kenneth.w.chen@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rddunlap@osdl.org>
[PATCH] remove blank line in show_trace()
Delete a blank line for more error reporting on-screen.
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<greg@kroah.com>
[PATCH] remove EXPORT_SYMBOL(kallsyms_lookup)
Distros have started to ship kernels with this patch, as it seems that some
unnamed binary module authors are already abusing this function (as well as
some open source modules, like the openib code.) I could not find any valid
reason why this symbol should be exported, so here's a patch against 2.6.7
that removes it.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kaos@ocs.com.au>
[PATCH] contify some scheduler functions
Several scheduler macros only read from the task struct, mark them const.
It may help the compiler generate better code.
Signed-off-by: Keith Owens <kaos@ocs.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ysato@users.sourceforge.jp>
[PATCH] H8/300: ptrace fix
- Kconfig typo fix
- PTRACE_PEEKUSER read process info support
- exr restore fix
- ptrace register offset fix
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ysato@users.sourceforge.jp>
[PATCH] H8/300: io.h cleanup
- optimize byteswap
- add noswap io mode
- cleanup var type
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kszysiu@iceberg.elsat.net.pl>
[PATCH] cmpci oops on rmmod + fix
The cmpci driver included in Linux 2.6.7 causes an oops on rmmod, I believe
cm_remove should be marked __devexit rather than __devinit.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torvalds@ppc970.osdl.org>
Fix kill_pg_info(): return success if _any_ signal succeeded.
<chrisw@osdl.org>
[PATCH] RLIM: pass task_struct in send_signal()
Update send_signal() api to allow passing the task receiving the signal. This
is necessary to ensure signals generated out of process context can be charged
to the correct user.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] RLIM: enforce rlimits on queued signals
Add a user_struct pointer to the sigqueue structure. Charge sigqueue
allocation and destruction to the user_struct rather than a global pool. This
per user rlimit accounting obsoletes the global queued_signals accouting.
The patch as charges the sigqueue struct allocation to the queue that it's
pending on (the receiver of the signal). So the owner of the queue is charged
for whoever writes to it (much like quota for a 777 file).
The patch started out charging the task which allocated the sigqueue struct.
In most cases, these are always the same user (permission for sending a
signal), so those cases are moot. In the cases where it isn't the same user,
it's a privileged user sending a signal to another user.
It seems wrong to charge the allocation to the privleged user, when the other
user could block receipt as long as it feels. The flipside is, someone else
can fill your queue (expectation is that someone else is privileged). I think
it's right the way it is. The change to revert is very small.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] RLIM: remove unused queued_signals global accounting
Remove unused queued_signals global accounting.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torvalds@ppc970.osdl.org>
This removes the files orphaned by the earlier PC9800 removal
<icampbell@com.rmk.(none)>
[ARM PATCH] 1930/1: Allocate correct number of pseudo palette entries in pxafb
Patch from Ian Campbell
The pxafb driver incorrectly allocates 17 u32's for a 16 entry
pseudo palette.
<torvalds@ppc970.osdl.org>
Remove old stale header files that aren't referenced anywhere.
Noted by Alexey Dobriyan.
<icampbell@com.rmk.(none)>
[ARM PATCH] 1934/2: Consolidate code to set CKEN on PXA
Patch from Ian Campbell
I've seen comments several times that various PXA drivers
update CKEN in an unsafe manner. This patch consolidates
this code into a single function pxa_set_cken() and updates
all the in tree drivers to use it.
<axboe@suse.de>
[PATCH] cfq sysfs support
This makes the CFQ tunables available in sysfs, like AS and deadline.
Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<axboe@suse.de>
[PATCH] cfq allocation race
It's possible under unlucky circumstances for this race to trigger. I
described it with a comment in the code.
Signed-Off-By: Jens Axboe <axboe@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<axboe@suse.de>
[PATCH] cfq direct io alias problem
This is a fix for when we encounter an alias during insert. When that
happens we move the request to dispatch, but it may happen that this
request is also the ->last_merge hint. So we may attempt to merge with
this later, when it's either in progress or already freed. Rearrange the
logic a bit so we clear the merge hint there as well. It looks more
complex than it is, the only real code change is the addition of a
cfq_remove_merge_hints() in cfq_dispatch_sort().
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<stern@rowland.harvard.edu>
[PATCH] USB: dummy_hcd shouldn't reject SET-ADDRESS requests
This patch for the dummy_hcd driver prevents it from rejecting SET-ADDRESS
requests when the address is already set. The USB 2.0 spec states that if
a device is in the ADDRESS state, it should accept and start using the new
address. Behavior in the CONFIGURED state is undefined, but since
dummy_hcd doesn't keep track of the difference between the two states we
might as well accept the new address in any case.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<nico@org.rmk.(none)>
[ARM PATCH] 1932/1: fix comment about cache handling syscall
Patch from Nicolas Pitre
Let's make it coherent with what the actual code is doing and has
always done, even in 2.4. Nobody complained about this so let's
just fix the comment. The most natural usage pattern for this is
a base address and a size so it's more efficient to have an exclusive
end address anyway.
<tony@com.rmk.(none)>
[ARM PATCH] 1931/1: Allow device address translation in dma-mapping, version 3
Patch from Tony Lindgren
Allows translation of shared memory addresses for devices using
dma-mapping. In some cases the device DMA address is different
from the ARM DMA address, for example with some USB OHCI
controllers.
For more background information, please see the ARM Linux mailing
list thread "OHCI controller".
<greg@kroah.com>
USB: mark pwc driver broken again, as it still is :(
<rmk@flint.arm.linux.org.uk>
[ARM] Remove TBOX.
This platform is no longer maintained, and its maintainer says that
the hardware is obsolete and out of circulation.
<rmk@flint.arm.linux.org.uk>
[ARM] Remove NexusPCI/FTVPCI platform.
This platform is no longer maintained, and its maintainer says that
the hardware is obsolete and out of circulation.
<shemminger@osdl.org>
[BRIDGE]: Kill sysfs hotplug avoidance hacks.
The whole effort to avoid hotplug was misguided. If it is really a problem
(which it doesn't appear to be) then it can more easily be addressed by smarter
hotplug scripts in user space.
This patch gets rid of the whole subsystem hack for bridge kobjects.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<shemminger@osdl.org>
[PKT_SCHED]: Delay scheduler enqueue always succeeds.
If underlying fifo enqueue fails, return the status not 0.
Same patch should apply to both 2.6 and 2.4
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: i387 math-emu annotation
arch/i386/math-emu/* annotated.
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: rt_sigsuspend/sigaltstack sanitized
rt_sigsuspend() and sigaltstack() prototype changed; instead of
playing games with casts of argument address to struct pt_regs * and
digging through it, we declare them as
int <fn>(struct pt_regs regs)
instead.
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: vm86.c annotated
vm86.c annotated; vm86old(2) and vm86(2) switched to explicit
int <fn>(struct pt_regs regs)
format.
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: ixj annotated
drivers/telephony (aka ixj.c) annotated, IXJ_CADENCE split into kernel
and userland variants, ioctl structures got __user on pointers.
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: drivers/char/watchdog annotation
Trivial annotations in drivers/char/watchdog/*
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: drivers/input annotations
Trivial annotations in drivers/input
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: ide-tape annotation
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: ibmasmfs annotations
Trivial annotations + couple of missing (void) in prototypes
<rmk+lkml@arm.linux.org.uk>
[PATCH] Couple of sysfs patches
On Wed, Jun 16, 2004 at 05:51:03PM -0500, Dmitry Torokhov wrote:
> What about freeing the resources? Can it be put in platform_device_unregister
> or is it release handler task? I'd put it in unregister because when I call
> unregister I expect device be half-dead and release as much resources as it
> can.
Here's the updated patch - to be applied on top of the
platform_get_resource() patch sent previously.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<shemminger@osdl.org>
[PKT_SCHED]: Delay scheduler should retry if requeue fails.
If delay scheduler decides not to send the packet right away, it requeues
it. If the requeue fails, it should go and look again rather than waking
up prematurely.
Same patch should apply to both 2.6 and 2.4
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] crapectomy - last users of kernel_scsi_ioctl() gone
Last 3 users of kernel_scsi_ioctl() eliminated; two of them used to read
partition table by issuing a READ6 via ioctl (instead of just calling
scsi_bios_ptable() as every other ->biosparam() instance does).
The last one was doing a very quaint access to fields of scsi_device by
issuing SCSI_IOCLT_GET_LUN and then shuffling bits in the result. Down
with that insanity...
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: drivers/message/fusion annotations and fixes
Sigh... First of all, LSI folks have very quaint idea of existing
platforms and word sizes on those. Their definitions of U32 and S32
should really be reserved for posterity (preferably chiseled into the
rock they have between the ears), but kernel is the wrong place for
that. Fixed.
mptctl_do_mpt_command() was always called on userland pointers;
kernel/userland argument removed along with dead code, function
annotated, callers updated.
The rest is trivial annotations in mptctl.c and in its ioctl structures
- nothing fancy there.
<torvalds@ppc970.osdl.org>
sparse: fix up fusion/mptctl.c after merge
<davem@nuts.davemloft.net>
[PKT_SCHED]: Do not check netif_queue_stopped() in dequeue ops, races with driver.
Based upon a patch from Stephen Hemminger.
Signed-off-by: David S. Miller <davem@redhat.com>
<shemminger@osdl.org>
[PKT_SCHED]: Add loss option to network delay scheduler.
This enhances the network simulation scheduler to do simple random loss.
The loss parameter is a simple 32 bit value such that 0 means no loss, and
0xffffffff is always drop. I have a new version of the tc command which takes
care of conversion from percent to this value.
Same patch for 2.4 and 2.6
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<dlstevens@us.ibm.com>
[IPV6]: Handle user asking for any device in mcast calls.
<wli@holomorphy.com>
[IRDA]: Remove usage of isa_virt_to_bus()
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<yoshfuji@linux-ipv6.org>
[IPV6]: Fix autoconf description in ip-sysctl.txt.
<akpm@osdl.org>
[NET]: Fix eql.c failed dev_get_by_name() return value check.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<viro@www.linux.org.uk>
[PATCH] sparse: binfmt_aout annotation
<viro@www.linux.org.uk>
[PATCH] sparse: mwave annotation
<viro@www.linux.org.uk>
[PATCH] sparse: nfs partial annotation
<viro@www.linux.org.uk>
[PATCH] sparse: drivers/video partial annotation
misc annotation in drivers/video/* (nowhere near complete)
<viro@www.linux.org.uk>
[PATCH] sparse: drivers/video/kyro annotation
<viro@www.linux.org.uk>
[PATCH] sparse: drivers/video/matrox annotation
<viro@www.linux.org.uk>
[PATCH] sparse: udf cleanups
removed bogus externs from declarations in fs/udf/*
<viro@www.linux.org.uk>
[PATCH] sparse: applicom annotation
<viro@www.linux.org.uk>
[PATCH] sparse: amd64 bits
- added define of __x86_64__ to sparse arguments on amd64
- switched amd64 uaccess.h to __chk_user_ptr()
<viro@www.linux.org.uk>
[PATCH] sparse: ipmi annotation
<viro@www.linux.org.uk>
[PATCH] sparse: cyclades annotation
<viro@www.linux.org.uk>
[PATCH] sparse: synclinkmp annotation
<viro@www.linux.org.uk>
[PATCH] sparse: autofs annotation
<viro@www.linux.org.uk>
[PATCH] sparse: drivers/video/aty annotation
<viro@www.linux.org.uk>
[PATCH] sparse: drivers/video/sis annotation
<brking@us.ibm.com>
[PATCH] ipr abort hang fix
The following patch fixes a hang that occurs when an abort
is issued by the midlayer. The hang is the result of overriding
a field in the union of the ipr_cmd struct. It is fixed by moving
this pointer outside of the union, since it is not mutually exclusive
with the other fields in the union.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr only tcq cancel all
Some SCSI-IDE cdrom drives take up to 15 seconds to respond following
an abort being issued to them. This patch changes ipr to only send
a cancel all to a device as part of request sense processing when
the device is running tagged command queueing.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr bump version to 2.0.10
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<rddunlap@osdl.org>
[PATCH] sparse: kernel/module.c sparse fix
Add __user annotation for !CONFIG_MODULE_UNLOAD case.
From: Mika Kukkonen <mika@osdl.org>
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
<rddunlap@osdl.org>
[PATCH] sparse: lib/string.c sparse fix
A classic..
lib/string.c:165:19: warning: assignment expression in conditional
From: Mika Kukkonen <mika@osdl.org>
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
<stevef@smfhome1.smfdom>
Do not send junk in bcc area of oplock break SMB Lock request, and always let oplock break release
through even if requests are ahead of it waiting for responses to complete.
Signed-off-by: Steve French (sfrench@us.ibm.com)
<stevef@smfhome1.smfdom>
check better for free files on writepage retry
Signed-off-by: Steve French (sfrench@us.ibm.com)
<arun.sharma@intel.com>
[PATCH] ia64: fix ia32 partial-page map support for overlapping mmaps
- Handle the overlapping mmaps in the MAP_FIXED case
- Handle unmaps correctly i.e. call __ia32_delete_pp_range()
- There are now three clear entry points into the pp manipulation code
- ia32_set_pp
- ia32_unset_pp
- ia32_compare_pp
- Rename internal functions to __ia32_*pp_*
- Grab mmap_sem just once at the main entry point
Signed-off-by: Gordon Jin <gordon.jin@intel.com>
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<ashok.raj@intel.com>
[PATCH] ia64: move move_irq() from iosapic.c to irq.c
This patch moves move_irq() from ioaspic.c to irq.c to make this common
for ia64 subarches.
Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<eranian@hpl.hp.com>
[PATCH] ia64: perfmon stack consumption fix
This patch moves the pfm_ovfl_arg_t structure from the kernel stack
into the pfm_context_t structure. This minimizes kernel stack space
consumption.
Signed-off-by: Stephane Eranian <eranian@hpl.hp.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<yanmin.zhang@intel.com>
[PATCH] ia64: fix free_huge_page() call in hugetlb_prefault()
In base kernel 2.6.7, there is bug in function hugetlb_prefault(). The
call to free_huge_page() is incorrect and should be replaced with a call
to page_cache_release().
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<akpm@osdl.org>
[PATCH] mptctl.c build fix
drivers/message/fusion/mptctl.c:89:24: asm/compat.h: No such file or directory
Signed-off-by: Andrew Morton <akpm@osdl.org>
<mikulas@artax.karlin.mff.cuni.cz>
[PATCH] HPFS fixes for 2.6.7 kernel
This contains hpfs fixes from my source ported to 2.6.7 kernel:
updates:
- allocator fragments files less
- OS/2 Warp Server filesystem can be mounted read/only
- added reschedule points so that it doesn't hog CPU
bug fixes:
- filesystem error message when syncing or fsyncing deleted file (or when
system just writes it on its own)
- filesystem error on extremly fragmented files
- corrupted disk structures could possibly corrupt memory
<rmk@flint.arm.linux.org.uk>
[PCMCIA] Add Cirrus PD6729 PCMCIA bridge support.
Patch from Komuro, cleaned up by Russell King.
<akpm@osdl.org>
[NET]: Fix econet build bustage.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<yoshfuji@linux-ipv6.org>
[NET]: Fix some userland header bustage.
<davem@nuts.davemloft.net>
[IPV6]: Export necessary xfrm6_tunnel functions.
<rmk@flint.arm.linux.org.uk>
[PCMCIA] 02-validatemem
Move validate_mem() so we don't recurse. We call this function from
the DS_GET_FIRST_TUPLE and DS_VALIDATE_CIS calls, which are the the
first two functions which may be called by cardmgr or cardctl which
require CIS access.
<rmk@flint.arm.linux.org.uk>
[PCMCIA] 03-memwin
Eliminate win->base and win->size elements from window_t.
window_t contains struct pccard_mem_map, which contains a
copy of these (sys_start, sys_stop) in a slightly different
form.
<achirica@telefonica.net>
[wireless airo] Clean initialization of Mini-PCI cards even from suspend
<herbert@gondor.apana.org.au>
[PATCH] Re: linux-2.6.7 Equalizer Load-balancer. eql.c. local non-privileged DoS
Vitaly V. Bursov <vitalyvb@ukr.net> wrote:
>
> there are multiple vulns in drivers/net/eql.c
>
> if there is no such device, dev_get_by_name returns NULL and everything dies.
> Exploiting this is trivial.
Thanks for the report. This patch should fix them.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Cheers,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
===== drivers/net/eql.c 1.13 vs edited =====
<akpm@osdl.org>
[PATCH] H8/300: smc9194 driver
From: Yoshinori Sato <ysato@users.sourceforge.jp>
- H8/300 target support
- fixed irq support
- high address (>0xffff) i/o fix
Signed-off-by: Andrew Morton <akpm@osdl.org>
<shemminger@osdl.org>
[PATCH] convert sk fddi driver to ANSI C
Sparse does not handle K&R at all, and I think I saw Linus saying that
he has no intention of adding it to sparse while ago. So here is a blob
of patch to convert drivers/net/skfp/* from K&R to ANSI-C. Compile
tested with "make allmodconfig" on x86, as I obviously don't have the
HW.
Mika
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
<jeb.j.cramer@intel.com>
[PATCH] e1000 management reset fix
* Resetting the adapter blew away management settings. So we save the
important bits before performing a reset.
<fenlason@redhat.com>
[PATCH] sunhme patch
Without this patch, insmod-ing the sunhme module crashes on my fc2
box.
-- JF
<davem@redhat.com>
[PATCH] hamachi DMA
Let's get this thing not using bus_to_virt() anymore,
as follows.
Signed-off-by: David S. Miller <davem@redhat.com>
===== drivers/net/hamachi.c 1.35 vs edited =====
<brazilnut@us.ibm.com>
[PATCH] pcnet32: discard oversize rx packets
This patch will discard received frames that are larger than one buffer.
This has been tested on ia32 and ppc64 systems.
Please also apply to 2.4.7 (with offset of -3), tested ia32.
Signed-off by: brazilnut@us.ibm.com
<brazilnut@us.ibm.com>
[PATCH] pcnet32: recover after rx hang.
This patch fixes a receive hang that occasionally occurs after a Tx
FIFO underrun. The receive dma remains in a hung state sometimes. The
transmit operations continue to occur, but no receive activity.
This was reproduced on several ppc64 systems and the fix has been verified
there. The patch has been tested as well on an ia32 system, which did
not experience the hang because it did not have fifo underruns, which is
a preqrequisite for the hang. The memory barriers decreased the frequency
of occurrence. The final change to reset the chip instead of just stopping
it eliminated the last hangs.
Please also apply against 2.4.7 (with offset of -1), tested ia32.
Signed-off by: brazilnut@us.ibm.com
<brazilnut@us.ibm.com>
[PATCH] pcnet32: cleanup IRQ limitation.
Cleanup pcnet32 IRQ handling based on suggestions from Ralf Baechle
<ralf@linux-mips.org>, and Brian Murphy <brian@murphy.dk>
Tested by myself and Brian Murphy.
Please also apply to 2.4.27-pre6.
Signed-off-by: Don Fry <brazilnut@us.ibm.com>
<ryan@michonline.com>
[PATCH] orinoco.c rate limit lost information frame message
Rate limit a (apparently) harmless warning in orinoco.c
(My laptop remained connected with active X applications running over
ssh while this message was hitting every second, since I patched my
driver to include this the problem hasn't recurred.)
Signed-Off-By: Ryan Anderson <ryan@michonline.com>
<arjanv@redhat.com>
[PATCH] sk98lin pci id
<ralf@linux-mips.org>
[PATCH] Use netdev_priv in sgiseeq
The combined allocation of of receive and transmit rings and driver data
so far made the use of netdev_priv impossible. Split the allocation
and use netdev_priv to access the non-ring driver_private data.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
<ralf@linux-mips.org>
[PATCH] Reformat
Pure microcosmetic.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
<ralf@linux-mips.org>
[PATCH] Cosmetic cleanups to sb1250-mac.c
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
<ralf@linux-mips.org>
[PATCH] hdlcdrv needs to stop queueing
We better stop the queue in the close call.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
<yoshfuji@linux-ipv6.org>
[ECONET]: Fix some warnings.
<akpm@osdl.org>
[NET]: Fix warning in farsync WAN driver.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<acme@toy.kerneljanitors.org>
[NET] generalise tcp_add_data, skb_split and tcp_copy_to_page
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<stevef@steveft21.ltcsamba>
Do not kill cifsd thread until last smb session on tcp session is
SMBulogged off. Fixes umounting bug (pointed out by Nick Millington)
when multiple mounts with different userids are mounted to the same
server from the client.
Signed-off-by: Steve French (sfrench@us.ibm.com)
<arjanv@redhat.com>
[PATCH] final hosts.h usage removal
the patch below finishes off the removal of the obsolete hosts.h usage, and
now that the users are gone, it's safe to turn on the warning to
prevent accidental future use... Please apply
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] switch scsi core and sd to <scsi/*.h> headers
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<marcel@holtmann.org>
[Bluetooth] Fix connection creation error handling
This patch fixes the problem that ACL connections are removed from
the kernel connection hash when a hci_create_connection returns a
command status other than 0x00.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
<marcel@holtmann.org>
[Bluetooth] Fix config change for firmware loading
The switching between firmware loading and running state is done via
different configurations. To get this right the USB toggle and halted
bits must be reset to zero after it.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
<jejb@mulgrave.(none)>
ncr53c8xx updates
From: Matthew Wilcox <willy@debian.org>
- remove all of the PCI chips (8xx series) leaving only 720
- pull out stand alone initialisation code (driver becomes a chip only
driver for NCR Q720 and Zalon)
- remove most vestiges of PCI support (chip driver should be bus neutral)
- tidy up typedefs
- remove simulated intfly (may need putting back for 770)
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
Make ncr53c8xx respect clustering
From: Joel Soete <soete.joel@tiscali.be>
This patch makes the ncr driver capable of accepting segments which
are larger than the block size. It has been tested against IOMMU
merging on parisc.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<arjanv@redhat.com>
[PATCH] fix amd64 boot breakage
This fixes a bug that prevent my amd64 box from booting;
numa_default_policy was __init however it's called like this in
init/main.c:
free_initmem();
unlock_kernel();
system_state = SYSTEM_RUNNING;
numa_default_policy();
eg after free_initmem(). This resulted in it being reused/freed and that
gives a nasty oops.
<torvalds@ppc970.osdl.org>
Follow 2.4.x semantics for in-kernel signal sending.
<hirofumi@mail.parknet.co.jp>
[PATCH] FAT: don't use "utf8" charset and NLS_DEFAULT
Recently, some distributors have set "utf8" to NLS_DEFAULT, therefore,
FAT uses the "iocharset=utf8" as default. But, since "iocharset=utf8"
doesn't provide the function (lower <-> upper conversion) which FAT
needs, so FAT can't provide suitable behavior.
This patch does:
- doesn't recognize "utf8" as "iocharset"
- doesn't use NLS_DEFAULT as default "iocharset"
- instead of NLS_DEFAULT, adds FAT_DEFAULT_CODEPAGE and
FAT_DEFAULT_IOCHARSET
NOTE: the following looks like buggy, so it's not recommended
"codepage=437,iocharset=iso8859-1,utf8"
however, some utf8 file name can handle. (in this case, it uses the
table of iso8859-1 for lower <-> upper conversion)
Sign-off-by: Jesse Barnes <jbarnes@engr.sgi.com>
Sign-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Sign-off-by: Linus Torvalds <torvalds@osdl.org>
<geert@linux-m68k.org>
[PATCH] m68k: IFPSP060 update
IFPSP060: Make sure that the destination address of a misaligned cas access is
properly mapped in, so the kernel won't oops in the emulation handler (from
Roman Zippel).
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<geert@linux-m68k.org>
[PATCH] m68k: handle new gcc's
M68k: Fixes for when compiling with modern gcc (from Roman Zippel):
- Avoid warning 'use of memory input without lvalue in asm operand 0 is
deprecated' of newer gcc
- Replace some '%/' with offical '%%' to escape a '%'
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<geert@linux-m68k.org>
[PATCH] m68k: new gcc optimizations
M68k compiler updates from Roman Zippel:
- Fix various lvalue warnings from newer gcc
- Remove unnecessary volatile declarations
- Change some constraints from "a" to "m" to generate slightly better code
- Use "o" constraint for bitfield instructions
- Use generic bitmap functions for some of the ext2/minix bitmap functions
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<geert@linux-m68k.org>
[PATCH] m68k: bus error handling
M68k: Allow to catch a bus error via the exception mechanism (from Roman
Zippel)
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<geert@linux-m68k.org>
[PATCH] m68k: use set_page_count()
M68k: From 2.6.7-rc1 on, it's no longer allowed to access page->count directly
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<geert@linux-m68k.org>
[PATCH] affs remount fixes
AFFS: Fix oops on write after remount (from Roman Zippel):
- Allocate/free bitmap as necessary
- Remove last uses of SF_READONLY
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<geert@linux-m68k.org>
[PATCH] m68k: Mac Sonic Ethernet
Mac Sonic Ethernet: Kill duplicate `MODULE_LICENSE("GPL");' (already defined in
included sonic.c) which causes a compile failure
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<geert@linux-m68k.org>
[PATCH] m68k: sparse infrastructure
M68k: Make sparse work
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<geert@linux-m68k.org>
[PATCH] m68k: Mac IOP fix
Mac IOP: Fix copy-and-paste bug (found by OPERA, reported by Zhenmin Li,
confirmed by Brad Boyer)
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<geert@linux-m68k.org>
[PATCH] m68k: atomic op fixups
M68k: Add missing atomic operations (from Roman Zippel and me) and replace
`__inline__' by `inline' while we're at it.
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<geert@linux-m68k.org>
[PATCH] m68k: I/O abstraction updates
M68k I/O abstraction updates:
- Make I/O ports and addresses `unsigned long'
- Add casts to make operations warning-compatible with other archs
- Add {in,out}[wl]_p() and {in,out}l(), which are needed for some drivers
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davem@nuts.davemloft.net>
[SPARC64]: Check _TIF_SYSCALL_SUCCESS before syscall return value.
We might have to clear the flag, and if we do not
then subsequent syscalls can get confused.
Bug easily triggered by suspending emacs in a pty
and then resuming, select() returns due to a pending
signal but because _TIF_SYSCALL_SUCCESS is erroneously
set by a previous syscall -514 ends up slipping into
userspace. Oops.
<rmk@flint.arm.linux.org.uk>
[PCMCIA] 04-memres
Make find_mem_region() return a struct resource. We preserve
pccard_mem_map's sys_start and sys_stop elements for the moment
since socket drivers are relying on this information for setting
up their windows.
<rmk@flint.arm.linux.org.uk>
[PCMCIA] 05-nonbusy
When allocating memory and IO resources, do not mark them busy.
This allows drivers themselves to claim and mark the regions busy,
as they are supposed to.
<hadi@zynx.com>
[NET]: Fix module refcounting of TC actions.
<acme@conectiva.com.br>
[NET] move skb_can_coalesce to skbuff.h
This one also removes the duplicate can_coalesce in tcp.c and makes it
use skb_can_coalesce.
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<acme@conectiva.com.br>
[NET] move tcp_memory_free to sk_stream_memory_free
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<akepner@sgi.com>
[NET]: Lockless loopback patch (version 2).
<akpm@osdl.org>
[SPARC64]: bug.h needs compiler.h
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[PATCH] ppc64 CONFIG_ALTIVEC=n build fix
With CONFIG_ALTIVEC=n, flush_altivec_to_thread() has no implementation.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] ppc64: eeh.h warning-fix
In file included from include/asm/io.h:365,
from drivers/video/kyro/STG4000Reg.h:23,
from drivers/video/kyro/STG4000Ramdac.c:16:
include/asm/eeh.h:58: warning: `struct device_node' declared inside parameter list
include/asm/eeh.h:58: warning: its scope is only this definition or declaration, which is probably not what you want
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] export DMI check functions
This patch creates and exports 2 functions which can be used by the rest of
kernel code to perform DMI data checks:
- dmi_check_system() function checks system DMI data against given blacklist
table and on each match runs corresponding callback function;
- dmi_get_system_info() function returns DMI data value. Useful for people
wanting more complex DMI data check than simple string match.
Also filling unused match entries with NO_MATCH made optional, but existing
NO_MATCH occurences are left intact, so people are free to continue dmi_scan.c
patching without massive reject problems.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] use new DMI API for HP Pavilion
Example code for the new DMI APU - port HP Pavilion irq workaround to new
DMI probing.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<daniel.ritz@gmx.ch>
[PATCH] pcmcia: enable read prefetch on o2micro bridges to fix HDSP
enable read prefetching on O2micro bridges. It fixes the problems
seen with the RME Hammerfall DSP.
Thanks to Eric Still from O2micro for the input.
Cc: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<dhowells@redhat.com>
[PATCH] Permit inode & dentry hash tables to be allocated > MAX_ORDER size
Here's a patch to allocate memory for big system hash tables with the
bootmem allocator rather than with main page allocator.
It is needed for three reasons:
(1) So that the size can be bigger than MAX_ORDER. IBM have done some
testing on their big PPC64 systems (64GB of RAM) with linux-2.4 and found
that they get better performance if the sizes of the inode cache hash,
dentry cache hash, buffer head hash and page cache hash are increased
beyond MAX_ORDER (order 11).
Now the main allocator can't allocate anything larger than MAX_ORDER, but
the bootmem allocator can.
In 2.6 it appears that only the inode and dentry hashes remain of those
four, but there are other hash tables that could use this service.
(2) Changing MAX_ORDER appears to have a number of effects beyond just
limiting the maximum size that can be allocated in one go.
(3) Should someone want a hash table in which each bucket isn't a power of
two in size, memory will be wasted as the chunk of memory allocated will
be a power of two in size (to hold a power of two number of buckets).
On the other hand, using the bootmem allocator means the allocation
will only take up sufficient pages to hold it, rather than the next power
of two up.
Admittedly, this point doesn't apply to the dentry and inode hashes,
but it might to another hash table that might want to use this service.
I've coelesced the meat of the inode and dentry allocation routines into
one such routine in mm/page_alloc.c that the the respective initialisation
functions now call before mem_init() is called.
This routine gets it's approximation of memory size by counting up the
ZONE_NORMAL and ZONE_DMA pages (and ZONE_HIGHMEM if requested) in all the
nodes passed to the main allocator by paging_init() (or wherever the arch
does it). It does not use max_low_pfn as that doesn't seem to be available
on all archs, and it doesn't use num_physpages since that includes highmem
pages not available to the kernel for allocating data structures upon -
which may not be appropriate when calculating hash table size.
On the off chance that the size of each hash bucket may not be exactly a
power of two, the routine will only allocate as many pages as is necessary
to ensure that the number of buckets is exactly a power of two, rather than
allocating the smallest power-of-two sized chunk of memory that will hold
the same array of buckets.
The maximum size of any single hash table is given by
MAX_SYS_HASH_TABLE_ORDER, as is now defined in linux/mmzone.h.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<cesarb@nitnet.com.br>
[PATCH] O_NOATIME support
This patch adds support for the O_NOATIME open flag (GNU extension):
int O_NOATIME Macro
If this bit is set, read will not update the access time of the file.
See File Times. This is used by programs that do backups, so that
backing a file up does not count as reading it. Only the owner of the
file or the superuser may use this bit.
It is useful if you want to do something with the file atime (for instance,
moving files that have not been accessed in a while to somewhere else, or
something like Debian's popularity-contest) but you also want to read all
files periodically (for instance, tripwire or debsums).
Currently, the program that reads all files periodically has to use utimes,
which can race with the atime update:
A B
open
fstat
read
open
read
close
close
utimes
And the file still has the old atime, instead of the new one from when B
did the read from it. This problem does not happen if A uses O_NOATIME
instead of utimes to preserve the atime.
This patch adds the O_NOATIME constant for all architectures, but it would
also be possible to add it one architecture at a time by defining it to 0
when not defined in asm-*.
Based on patch by Marek Michalkiewicz <marekm@i17linuxb.ists.pwr.wroc.pl> at
http://www.uwsg.iu.edu/hypermail/linux/kernel/9811.2/0118.html
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulkf@microgate.com>
[PATCH] ppp_synctty.c receive/write_wakeup fix
Allow receive and write_wakeup callbacks to be called at hard interrupt
context and/or with interrupts disabled (removes softirq warning).
This mirrors changes by Paul Mackerras to ppp_async.c for the same purpose.
Patch has been previously posted for comments and has been tested with
success by multiple persons.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] airo.c broke
But Al fixed it again.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<shaggy@austin.ibm.com>
[PATCH] jfs build fix
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] swapoff: activate pages
People like to use swapoff/swapon as a way of restoring their VM to a
predictable "preconditional" state.
Problem is, swapoff leaves mapped anon/pagecache pages on the inactive list,
so they immediately get swapped out again when swapspace becomes available.
Let's move these pages onto the active list to the VM has to again decide
whether to swap them out.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mark@alpha.dyndns.org>
[PATCH] Add ovcamchip driver
This patch adds a new driver for the OmniVision OV6xx0 and OV7xx0 series of
CMOS image sensors. It is currently used by the w9968cf USB webcam driver,
which is already in mainline 2.6. Up until now it had to be compiled
outside the kernel tree, which is clearly suboptimal.
It is also used by version 2 of the ov511 USB webcam driver, which will be
merged in the near future. That will reduce some code duplication, since
the existing ov511 has much of this code built-in.
This was previously submitted to Linux-USB-Devel, and I have fixed the
concerns that came up at that time.
Developer's Certificate of Origin 1.0
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or
(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or
(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.
Signed-off-by: Mark McClelland <mark@alpha.dyndns.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] Uninline machine_specific_memory_setup()
Cleanup arch/i386/kernel/setup.c a little bit by:
* un-inlining machine_specific_memory_setup() (it's implementations are
pretty big to be inlined anyway)
* remove setup_memory_region() by moving the code inside setup_arch()
I would also recommend BK-renaming all four files
(include/asm-i386/*/setup_arch_post.h) to ".c" and moving them into
arch/i386/*/, but that obviously is not needed in anyway. But IMHO they
are clearly ".c" files, not ".h" files.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<dcn@sgi.com>
[PATCH] add wait_event_interruptible_exclusive() macro
This patch defines a macro that does exactly what
wait_event_interruptible() does except that it adds the current task to the
wait queue as an exclusive task (i.e., sets the WQ_FLAG_EXCLUSIVE flag)
rather than as a non-exclusive task as wait_event_interruptible() does.
This allows one to do a wake_up_nr() to wake up a specific number of tasks.
I'm in the process of submitting a patch to linux-ia64 that requires this
capability. (Its subject line is "[PATCH 3/4] SGI Altix cross partition
functionality".)
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<axboe@suse.de>
[PATCH] iommu max segment size
This patch is from James, I've changed it slightly only.
The problem is that some IOMMU implementations have a maximum limit to the
size of the number of contiguously mappable pages (admittedly, this limit
is mostly in the resource management algorithms rather than the IOMMUs
themselves).
This patch adds this concept to the bio layer via the parameter
BIO_VMERGE_MAX_SIZE
which architectures can define in asm/io.h (if undefined, we assume it to
be infinite, which is current behaviour).
While adding this, I noticed several places where bio was making incorrect
assumptions about virtual mergeability (none of which was a bug: bio was
overestimating rather than underestimating).
- The worst offender was bio_add_page(), which seemed never to check for
virtual mergeability
- I also fixed blk_hw_contig_segments() not to check the QUEUE_CLUSTER
flag, and not to check the phys segment boundary.
In order to track the hw segment size across bios, I had to introduce two
extra bio parameters: bi_hw_front_size and bi_hw_back_size which store the
sizes of the front and back hw contiguous segments (and which will be equal
if there's only one hw segment). When the bio is merged into a request,
these fields are updated with the total hw contig size so they can always
be used to assess if the merger would violate the BIO_VMERGE_MAX_SIZE
parameter.
Signed-Off-By: Jens Axboe <axboe@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: v4l2 API updates
This patch has some minor updates to v4l2 API:
* A new pixel format (V4L2_PIX_FMT_SBGGR8).
* Adds some #defines for tv norms for convenience.
* Allow to specify the video source to capture from on a per-frame basis.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: update video-buf for per-frame input switching.
This patch updates the video-buf module to support the per-frame input
switching added by the v4l2 API patch.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: video-buf magic numbers
This patch adds some magic IDs and checks for them to the data structs of the
video-buf module.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: video-buf fixes.
This patch has some minor bugfixes for the video-buf module.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: msp3400 cleanup.
This patch has some cleanups for the msp3400 module: Balance is used directly
now instead of maintaining the state as left/right volume and calculate the
balance from that. The msp3400 did that only for historical reasons and it
isn't needed any more ...
Credits for that go to Perry Gilfillan.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: ir-common update
Some minor changes for the ir-common module: Update for the RC5 keytable and
increase the IR_KEYTAB_SIZE #define.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: tuner + tda9887 updates
This is a big update for the tuner and tda9887 modules which are used for TV
card tuning.
The tda9887 module is basically completely rewritten and understands all the
config bits now instead of having just some fixed config presets. Some of
these config bits can be changed by insmod options now.
The other big change is that both modules allow to use the V4L2 API for
inter-module communication (i.e. when bttv/saa7134/... pass through the
tuning ioctls to the modules). That allows to specify the TV norm more
precisely (not just PAL but PAL-I, PAL-BG, ...), which is needed in some cases
to make TV audio work correctly. Using the old v4l1 API is still possible so
this shouldn't break any users of these two modules.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: bttv driver update
This is a update of the bttv driver. Changes:
* some card-specific fixes + new cards.
* separate buffer switching for video frames and vbi data, that should make
bttv less sensitive to high irq latencies.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: IR input driver update.
This patch updates the ir-kbd-gpio and ir-kbd-i2c drivers. Nothing major,
just some keytable fixes and support for more hardware.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] saa7134 driver update
This is an update for the saa7134 driver. Changes:
* add support for more TV cards, as usual ;)
* add support for image cropping.
* use v4l2 API to talk to the tuner chips (thus it depends on the
tuner/tda9887 patch).
* fixes for the audio carrier scan.
* make transport stream packet size configurable.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: cx88 driver update
This is a update for the cx88 tv card driver. Changes:
* finally make it build with gcc 2.95 ;)
* add new tv cards.
* plenty of fixes for the TV sound code.
* use v4l2 API for communication with tuner + tda9887
* misc other minor stuff.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: radio-zoltrix fix.
From: Paul Focke <paul.focke@pandora.be>
I recently upgraded from 2.4 to kernel 2.6 & noticed that the zoltrix radio
driver was not working. Seems like a little typo. I tested this on my system
and it's working fine now. I doubt there are any other linux users in the
world who still use this card ;-)
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] fix isdn to not assume mem*io return values
These are defined like the normal ISO C mem* routines although x86 happens
to return void by accident. Fix isdn to not assume a return value.
Sent to the isdn list, but as usual I didn't get any reply.
The patch is from the Debian kernel package and really old.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jbarnes@engr.sgi.com>
[PATCH] export sys_ioctl to modules
Small patch to export sys_ioctl if CONFIG_COMPAT is set. This allows
platforms to implement 32 bit compatibility ioctl handlers in modules.
Submitted-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hugh@veritas.com>
[PATCH] mprotect propagate anon_vma
When mprotect shifts the boundary between vmas (merging the reprotected
area into the vma before or the vma after), make sure that the expanding
vma has anon_vma if the shrinking vma had, to cover anon pages imported.
Thanks to Andrea for alerting us to this oversight.
Cc: <andrea@suse.de>
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<fabian.frederick@skynet.be>
[PATCH] sparse annotation for sys_quotactl()
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mason@suse.com>
[PATCH] fix possible stack corruption during reiserfs_file_write
With preallocation turned on, reiserfs_allocate_blocks_for_region wasn't
sending a large enough array to hold all the blocks it was asking the block
allocator to find. This can result in stack corruption.
The fix is to kmalloc an array to hold the blocks, making sure to allocate
something large enough.
There was also a recent optimization to force the allocator to find a free
region large enough to hold the entire preallocation size. This was
sometimes causing more blocks to be allocated then had been requested,
which would also overflow the array. Something more elegant is required
here, until then just disable the optimization.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ak@suse.de>
[PATCH] NUMA API updates
This patch three issues in NUMA API
- When 1 was passed to set_mempolicy or mbind as maxnodes argument
get_nodes could corrupt the stack and cause a crash. Fix that.
- Remove the restriction to do interleaving only for order 0. Together
with the patch that went in previously to use interleaving policy at boot
time this should give back the original behaviour of distributing the big
hash tables.
- Fix some bad white space in comments
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<juhl-lkml@dif.dk>
[PATCH] isp16 check_region() removal
Convert check_region to request_region and clean up some parentheses in
return statements for drivers/cdrom/isp16.c.
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<axboe@suse.de>
[PATCH] deadline I/O scheduler documentation
Document the deadline scheduler and its tunables.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<acme@conectiva.com.br>
[NET] generalise wait_for_tcp_connect
This will be used by the poor cousins, look, for instance, at
x25_wait_for_connection_establishment :-)
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<acme@conectiva.com.br>
[NET] introduce sk_stream_wait_close, from tcp code
Will be used by the poor cousins.
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<acme@conectiva.com.br>
[NET] generalise wait_for_tcp_memory
Renaming it to sk_stream_wait_memory
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<akpm@osdl.org>
[PATCH] move as documentation
Move the anticipatory scheduler documentation into Documentation/block.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<emoenke@gwdg.de>
[PATCH] CREDITS update
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjoern@j3e.de>
[PATCH] NLS support for ASCII
I created an ASCII NSL module manually based on the ISO-8859-1 NLS module.
This might be of use for people who do not want any charset conversion to
take place. fs modules like vfat for example then could be forced to
display any non-ASCII character in the uni_xlate escaped form.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ralf@linux-mips.org>
[PATCH] mips: remove old junk
Remove old, unused initialization stuff.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ralf@linux-mips.org>
[PATCH] DS1286 cleanups
Remove #ifdef'ed hooks for the DS1286 driver through the kernel. While
cleaning make it work as a module also and add back the core of the driver
got lost when drivers/sgi/ was shredded.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ralf@linux-mips.org>
[PATCH] Cobalt LCD Driver update
Mostly reformatting to get the sometimes random formatting style of the LCD
driver to something Linux compliant. Use module_init/exit for module
initialization and cleanup.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ralf@linux-mips.org>
[PATCH] Add M48T35 RTC driver
Add M48T35 RTC driver for the SGI IP27 aka Origin 200, Origin 2000 and
Onyx 2.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] jfs warning fix
On ppc64, s64 is `long'.
In file included from fs/jfs/jfs_xtree.h:25,
from fs/jfs/jfs_incore.h:26,
from fs/jfs/super.c:29:
fs/jfs/jfs_btree.h: In function `BT_STACK_DUMP':
fs/jfs/jfs_btree.h:151: warning: long long unsigned int format, s64 arg (arg 2)
Cc: Dave Kleikamp <shaggy@austin.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] lindent rwsem
Lindent rwsem.c and rwsem-spinlock.c and fix a few things by hand. Also
added a couple of comments for the memory barriers. Added the __sched
annotation that was left out of rwsem-spinlock.c.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<juhl-lkml@dif.dk>
[PATCH] Fix warning in tdfxfb.c
drivers/video/tdfxfb.c:1104: warning: initialization discards qualifiers from pointer target type
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<geert@linux-m68k.org>
[PATCH] Fix idr.h comment
Fix path in <linux/idr.h> header file.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sam@ravnborg.org>
[PATCH] wanxl firware build fix
allmodconfig and allyesconfig are currently failing because they select
wanxl firmware rebuild, and that requires an m68k assembler toolchain.
Add a new generic option to the "Generic Driver Options" menu. The option
is defaul equals y and prevents us from building firmware unless really
needed.
Firmware is usually provided in separate filer '_shipped', and there is no
need to rebuild them unless strictly required. First user is WanXL - which
otherwise required a m68k tool-set to compile.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sam@ravnborg.org>
[PATCH] Avoid rebuild of IKCFG when using O=
When using a separate output directory the in-kernel config wiere rebuild
each time the kernel was compiled. Fix this by specifying correct path to
Makefile in the prerequisite to the ikconfig.h file.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sam@ravnborg.org>
[PATCH] kbuild: add deb-pkg target
To prepare kbuild for more kernel packaging formats move all packaging support
to scripts/package.
In top-level Makefile introduce generic support for all package formats using
target names *-pkg. Included the old rpm target for backward compatibility.
A new variable KBUILD_IMAGE is used to specify what kernel image will be part
of the final package, and is to be set by the arch specific makefile.
KBUILD_IMAGE may be overridden from command line or environment. KBUILD_IMAGE
will see wider usage later, mainly when installing kernel images.
Introducing KBUILD_IMAGE allowed arch specific details to be deleted from the
mkspec and builddeb scripts.
While in the process added the deb packet format. Script is From: Wichert
Akkerman <wichert@wiggy.net>
To create a RPM packet use 'make rpm-pkg'.
To create a deb packet use 'make deb-pkg'.
Both targets are included in 'make help'
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<axboe@suse.de>
[PATCH] only clear ->last_merge when appropriate
Make sure we only clear q->last_merge hint, if it matches the request
currently passed in.
Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rmk@flint.arm.linux.org.uk>
[PCMCIA] 06-ide
IDE releases the PCMCIA resource to work around the need to have
two conflicting subsystems (IDE and PCMCIA) claim resources.
Since PCMCIA no longer marks its resouces busy, this work around
must be removed.
<aia21@cantab.net>
NTFS: Use atomic kmap instead of kmap() in fs/ntfs/aops.c::ntfs_read{page,_block}().
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
<aia21@cantab.net>
NTFS: Use case sensitive attribute lookups instead of case insensitive ones.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
<aia21@cantab.net>
NTFS: Lock all page cache pages belonging to mst protected attributes while
accessing them to ensure we never see corrupt data while the page is
under writeout.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
<aia21@cantab.net>
NTFS: Add framework for generic ntfs collation (fs/ntfs/collation.[hc]).
We have ntfs_is_collation_rule_supported() to check if the collation
rule you want to use is supported and ntfs_collation() which actually
collates two data items. We currently only support COLLATION_BINARY
and COLLATION_NTOFS_ULONG but support for other collation rules will
be added as the need arises.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
<aia21@cantab.net>
NTFS: Add a new type, ntfs_index_context, to allow retrieval of an index
entry using the corresponding index key. To get an index context,
use ntfs_index_ctx_get() and to release it, use ntfs_index_ctx_put().
This also adds a new slab cache for the index contexts. To lookup a
key in an index inode, use ntfs_index_lookup(). After modifying an
index entry, call ntfs_index_entry_flush_dcache_page() followed by
ntfs_index_entry_mark_dirty() to ensure the changes are written out
to disk. For details see fs/ntfs/index.[hc]. Note, at present, if
an index entry is in the index allocation attribute rather than the
index root attribute it will not be written out (you will get a
warning message about discarded changes instead).
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
<dwmw2@shinybook.infradead.org>
Add support for MPC8560 CPU and WindRiver PowerQUICC III SBC8560
Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
<aia21@cantab.net>
NTFS: Load the quota file ($Quota) and check if quota tracking is enabled
and if so, mark the quotas out of date. This causes windows to
rescan the volume on boot and update all quota entries.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
<dwmw2@shinybook.infradead.org>
Update CPM UART driver according to feedback from Dan Malek.
Patch from Pantelis Antoniou <panto@intracom.gr>
<hch@lst.de>
[PATCH] avoiding obsolete scsi APIs in dc395
replace obsolete typedefs and scsi_to_pci_dma_dir, use proper includes
and re-order includes correctly.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<acme@conectiva.com.br>
[NET] generalise tcp_set_owner_r and tcp_rfree
Will be used by the poor cousins
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<akm@osdl.org>
[NET]: Fix dev_queue_xmit build with older gcc.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[NET]: Loopback, allocate per-cpu stats statically and fix cpu refcounting.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<trini@kernel.crashing.org>
[PPC32] Add SysRq-G support to our KGDB stub.
From David Woodhouse <dwmw2@infradead.org>.
<jgarzik@pobox.com>
Rename 'carmel' block driver to 'sx8'.
Requested by Promise. The hardware isn't widely deployed yet,
with almost all users being early evaluators, so this should be OK.
<len.brown@intel.com>
[ACPI] fix double timer interrupt mapping (Hans-Frieder Vogt)
caused by errant fix for OSDL 2835
<herbert@gondor.apana.org.au>
[NET]: In sungem driver, keep track of rx buffer alloc size based upon MTU.
<hch@lst.de>
[PATCH] wd7000 updates
Avoid old APIs and fix a bad bug were the irq handler argument was
derefenced as struct Scsi_Host * instead of Adpater * which made the
driver instantly crash on SMP.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<kaber@trash.net>
[NETFILTER]: Fix non-existant config option for IP_NF_ASSERT, fix some broken assertions
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<kaber@trash.net>
[NETFILTER]: complain about brokeness on SMP for pid, sid and command matching in ipt_owner
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<kaber@trash.net>
[NETFILTER]: Change permissions of /proc/net/ip_conntrack to 0440
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<kaber@trash.net>
[NETFILTER]: skip internal targets in iptables proc listing
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<hch@lst.de>
[PATCH] wd33c93 update
avoid obsolete APIs
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<kaber@trash.net>
[NETFILTER]: Fix inverted matching in ipt_helper
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<kaber@trash.net>
[NETFILTER]: 'any' matching in ipt_helper
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<kaber@trash.net>
[NETFILTER]: Don't reroute on nfmark change in mangle table when routing by nfmark is not enabled
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<kaber@trash.net>
[NETFILTER]: Fix expectation eviction order
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<kaber@trash.net>
[NETFILTER]: Fix offset calculation in amanda conntrack helper
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<kaber@trash.net>
[NETFILTER]: Relax hook check in ipt_CLASSIFY
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<kaber@trash.net>
[NETFILTER]: Add new function 'nf_reset' to reset netfilter related skb-fields
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<kaber@trash.net>
[NETFILTER]: Add addrtype match
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<kaber@trash.net>
[NETFILTER]: Add realm match
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<kaber@trash.net>
[NETFILTER]: ip_table_raw C99 initialization
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<hch@lst.de>
[PATCH] avoid obsolete APIs in sr
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] avoid obsolete APIs in fdomain
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] avoid obsolete APIs in atp870u
+ minor cleanups
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<markh@osdl.org>
[PATCH] aacraid 32bit app ioctl compat patch (Updated)
Allows 32 bit apps to use ioctls in a 64 bit kernel.
Signed-off-by Mark Haverkamp <markh@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hadi@zynx.com>
[PKT_SCHED]: C99'ify act_police_ops.
<greg@kroah.com>
merge fixups.
<g.liakhovetski@gmx.de>
[PATCH] tmscsim: init / exit cleanup
On Sun, 23 May 2004, Christoph Hellwig wrote:
> these leaks. Maybe also merge dc390_init and dc390_init_one?
>
> Similarly I think DC390_release should be merged into dc390_remove_one.
Attached. Also fixed some __init / __devinit and __exit / __devexit
attributes. Although, would be good to have something like
#ifdef CONFIG_HOTPLUG_PCI
#define __pcidevinit
#define __pcidevinitdata
#define __pcidevexit
#define __pcidevexitdata
#else
#define __pcidevinit __init
#define __pcidevinitdata __initdata
#define __pcidevexit __exit
#define __pcidevexitdata __exitdata
#endif
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<len.brown@intel.com>
[ACPI] re-factor previous mpparse IRQ override fix (Linus Torvalds)
Reflect that only the dstirq depends on the dstapic.
<g.liakhovetski@gmx.de>
[PATCH] tmscsim: host_lock use in LLD
While reviewing tmscsim, I noticed something, I didn't quite like /
understand. The driver takes the host_lock (with irqsave) at the entry to
the ISR, and releases it at the exit. And inside the ISR there are
potentially long busy-waits... Like
int ctr = 6000000; /* only try for about a second */
while( --ctr && !((dstate = DC390_read8 (DMA_Status)) &
DMA_XFER_DONE) && pSRB->SGToBeXferLen );
The attached patch is attempting to fix those places. Not sure if this is
a proper fix though. In my understanding, after looking through the code,
the host_lock is used to protect host-specific data and host-registers.
The ->queuecommand is already called with it help, so, one just,
basically, have to protect other contexts - interrupt, timer,... So, looks
mostly right.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<acme@conectiva.com.br>
[NET] generalise tcp_error, renaming it to sk_stream_error
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<viro@www.linux.org.uk>
[PATCH] ibmtr missing include
<viro@www.linux.org.uk>
[PATCH] sparse: ncpfs/ioctl.c annotation
<viro@www.linux.org.uk>
[PATCH] sparse: zlib stray extern removal
<viro@www.linux.org.uk>
[PATCH] sparse: efivars.c initializer fix
<viro@www.linux.org.uk>
[PATCH] sparse: drivers/net/wan annotation
<viro@www.linux.org.uk>
[PATCH] sparse: raw1394 annotation
<viro@www.linux.org.uk>
[PATCH] sparse: sock_fprog sanitized
sock_fprog instances that had kernel pointer in ->filter (both of them -
in ppp_generic and isdn_ppp) replaced with explicit pairs len + kernel
pointer. Copying of userland sock_fprog (with its __user ->filter)
cleaned up and sanitized.
Trivial annotation done in the rest of ->ioctl() in ppp_generic and
isdn_ppp.
<viro@www.linux.org.uk>
[PATCH] sparse: quota annotation
<viro@www.linux.org.uk>
[PATCH] sparse: hd.c annotation
<viro@www.linux.org.uk>
[PATCH] sparse: the rest of ieee1394 annotation
<acme@conectiva.com.br>
[NET] generalise tcp_free_skb, renaming it to sk_stream_free_skb
Will be used by the poor cousins
Signed-of-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<bunk@fs.tum.de>
[PATCH] 2.6.7-mm1: drivers/scsi/hosts.h -> scsi/scsi_host.h
On Sun, Jun 20, 2004 at 05:46:32PM -0700, Andrew Morton wrote:
>...
> All 226 patches:
>...
> bk-libata.patch
>...
drivers/scsi/hosts.h is obsolete, use scsi/scsi_host.h.
Please apply
Adrian
<acme@conectiva.com.br>
[NET] generalise tcp_moderate_sndbuf
Renaming it to sk_stream_moderate_sndbuf, further patches will move
all the tcp memory pressure handling support into net/core/stream.c
to make them usable by the poor cousins, starting with LLC.
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<jgarzik@pobox.com>
[libata] move some code around
Split ata_eng_timeout into the main part (ata_qc_timeout)
and the part called by the SCSI layer (ata_eng_timeout).
Zero behavior changes.
<torvalds@ppc970.osdl.org>
Fix up permissions of some files that were not readable
by "other". The normal permissions for the kernel tree
should be -rw-r--r--.
<jgarzik@pobox.com>
[libata] fix build error, minor cleanups
<jgarzik@pobox.com>
[libata ata_piix] combined mode bug fix; improved ICH6 support
<acme@conectiva.com.br>
[NET] move send_head from tcp private area to struct sock
The poor cousins also need this, LLC will be the first to use it.
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<aia21@cantab.net>
NTFS: Forgot the set_page_writeback()/end_page_writeback() in the mst
protected writepage case.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
<rmk@flint.arm.linux.org.uk>
[ARM] Move cpu_switch_mm() and cpu_get_pgd() to asm/proc-fns.h
<andrew.vasquez@qlogic.com>
[PATCH] [1/18] qla2xxx: Add wmb() to critical paths
Add memory barriers to ensure that all load operations have
completed before the (MMIO) write to the ISP's registers.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] [2/18] qla2xxx: Correct residual counts
Problem reported/corrected by Tony Battersby [tonyb@cybernetics.com]:
o The qla2xxx driver calculates data transfer residuals
for some but not all circumstances. The patch below
adds data transfer residual calculations for the
remaining cases.
o Interrogate the proper cmnd[] array when determining
the transfer direction.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] qla2xxx: remove unnecessary command direction determination
On Tuesday, June 22, 2004 12:07 AM, Arjan van de Ven wrote:
> On Tue, 2004-06-22 at 07:49, Andrew Vasquez wrote:
>
> > diff -Nru a/drivers/scsi/qla2xxx/qla_iocb.c
> b/drivers/scsi/qla2xxx/qla_iocb.c
> > --- a/drivers/scsi/qla2xxx/qla_iocb.c 2004-06-21 15:36:37 -07:00
> > +++ b/drivers/scsi/qla2xxx/qla_iocb.c 2004-06-21 15:36:37 -07:00 @@
> > -43,7 +43,7 @@ else if (cmd->sc_data_direction ==
> > DMA_FROM_DEVICE) cflags = CF_READ; else {
> > - switch (cmd->data_cmnd[0]) {
> > + switch (cmd->cmnd[0]) {
> > case WRITE_6:
> > case WRITE_10:
> > case WRITE_12:
>
> this sounds wrong.
>
Yes, it is _wrong_! This code is baggage left behind from earlier
drivers when we were 'asked' to work around certain applications'
inability to properly construct commands.
> Is there any reason qlogic drivers can't use/trust the midlayer
> instead of doing qla2x00_get_cmd_direction() to reverse engineer to
> direction ??
Sure. Especially considering an earlier thread:
http://marc.theaimsgroup.com/?t=108727983000002&r=1&w=2
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] [3/18] qla2xxx: PCI DMA mappings rework
Restructure qla2x00_start_scsi() so that PCI mappings are
done after we've verified command list and request queue
resource availability.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] [4/18] qla2xxx: ISR RISC paused fixes
Problem reported/corrected by Michael Reed [mdr@sgi.com]:
We have a 2312 that puts the 8.00.00b12-k qla2xxx driver
into an infinite loop with a solid interrupt, 0x8008,
hcsr = 0x7430, risc status register 0x40008110,
immediately after enabling parity on the board.
It looks as though the early out test in
qla_isr.c:qla2x00_intr_handler() against stat is broken.
HSR_RISC_PAUSED is set. Also, there's a stale mailbox
completion flagged (stat&0xff) which will short circuit
the default case in the switch if it got that far.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] [5/18] qla2xxx: Add module parameter permissions
Add permissions to the driver's module_params.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] [6/18] qla2xxx: Initialization fixes
Small initialization fixes:
o 'point-to-point preferred, else loop' is not a safe
connection mode setting for ISP2200 boards. Use
'loop preferred, else point-to-point.'
o Add modules parameter to enable ZIO -- Support mode
5 only.
o No point in doing a PRLI (process login) to the SNS
port.
o Fix problem where the driver would incorrectly skip
ports with the same domain and area of the HBA.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] [7/18] qla2xxx: Tape command handling fixes
Fix several tape handling issue:
1) When the firmware receives the LOGO from the device, any
active exchanges will be returned with a completion status
of 0x29 -- this will cause the port to be marked as lost and
request made to the DPC routine to begin a relogin attempt.
The problem is, since we've never actually logged out of the
device and cannot do so in interrupt context, we must be
sure to perform the logout before the qla2x00_fabric_login()
in the RELOGIN_NEEDED code.
2) Sets the Get Port Database options to ZERO when issuing
the call to qla2x00_get_port_database(). This consolidates
actuall login handling in the place it should be, in the
previous qla2x00_fabric_login() call rather than depending
on any 'hidden' behaviour of the firmware. If a device did
a LOGO after the login, then any subsequent exachanges will
be returned with an 0x29 completion status and the
RELOGIN_NEEDED code will handle the login.
3) Finally, if the master and slave state do not indicate a
logged-in state from the Get Port Database call, then one
cannot depend on the information returned from the firmware
-- the firmware typically wipes out the PCB information for
a given loopID when logged out. So, return immediately with
a failed status.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] [8/18] qla2xxx: Remove dead code
Remove several unused failover variables and functions from
the embedded driver.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] [9/18] qla2xxx: Tape command handling fixes
Address several outstanding problem within the various
eh_*() functions:
o Fixup nested spinlock usage in error-hanlding
functions.
o Set the Loop down timer during abort isp if loop
was already down for the driver to detect cable
is unplugged at min time.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] [10/18] qla2xxx: Additional tape handling fixes
Issue a big-hammer after link-down-timeout expires in order
properly return tape commands to the mid-layer.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<rmk@flint.arm.linux.org.uk>
[ARM] Correct MMCI clock rate on Integrator/CP.
<andrew.vasquez@qlogic.com>
[PATCH] [11/18] qla2xxx: Misc. fixes
Small fixes:
o Remove incorrect and unused ISP2100 #define
SS_RESIDUAL_LEN_VALID.
o Fix problem where an incorrect status would be returned
for qla2x00_configure_fabric() if the driver was unable to
log into a fabric's SNS.
o Check for the additional WAIT_FOR_AL_PA state in
qla2x00_fw_ready() since switch vendors may push NOS/OLS
primitives during a 'port disabled' state.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] [12/18] qla2xxx: Extend firmware dump support
Add firmware dump support for ISPs with memory chips larger than
128KB (512/1024KB).
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<rddunlap@osdl.org>
[PATCH] Fix sparse warning in fs/devfs/base.c
From: Mika Kukkonen <mika@osdl.org>
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rddunlap@osdl.org>
[PATCH] Fix sparse warning in fs/proc/base.c
From: Mika Kukkonen <mika@osdl.org>
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rddunlap@osdl.org>
[PATCH] Fix sparse warning in drivers/block/ll_rw_blk.c
From: Mika Kukkonen <mika@osdl.org>
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rddunlap@osdl.org>
[PATCH] sparse: make sys_quotactl() prototype match function
Al missed this one in his sparse fixes
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<andrew.vasquez@qlogic.com>
[PATCH] [13/18] qla2xxx: Remove TRUE/FALSE usage
Christoph Hellwig <hch () lst !de>:
o Remove TRUE/FALSE #define usage within the driver.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
PATCH [14/18] qla2xxx: Use proper include files
From: Andrew Vasquez <andrew.vasquez@qlogic.com>
Use the standard include/scsi/* headers rather than those in
drivers/scsi/. Slightly modified variant from initial patch sent by
Christoph Hellwig <hch () lst !de>.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
(fixed rejections)
<andrew.vasquez@qlogic.com>
[PATCH] [15/18] qla2xxx: SRB handling cleanup and fixes
Cleanup qla2x00_eh_wait_on_command() srb_t handling.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
PATCH [16/18] qla2xxx: 23xx/63xx firmware updates
From: Andrew Vasquez <andrew.vasquez@qlogic.com>
Resync with latest released firmware -- 3.02.30.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] [17/18] qla2xxx: Bus reset handler fixes
Fix incorrect return-code check in bus-reset error handler.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] [18/18] qla2xxx: Update driver version
Update version number to 8.00.00b14-k.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<greg@kroah.com>
[PATCH] USB: sparse fixups for devio.c
<khali@linux-fr.org>
[PATCH] I2C: Drop out-of-date code in w83781d and w83627hf
Here is a simple patch which drops some out-of-date code in the w83781d
and w83627hf i2c chip drivers. These bits are left over from the times
when chip drivers were setting default limits at init.
Signed-off-by: Jean Delvare <khali at linux-fr dot org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<jejb@mulgrave.(none)>
[patch-kj] kernel_thread() audit drivers/scsi/aacraid/rx.c
<torvalds@ppc970.osdl.org>
Fix C99'ism that breaks older gcc's.
Also clean it all up - use get_cpu()/put_cpu() instead of
playing games by hand with preemption.
<jejb@mulgrave.(none)>
[patch-kj] kernel_thread() audit drivers/scsi/aacraid/rkt.c
From: maximilian attems <janitor@sternwelten.at>
Cleaned up code for error handing. Added checks to unmap memory,
release IRQ's, and freeing up dev->queue.
Signed-off-by: MJK <mkemp@cs.nmsu.edu>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
(fixed up rejects by hand)
<janitor@sternwelten.at>
[PATCH] kernel_thread() audit drivers/scsi/aacraid/sa.c
Cleaned up code for error handing. Added checks to unmap memory,
release IRQ's, and freeing up dev->queue.
Signed-off-by: MJK <mkemp@cs.nmsu.edu>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jgarzik@pobox.com>
[blk carmel] s/carmel/sx8/ in the driver itself
<torvalds@ppc970.osdl.org>
sparse: clean up warning in swapfile.c
<James.Bottomley@steeleye.com>
[PATCH] HSV100 is verified as supporting REPORT LUNs
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<acme@conectiva.com.br>
[NET] Move sndmsg_page and sndmsg_off to struct sock
Yeah, the poor cousins will use this as well :-)
<davem@nuts.davemloft.net>
[IPSEC]: In ESP, do not put scatterlist array on stack.
Put it in per-esp data instead. Noticed by Linus.
Signed-off-by: David S. Miller <davem@redhat.com>
<akepner@sgi.com>
[NET]: In loopback, make get_stats() get correct per-cpu stats.
Signed-off-by: Arthur Kepner <akepner@sgi.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<trini@kernel.crashing.org>
[PPC32] Change how we handle DP memory on MPC8xx.
We now have a 'remote heap' implemented (see comments in
arch/ppc/lib/rheap.c) which manages this memory.
From Pantelis Antoniou <panto@intracom.gr>.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<acme@conectiva.com.br>
[NET] rename struct inet_protocol to net_protocol
The poor cousins will also have registration routines, etc.
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<trini@kernel.crashing.org>
[PPC32] Update CPM2 (MPC82xx/MPC85xx) code to use rheap for DP memory
Originally from: Rune Torgersen <runet@innovsys.com>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<acme@conectiva.com.br>
[NET] remove fill_page_desc, its just a copy of skb_fill_page_desc
Also remove an unused inet_opt variable from ipv6 code.
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<elf@com.rmk.(none)>
[ARM PATCH] 1913/1: lh7a40x #3 (1/2) serial
Patch from Marc Singer
Serial console and port driver for the LH7a40x CPUs. The only change
made since the last patch was to change the PORT_ID (again). This
patch superceeds two serial driver patches.
<icampbell@com.rmk.(none)>
[ARM PATCH] 1933/1: Convert PXA serial driver to device model and implement suspend and resume
Patch from Ian Campbell
Patch 1848/1 removed the hack for preserving FFUART over sleep.
This patch adds back that support in the correct place by converting
the PXA serial driver to use the driver model and hooking up the
suspend and resume methods.
<jelenz@edu.rmk.(none)>
[ARM PATCH] 1935/1: Fix bug in sa1111 driver
Patch from John Lenz
The __sa1111_probe function is declared __init, and it is called from
the sa1111_probe function, which is not declared __init.
Signed-off-by: John Lenz <jelenz@students.wisc.edu>
<roland@topspin.com>
[PATCH] PCI: Fix MSI-X setup
msix_capability_init() puts the offset of the MSI-X capability into
pos, then uses pos as a loop index to clear the MSI-X vector table,
and then tries to use pos as the offset again, which results in
writing the MSI-X enable bit off into space.
This patch fixes that by adding a new loop index variable and using
that to clear the vector table.
Signed-off-by: Roland Dreier <roland@tospin.com>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<shemminger@osdl.org>
[PATCH] PCI: remove duplicate in pci_ids.h
Get rid of duplicate entry, one is in the middle of the file with duplicate
at the end
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<shemminger@osdl.org>
[PATCH] PCI: fix out of order entry in pci_ids.h
The last entry in pci_ids.h is out of order, someone wasn't reading the comment
to keep it sorted.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<shemminger@osdl.org>
[PATCH] PCI: add id's for sk98 driver
Redoing the sk98 driver to correct pci model. These are (most of) the entries
it uses.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<jelenz@edu.rmk.(none)>
[ARM PATCH] 1936/1: Update collie fb entries to use new style initializers
Patch from John Lenz
Switches the collie framebuffer mach_info structure to use
the new initializers.
Signed-off-by: John Lenz <jelenz@students.wisc.edu>
<icampbell@com.rmk.(none)>
[ARM PATCH] 1939/1: SA1100 watchdog driver also works on PXA2xx
Patch from Ian Campbell
The SA1100 watchdog driver also works fine on the PXA2xx. Tested on
a PXA255 based platform.
<shemminger@osdl.org>
[NET]: rtentry->rt_dev is __user.
The device entry in the route ioctl's needs annotation.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<shemminger@osdl.org>
[IPV4]: ip_rt_ioctl argument is user pointer.
The function ip_rt_ioctl expects a pointer to a user route structure, so define
it that way and cast as appropriate.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<shemminger@osdl.org>
[BRIDGE]: Turn off debug message in bridge ioctl.
Trivial patch to turn off a debug message. It seems some SNMP daemons just
periodically trying to look at MII state.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<dvrabel@com.rmk.(none)>
[ARM PATCH] 1940/1: asm-arm/checksum.h - missing include
Patch from David Vrabel
Missing include (cf. include/asm-i386/checksum.h) in include/asm-arm/checksum.h.
<jgarzik@pobox.com>
[libata sata_sil] Re-fix mod15write bug
Certain early SATA drives have problems with write requests whose
length satisfy the equation "sectors % 15 == 1", on the SiI 3112.
Other drives, and other SiI controllers, are not affected.
The fix for this problem is to avoid such requests, in one of three
ways, for the affect drive+controller combos:
1) Limit all writes to 15 sectors
2) Use block layer features to avoid creating requests whose
length satisfies the above equation.
3) When a request satisfies the above equation, split the request
into two writes, neither of which satisfies the equation.
I chose fix #1, the most simple to implement. After discussion with
Silicon Image and others regarding the impact of this fix, I have
decided to remain with fix #1, and will not be implementing a
"better fix". This means that the affected SATA drives will see
decreased performance, but set of affected drives is small and will
never grow larger.
Further, the complexity of implementing solution #2 or
solution #3 is rather large.
When implementing lba48 'large request' support, I unintentionally
broke the fix for these affected drives. Kudos to Ricky Beam for
noticing this.
This change restores the fix, by adding a flag ATA_DFLAG_LOCK_SECTORS
to indicate that the max_sectors value set by the low-level driver
should never be changed.
<acme@conectiva.com.br>
[NET] Generalise tcp memory pressure handling
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<benh@kernel.crashing.org>
[PATCH] ppc32: Cleanups & warning fixes of traps.c
This cleans up arch/ppc/kernel/traps.c and vecemu.c to use the same
formatting style for all functions, and fixes 2 warnings in the altivec
floating point emulation code. No functional change.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<benh@kernel.crashing.org>
[PATCH] ppc32: oprofile support
This adds basic oprofile support to ppc32. Originally from Anton
Blanchard, I just re-diffed it against current kernels.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<benh@kernel.crashing.org>
[PATCH] ppc32: Support for new Apple laptop models
This adds support for newer Apple laptop models. It adds the basic
identification for the new motherboards and the cpufreq support for
models using the new 7447A CPU from Motorola.
This is mostly the work of John Steele Scott <toojays@toojays.net> with
some bits from Sebastian Henschel <linux@kodeaffe.de> and some rework by
myself. Please apply,
Signed-off-by: John Steele Scott <toojays@toojays.net>
Signed-off-by: Sebastian Henschel <linux@kodeaffe.de>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<benh@kernel.crashing.org>
[PATCH] radeonfb: Fix panel detection on some laptops
The code in radeonfb looking for the BIOS image currently uses the BIOS
ROM if any, and falls back to the RAM image if not found. This is
unfortunatly not correct for a bunch of laptops where the real panel
data are only present in the RAM image.
This works around this problem by preferring the RAM image on mobility
chipsets. This is definitely not the best workaround, we need some arch
support for linking the RAM image to the PCI ID (preferrably by having
the arch snapshot it during boot, isolating us completely from the
details of where this image is in memory). I'll see how we can get such
an improvement later.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] Handle altivec assist exception properly
This is the PPC64 counterpart of the PPC32 Altivec assist exception
handler that went in recently.
On PPC64 machines with Altivec (i.e. machines that use the PPC970 chip,
such as the G5 powermac), the altivec floating-point instructions can
operate in two modes: one where denormalized inputs or outputs are
truncated to zero, and one where they aren't. In the latter mode the
processor can take an exception when it encounters denormalized
floating-point inputs or outputs rather than dealing with them in
hardware.
This patch adds code to deal properly with the exception, by emulating
the instruction that caused the exception. Previously the kernel just
switched the altivec unit into the truncate-to-zero mode, which works
but is a bit gross. Fortunately there are only a limited set of altivec
instructions which can generate the assist exception, so we don't have
to emulate the whole altivec instruction set.
Note that Altivec is Motorola's name for the PowerPC vector/SIMD
instructions; IBM calls the same thing VMX, and currently only IBM makes
64-bit PowerPC CPU chips. Nevertheless, I have used the term Altivec in
the PPC64 code for consistency with the PPC32 code.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jbarnes@engr.sgi.com>
[PATCH] ppc32: Support for new Apple laptop models
This adds sound support for some of the newer PowerBooks. It appears
that this chip supports the AWACS sample rates, but has a snapper-style
mixer. Tested and works on my PowerBook5,4.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<dwmw2@shinybook.infradead.org>
WindRiver PowerQUICC III platform support cleanup.
Respond to maintainer feedback -- remove unneeded setup for
the FEC port which doesn't exist; small cosmetic changes.
Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
<yoshfuji@linux-ipv6.org>
[NETFILTER]: Fix iptable_raw.c build with older gcc.
<rmk@flint.arm.linux.org.uk>
[ARM] Fix Integrator/CP timer support.
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] bug in V-link handling (arch/i386/pci/irq.c)
Via southbridges use register 0x3c of the on-board devices (USB and
AC97) to control interrupt routing for those. In drivers/pci/quirks.c we
set it correctly (dev->irq & 15). However, in pirq_enable_irq() where the
second half of that stuff lives, we forget to apply the mask.
That's what causes problems with ioapic on via motherboards in 2.6.
One-liner below ACKed by Alan, verified on via-based boxen here, obviously
doesn't affect non-via ones (we only set interrupt_line_quirk for via
chipsets).
<rmk@flint.arm.linux.org.uk>
[ARM] Fix platform device registration.
Since the platform device registration is now merged into the driver
model, remove it from the ARM specific code.
<acme@conectiva.com.br>
[NET] Generalise tcp_{writequeue_purge,rmem_schedule,alloc_{pskb,page}}
Only new requirement was to add a max_header field to struct sock sk_prot
member.
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
<tony@com.rmk.(none)>
[ARM PATCH] 1943/1: OMAP compile fix
Patch from Tony Lindgren
This patch fixes OMAP compile after the ARM timer changes
in cset 1.1821.5.3 and dma-mapping device address translation
in cset 1.1821.5.3.
<stern@rowland.harvard.edu>
[PATCH] USB: Add logical connect-change notices to the hub driver
This patch implements the missing functionality necessary to get device
resets working fully. It adds a bit-array of ports with logical
connect-changes pending to the hub structure, so that the hub driver can
recognize that these ports should be treated as though they had
disconnected and re-connected. This is how we will handle devices that
"morph" (i.e., change their descriptors) following a reset, as might
happen with a firmware upload.
There is also a lot of additional kerneldoc and a few small changes to
some log messages. An important restriction is that usb_reset_device()
will refuse to work if the device is suspended. Trying to reset a
suspended device leads to several problems, not least of which is that the
device's parent hub might be suspended as well.
With this patch the device reset code is pretty much complete. However it
won't always work correctly until the device locking is straightened out.
That's coming up next.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Fail pending URBs in dummy_hcd upon disconnect
This patch fixes another bug in the dummy_hcd driver. When a gadget
driver unregisters (simulating a device disconnect), dummy_hcd stops the
timer that it uses for processing outstanding URBs. Unfortunately this
means that those URBs will never be given back. The patch lets the timer
continue running; when it expires all the remaining URBs will fail so the
timer won't be reinitialized.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<oliver@neukum.org>
[PATCH] USB: patches to acm driver
- races with urb->current, union header evaluation, DMA handling
Signed-off-By: Oliver Neukum <oliver@neukum.name>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<oliver@neukum.org>
[PATCH] USB: another error check in acm
I overlooked that setting control lines in open can fail.
- check for error doing control transfers
Signed-Off-By: Oliver Neukum <oliver@neukum.name>
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<rmk@flint.arm.linux.org.uk>
[ARM] Fix EBSA110 timer functions.
Unfortunately this broke in Deepak's merge. Fix it.
<rmk@flint.arm.linux.org.uk>
[ARM] Fix Footbridge timer functions.
<rmk@flint.arm.linux.org.uk>
[ARM] Fix acornfb build error.
<ossi@kde.org>
[PATCH] PCI: (one more) PCI quirk for SMBus bridge on Asus P4 boards
my board has one of those "clever" bioses that hide the smbus. this tiny
patch adds it to the Bad Guy List (TM).
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<davem@nuts.davemloft.net>
[NETFILTER]: Use correct size_t printk format string in ipt_addrtype.c
<davem@nuts.davemloft.net>
[ATM]: In proc_mpc_read, make length ssize_t.
<acme@conectiva.com.br>
[NET] make the struct proto entries related to memory pressure be pointers
This is needed because tcpv6_prot has to point to the same place tcp_prot points,
as they share the same accounting variables.
This fixes a bug noticed by David Miller when using the ipv6_mapped functionality,
thanks David!
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[PATCH] Allow i386 to reenable interrupts on lock contention
From: Zwane Mwaikambo <zwane@linuxpower.ca>
Following up on Keith's code, I adapted the i386 code to allow enabling
interrupts during contested locks depending on previous interrupt
enable status. Obviously there will be a text increase (only for non
CONFIG_SPINLINE case), although it doesn't seem so bad, there will be an
increased exit latency when we attempt a lock acquisition after spinning
due to the extra instructions. How much this will affect performance I'm
not sure yet as I haven't had time to micro bench.
text data bss dec hex filename
2628024 921731 0 3549755 362a3b vmlinux-after
2621369 921731 0 3543100 36103c vmlinux-before
2618313 919222 0 3537535 35fa7f vmlinux-spinline
The code has been stress tested on a 16x NUMAQ (courtesy OSDL).
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] jbd needs to wait for locked buffers
From: Chris Mason <mason@suse.com>
jbd needs to wait for any io to complete on the buffer before changing the
end_io function. Using set_buffer_locked means that it can change the
end_io function while the page is in the middle of writeback, and the
writeback bit on the page will never get cleared.
Since we set the buffer dirty earlier on, if the page was previously dirty,
pdflush or memory pressure might trigger a writepage call, which will race
with jbd's set_buffer_locked.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] Move saved_command_line to init/main.c
From: Rusty Russell <rusty@rustcorp.com.au>
Currently every arch declares its own char saved_command_line[]. Make sure
every arch defines COMMAND_LINE_SIZE in asm/setup.h, and declare
saved_command_line in linux/init.h (init/main.c contains the definition).
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] rcu lock update: Add per-cpu batch counter
From: Manfred Spraul <manfred@colorfullife.com>
Below is the one of my patches from my rcu lock update. Jack Steiner tested
the first one on a 512p and it resolved the rcu cache line trashing. All were
tested on osdl with STP.
Step one for reducing cacheline trashing within rcupdate.c:
The current code uses the rcu_cpu_mask bitmap both for keeping track of the
cpus that haven't gone through a quiescent state and for checking if a cpu
should look for quiescent states. The bitmap is frequently changed and the
check is done by polling - together this causes cache line trashing.
If it's cheaper to access a (mostly) read-only cacheline than a cacheline that
is frequently dirtied, then it's possible to reduce the trashing by splitting
the rcu_cpu_mask bitmap into two cachelines:
The patch adds a generation counter and moves it into a separate cacheline.
This allows to removes all accesses to rcu_cpumask (in the read-write
cacheline) from rcu_pending and at least 50% of the accesses from
rcu_check_quiescent_state. rcu_pending and all but one call per cpu to
rcu_check_quiescent_state access the read-only cacheline. Probably not enough
for 512p, but it's a start, just for 128 byte more memory use, without slowing
down rcu grace periods. Obviously the read-only cacheline is not really
read-only: it's written once per grace period to indicate that a new grace
period is running.
Tests on an 8-way Pentium III with reaim showed some improvement:
oprofile hits:
Reference: http://khack.osdl.org/stp/293075/
Hits %
23741 0.0994 rcu_pending
19057 0.0798 rcu_check_quiescent_state
6530 0.0273 rcu_check_callbacks
Patched: http://khack.osdl.org/stp/293076/
8291 0.0579 rcu_pending
5475 0.0382 rcu_check_quiescent_state
3604 0.0252 rcu_check_callbacks
The total runtime differs between both runs, thus the % number must
be compared: Around 50% faster. I've uninlined rcu_pending for the
test.
Tested with reaim and kernbench.
Description:
- per-cpu quiescbatch and qs_pending fields introduced: quiescbatch contains
the number of the last quiescent period that the cpu has seen and qs_pending
is set if the cpu has not yet reported the quiescent state for the current
period. With these two fields a cpu can test if it should report a
quiescent state without having to look at the frequently written
rcu_cpu_mask bitmap.
- curbatch split into two fields: rcu_ctrlblk.batch.completed and
rcu_ctrlblk.batch.cur. This makes it possible to figure out if a grace
period is running (completed != cur) without accessing the rcu_cpu_mask
bitmap.
- rcu_ctrlblk.maxbatch removed and replaced with a true/false next_pending
flag: next_pending=1 means that another grace period should be started
immediately after the end of the current period. Previously, this was
achieved by maxbatch: curbatch==maxbatch means don't start, curbatch!=
maxbatch means start. A flag improves the readability: The only possible
values for maxbatch were curbatch and curbatch+1.
- rcu_ctrlblk split into two cachelines for better performance.
- common code from rcu_offline_cpu and rcu_check_quiescent_state merged into
cpu_quiet.
- rcu_offline_cpu: replace spin_lock_irq with spin_lock_bh, there are no
accesses from irq context (and there are accesses to the spinlock with
enabled interrupts from tasklet context).
- rcu_restart_cpu introduced, s390 should call it after changing nohz:
Theoretically the global batch counter could wrap around and end up at
RCU_quiescbatch(cpu). Then the cpu would not look for a quiescent state and
rcu would lock up.
Signed-off-by: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] rcu lock update: Use a sequence lock for starting batches
From: Manfred Spraul <manfred@colorfullife.com>
Step two for reducing cacheline trashing within rcupdate.c:
rcu_process_callbacks always acquires rcu_ctrlblk.state.mutex and calls
rcu_start_batch, even if the batch is already running or already scheduled to
run.
This can be avoided with a sequence lock: A sequence lock allows to read the
current batch number and next_pending atomically. If next_pending is already
set, then there is no need to acquire the global mutex.
This means that for each grace period, there will be
- one write access to the rcu_ctrlblk.batch cacheline
- lots of read accesses to rcu_ctrlblk.batch (3-10*cpus_online()). Behavior
similar to the jiffies cacheline, shouldn't be a problem.
- cpus_online()+1 write accesses to rcu_ctrlblk.state, all of them starting
with spin_lock(&rcu_ctrlblk.state.mutex).
For large enough cpus_online() this will be a problem, but all except two
of the spin_lock calls only protect the rcu_cpu_mask bitmap, thus a
hierarchical bitmap would allow to split the write accesses to multiple
cachelines.
Tested on an 8-way with reaim. Unfortunately it probably won't help with Jack
Steiner's 'ls' test since in this test only one cpu generates rcu entries.
Signed-off-by: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] rcu lock update: Code move & cleanup
From: Manfred Spraul <manfred@colorfullife.com>
Step three for reducing cacheline trashing within rcupdate.c:
Cleanup and code move from <linux/rcupdate.h> to kernel/rcupdate.c: Remove
internal details from the header file.
Signed-off-by: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] reduce rcu_head size - core
From: Dipankar Sarma <dipankar@in.ibm.com>
This reduces the RCU head size by using a singly linked to maintain them.
The ordering of the callbacks is still maintained as before by using a tail
pointer for the next list.
Signed-Off-By : Dipankar Sarma <dipankar@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] rcu: avoid passing an argument to the callback function
From: Dipankar Sarma <dipankar@in.ibm.com>
This patch changes the call_rcu() API and avoids passing an argument to the
callback function as suggested by Rusty. Instead, it is assumed that the
user has embedded the rcu head into a structure that is useful in the
callback and the rcu_head pointer is passed to the callback. The callback
can use container_of() to get the pointer to its structure and work with
it. Together with the rcu-singly-link patch, it reduces the rcu_head size
by 50%. Considering that we use these in things like struct dentry and
struct dst_entry, this is good savings in space.
An example :
struct my_struct {
struct rcu_head rcu;
int x;
int y;
};
void my_rcu_callback(struct rcu_head *head)
{
struct my_struct *p = container_of(head, struct my_struct, rcu);
free(p);
}
void my_delete(struct my_struct *p)
{
...
call_rcu(&p->rcu, my_rcu_callback);
...
}
Signed-Off-By: Dipankar Sarma <dipankar@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] cpumask: make cpu_present_map real even on non-smp
From: Paul Jackson <pj@sgi.com>
This patch makes cpu_present_map a real map for all configurations, instead of
a constant for non-SMP. It also moves the definition of cpu_present_map out
of kernel/cpu.c into kernel/sched.c, because cpu.c isn't compiled into non-SMP
kernels.
The pattern is that each of the possible, present and online cpu maps are
actual kernel global cpumask_t variables, for all configurations. They are
documented in include/linux/cpumask.h. Some of the UP (NR_CPUS=1) code
cheats, and hardcodes the assumption that the single bit position of these
maps is always set, as an optimization.
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] cpumask: bitmap cleanup preparation for cpumask overhaul
From: Paul Jackson <pj@sgi.com>
Document the bitmap bit model and handling of unused bits.
Tighten up bitmap so it does not generate nonzero bits in the unused tail if
it is not given any on input.
Add intersects, subset, xor and andnot operators. Change bitmap_complement to
take two operands.
Add a couple of missing 'const' qualifiers on bitops test_bit and bitmap_equal
args.
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] cpumask: bitmap inlining and optimizations
From: Paul Jackson <pj@sgi.com>
These bitmap improvements make it a suitable basis for fully supporting
cpumask_t and nodemask_t. Inline macros with compile-time checks enable
generating tight code on both small and large systems (large meaning cpumask_t
requires more than one unsigned long's worth of bits).
The existing bitmap_<op> macros in lib/bitmap.c are renamed to __bitmap_<op>,
and wrappers for each bitmap_<op> are exposed in include/linux/bitmap.h
This patch _includes_ Bill Irwins rewrite of the bitmap_shift operators to not
require a fixed length intermediate bitmap.
Improved comments list each available operator for easy browsing.
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] cpumask: rewrite cpumask.h - single bitmap based implementation
From: Paul Jackson <pj@sgi.com>
Major rewrite of cpumask to use a single implementation, as a struct-wrapped
bitmap.
This patch leaves some 26 include/asm-*/cpumask*.h header files orphaned - to
be removed next patch.
Some nine cpumask macros for const variants and to coerce and promote between
an unsigned long and a cpumask are obsolete. Simple emulation wrappers are
provided in this patch for these obsolete macros, which can be removed once
each of the 3 archs (i386, ppc64, x86_64) using them are recoded in follow-on
patches to not need them.
The CPU_MASK_ALL macro now avoids leaving possible garbage one bits in any
unused portion of the high word.
An inproved comment lists all available operators, for convenient browsing.
From: Mikael Pettersson <mikpe@csd.uu.se>
2.6.7-rc3-mm1 changed CPU_MASK_NONE into something that isn't a valid
rvalue (it only works inside struct initializers). This caused compile-time
errors in perfctr in UP x86 builds.
From: Arnd Bergmann <arnd@arndb.de>
cpumask-5-10-rewrite-cpumaskh-single-bitmap-based from 2.6.7-rc3-mm1
causes include2/asm/smp.h:54:1: warning: "cpu_online" redefined
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Mikael Pettersson <mikpe@csd.uu.se>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] cpumask: remove 26 no longer used cpumask*.h files
From: Paul Jackson <pj@sgi.com>
With the cpumask rewrite in the previous patch, these various
include/asm-*/cpumask*.h headers are no longer used.
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] cpumask: remove obsolete cpumask macro uses - i386 arch
From: Paul Jackson <pj@sgi.com>
Remove by recoding i386 uses of the obsolete cpumask const, coerce and promote
macros.
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] cpumask: remove obsolete cpumask macro uses - other archs
From: Paul Jackson <pj@sgi.com>
Remove by recoding other uses of the obsolete cpumask const, coerce and
promote macros.
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] x86_64: cpu_online fix
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] ppc64: cpu_online fix
include/asm/smp.h:55:1: warning: "cpu_possible" redefined
include/asm/smp.h:54:1: warning: "cpu_online" redefined
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] cpumask: Remove no longer used obsolete macro emulation
From: Paul Jackson <pj@sgi.com>
Now that the emulation of the obsolete cpumask macros is no longer needed,
remove it from cpumask.h
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] cpumask: optimize various uses of new cpumasks
From: Paul Jackson <pj@sgi.com>
Make use of for_each_cpu_mask() macro to simplify and optimize a couple of
sparc64 per-CPU loops.
Optimize a bit of cpumask code for asm-i386/mach-es7000
Convert physids_complement() to use both args in the files
include/asm-i386/mpspec.h, include/asm-x86_64/mpspec.h.
Remove cpumask hack from asm-x86_64/topology.h routine pcibus_to_cpumask().
Clarify and slightly optimize several cpumask manipulations in kernel/sched.c
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] cpumask: comment, spacing tweaks
From: Paul Jackson <pj@sgi.com>
Tweak cpumask.h comments, spacing:
- Add comments for cpu_present_map macros: num_present_cpus() and
cpu_present()
- Remove comments for obsolete macros: cpu_set_online(),
cpu_set_offline()
- Reorder a few comment lines, to match the code and confuse readers of
this patch
- Tabify one chunk of code
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] clean up cpumask_t temporaries
From: Rusty Russell <rusty@rustcorp.com.au>
Paul Jackson's cpumask tour-de-force allows us to get rid of those stupid
temporaries which we used to hold CPU_MASK_ALL to hand them to functions.
This used to break NR_CPUS > BITS_PER_LONG.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] alpha: cpumask fixups
From: William Lee Irwin III <wli@holomorphy.com>
The cpumask patches broke alpha's build, even without the irqaction
patch, largely centering around cpu_possible_map.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] make irqaction use a cpu mask
From: William Lee Irwin III <wli@holomorphy.com>
The following patch makes irqaction's ->mask a cpumask as it was intended
to be and wraps up the rest of the sweep. Only struct irqaction is
usefully greppable, so there may be some assignments to ->mask missing
still. This removes more code than it adds.
From: William Lee Irwin III <wli@holomorphy.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] Fix and Reenable MSI Support on x86_64
From: long <tlnguyen@snoqualmie.dp.intel.com>
MSI support for x86_64 is currently disabled in the kernel 2.6.x. Below is
the patch, which provides a fix and reenable it.
In addition, the patch provides a info message during kernel boot if
configuring vector-base indexing.
Cc: Andi Kleen <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] vmscan.c: shuffle things around
Move all the data structure declarations, macros and variable definitions to
less surprising places.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] vmscan.c scan rate fixes
We've been futzing with the scan rates of the inactive and active lists far
too much, and it's still not right (Anton reports interrupt-off times of over
a second).
- We have this logic in there from 2.4.early (at least) which tries to keep
the inactive list 1/3rd the size of the active list. Or something.
I really cannot see any logic behind this, so toss it out and change the
arithmetic in there so that all pages on both lists have equal scan rates.
- Chunk the work up so we never hold interrupts off for more that 32 pages
worth of scanning.
- Make the per-zone scan-count accumulators unsigned long rather than
atomic_t.
Mainly because atomic_t's could conceivably overflow, but also because
access to these counters is racy-by-design anyway.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] vmscan.c: dont reclaim too many pages
The shrink_zone() logic can, under some circumstances, cause far too many
pages to be reclaimed. Say, we're scanning at high priority and suddenly hit
a large number of reclaimable pages on the LRU.
Change things so we bale out when SWAP_CLUSTER_MAX pages have been reclaimed.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] vm: vfs shrinkage tuning
Some people want the dentry and inode caches shrink harder, others want them
shrunk more reluctantly.
The patch adds /proc/sys/vm/vfs_cache_pressure, which tunes the vfs cache
versus pagecache scanning pressure.
- at vfs_cache_pressure=0 we don't shrink dcache and icache at all.
- at vfs_cache_pressure=100 there is no change in behaviour.
- at vfs_cache_pressure > 100 we reclaim dentries and inodes harder.
The number of megabytes of slab left after a slocate.cron on my 256MB test
box:
vfs_cache_pressure=100000 33480
vfs_cache_pressure=10000 61996
vfs_cache_pressure=1000 104056
vfs_cache_pressure=200 166340
vfs_cache_pressure=100 190200
vfs_cache_pressure=50 206168
Of course, this just left more directory and inode pagecache behind instead of
vfs cache. Interestingly, on this machine the entire slocate run fits into
pagecache, but not into VFS caches.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] dnotify.c: use inode->i_lock in place of dn_lock
From: "Adam J. Richter" <adam@yggdrasil.com>
Replace the use of a global spinlock with the per-inode ->i_lock.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] Use fancy wakeups in wait.h
Use the more SMP-friendly prepare_to_wait()/finish_wait() in wait_event() and
friends.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] tweak the buddy allocator for better I/O merging
From: William Lee Irwin III <wli@holomorphy.com>
Based on Arjan van de Ven's idea, with guidance and testing from James
Bottomley.
The physical ordering of pages delivered to the IO subsystem is strongly
related to the order in which fragments are subdivided from larger blocks
of memory tracked by the page allocator.
Consider a single MAX_ORDER block of memory in isolation acted on by a
sequence of order 0 allocations in an otherwise empty buddy system.
Subdividing the block beginning at the highest addresses will yield all the
pages of the block in reverse, and subdividing the block begining at the
lowest addresses will yield all the pages of the block in physical address
order.
Empirical tests demonstrate this ordering is preserved, and that changing
the order of subdivision so that the lowest page is split off first
resolves the sglist merging difficulties encountered by driver authors at
Adaptec and others in James Bottomley's testing.
James found that before this patch, there were 40 merges out of about 32K
segments. Afterward, there were 24007 merges out of 19513 segments, for a
merge rate of about 55%. Merges of 128 segments, the maximum allowed, were
observed afterward, where beforehand they never occurred. It also improves
dbench on my workstation and works fine there.
Signed-off-by: William Lee Irwin III <wli@holomorphy.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] hwcache align kmalloc caches
From: Manfred Spraul <manfred@colorfullife.com>
Reversing the patches that made all caches hw cacheline aligned had an
unintended side effect on the kmalloc caches: Before they had the
SLAB_HWCACHE_ALIGN flag set, now it's clear. This breaks one sgi driver -
it expects aligned caches. Additionally I think it's the right thing to
do: It costs virtually nothing (the caches are power-of-two sized) and
could reduce false sharing.
Additionally, the patch adds back the documentation for the
SLAB_HWCACHE_ALIGN flag.
Signed-Off: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] reduce function inlining in slab.c
From: Manfred Spraul <manfred@colorfullife.com>
slab.c contains too many inline functions:
- some functions that are not performance critical were inlined. Waste
of text size.
- The debug code relies on __builtin_return_address(0) to keep track of
the callers. According to rmk, gcc didn't inline some functions as
expected and that resulted in useless debug output. This was probably
caused by the large debug-only inline functions.
The attached patche removes most inline functions:
- the empty on release/huge on debug inline functions were replaced with
empty macros on release/normal functions on debug.
- spurious inline statements were removed.
The code is down to 6 inline functions: three one-liners for struct
abstractions, one for a might_sleep_if test and two for the performance
critical __cache_alloc / __cache_free functions.
Note: If an embedded arch wants to save a few bytes by uninlining
__cache_{free,alloc}: The right way to do that is to fold the functions
into kmem_cache_xy and then replace kmalloc with
kmem_cache_alloc(kmem_find_general_cachep(),).
Signed-Off: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] abs() fixes
OK, the pending abs() disaster has hit:
drivers/usb/class/audio.c:404: warning: static declaration of 'abs' follows non-static declaration
This is due to the declaration in kernel.h. AFAIK there's not even a matching
definition for that.
The patch implements abs() as a macro in kernel.h and kills off various
private implementations.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] Support NetMOS based PCI cards providing serial and parallel ports
From: Christoph Lameter <christoph@graphe.net>
Attached a patch to support a variety of PCI based serial and parallel port
I/O ports (typically labeled 222N-2 or 9835).
I think this should go into 2.6.0 since it has been out there for a long
time and is just some additional driver support that somehow fell through
the cracks in 2.4.X. Tim Waugh submitted it in the 2.4.X series.
See also http://winterwolf.co.uk/pciio
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] help text for FB_RIVA_I2C
From: "Antonino A. Daplas" <adaplas@hotpop.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>
<akpm@osdl.org>
[PATCH] nr_pagecache can go negative
We use per-cpu counters for the system-wide pagecache accounting. The
counters spill into the global nr_pagecache atomic_t when they underflow or
overflow.
Hence it is possible, under weird circumstances, for nr_pagecache to go
negative. Anton says he has hit this.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] Make nr_swap_pages a long
From: Anton Blanchard <anton@samba.org>
../include/linux/swap.h:extern int nr_swap_pages; /* XXX: shouldn't this be ulong? --hch */
Sounds like it should be too me. Some of the code checks for nr_swap_pages
< 0 so I made it a long instead. I had to fix up the ppc64 show_mem() (Im
guessing there will be other trivial changes required in other 64bit archs,
I can find and fix those if you want).
I also noticed that the ppc64 show_mem() used ints to store page counts.
We can overflow that, so make them unsigned long.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] make total_swap_pages a long
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] mips: SGI A2 audio rewrite and 2.6 fixes
From: Ralf Baechle <ralf@linux-mips.org>
Fix HAL2 audio driver for the SGI A2 audio subsystem and rewrite large
parts of it to finally work.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] Dell laptop lockup fix for ALSA
From: Alan Cox <alan@redhat.com>
OSS avoids the Dell lockup by not hitting the problem register (which
apparently breaks resume on a Sony laptop). ALSA keeps a flag and uses pci
subvendor info to clear it for problem Dell laptops. Unfortunately there
is at least one other Dell laptop which is affected. This adds its sub
id's
[Patch from Dan Williams @ Red Hat slightly reformatted by me]
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] MIPS Update
From: Ralf Baechle <ralf@linux-mips.org>
MIPS update:
- Further conversion of MIPS kernel configuration to reverse dependencies.
- Support for the PMC-Sierra Yosemite evaluation board.
- Merge arch/mips/mm-32 and arch/mips/mm-32 into arch/mips/mm.
- Partial support for the R8000 now that I finally have clearance for the
documentation previously covered by NDA.
- Make distclean fixes.
- Regenerate default configuration files against latest Kconfig files.
- Fix handling of data bus errors in modules.
- Make R4000 bug probing more bullet proof.
- Rewrite semaphore code folloing the PPC implementation to no longer
manipulate 2 32-bit quantities atomically using 64-bit instructions.
Occasionally this did cause problems due to struct semaphore not having
sufficient alignment.
- Make sys_pipe() code bullet proof against gcc 3.5 over-optimization.
- Fix possibly exploitable bug in IRIX compatibility statvfs(2).
- Make sched_clock() an outline function.
- Support for the MIPS 24K and 25K processors.
- Make functions static that aren't needed anywhere else.
- Factor out some more generic MIPS SMP code.
- Factor out common part of the GT-64240 code.
- Ocelot C now uses the generic MV-64340 interrupt handler code.
- Factor out common board support code
- More cleanup and bug fixes for the NEC VR41xx code.
- Start cleanup of hazard handling as required for MIPS32/64 V2 processors.
- Enforce minimal kmalloc alignment of 8 byte so 64-bit registers can be
stored into fields without exceptions.
- Speeling and warning fixes.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] Indydog update
From: Ralf Baechle <ralf@linux-mips.org>
Forward port of the 2.4 driver with changes required for 2.6.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] fix linker trouble with CONFIG_FB_RIVA_I2C=y and modular I2C
From: Adrian Bunk <bunk@fs.tum.de>
> This version causes linker trouble with
> CONFIG_I2C=m
> CONFIG_I2C_ALGOBIT=m
> CONFIG_FB_RIVA_I2C=y
>
> CC init/version.o
> LD init/built-in.o
> LD .tmp_vmlinux1
> drivers/built-in.o(.text+0xda101): In function `riva_setup_i2c_bus':
> : undefined reference to `i2c_bit_add_bus'
> drivers/built-in.o(.text+0xda218): In function `riva_delete_i2c_busses':
> : undefined reference to `i2c_bit_del_bus'
> drivers/built-in.o(.text+0xda237): In function `riva_delete_i2c_busses':
> : undefined reference to `i2c_bit_del_bus'
> drivers/built-in.o(.text+0xda2c9): In function `riva_do_probe_i2c_edid':
> : undefined reference to `i2c_transfer'
> make: *** [.tmp_vmlinux1] Error 1
>...
The problem is:
FB_RIVA=y
FB_RIVA_I2C=y
I2C=m
I2C_ALGOBIT=m
The patch below fixes this.
Besides this, it contains:
- help text by Antonino A. Daplas
- converted spaces to tabs
- it was forgotten that FB_RIVA_I2C requires I2C_ALGOBIT
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] Fix early CPU vendor detection for non intel cpus
From: Andi Kleen <ak@suse.de>
Early CPU detect can only work after the various sub CPU drivers have
registered their devices.
Currently the vendor would be always 0, which is Intel.
This prevents Athlons from being recognized as buggy PPros and fixes some
other workarounds for non Intel CPUs too.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] OProfile: allow normal user to trigger sample dumps
From: John Levon <levon@movementarian.org>
In 2.4, OProfile allowed normal users to trigger sample dumps (useful under
low sample load). The patch below, by Will Cohen, allows this for 2.6 too.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] SubmittingDrivers fix
From: Jesper Juhl <juhl-lkml@dif.dk>
Here's a small patch that lists X.Org as well as XFree86 in
Documentation/SubmittingDrivers in the section talking about video drivers.
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] Core fbcon fixes
From: "Antonino A. Daplas" <adaplas@hotpop.com>
This patch fixes the following bugs/regressions for fbcon:
1. Initialize and update global arrays used by fbcon during
initialization and and by set_con2fbmap code.
2. Fixed screen corruption (white rectangle) at initial mode setting
plaguing cards with VGA cores and with VGA console enabled. (vga16fb,
however, still shows remnants of previous text if boot logo is enabled)
3. Improved fbcon_startup/fbcon_init code.
4. Fixed set_con2fbmap code -- should support multiple devices mapped to
Signed-off-by: Antonino A. Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] fbdev: video mode change notify (fbset)
From: "Antonino A. Daplas" <adaplas@hotpop.com>
This patch allows fbset to change the video mode and the console window
size via the notifier call chain. It will only notify fbcon of mode
changes from user space. Changes coming from upstream will be ignored.
The code will only update the current console.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] ppc64: fix POWER3 NUMA init
From: Anton Blanchard <anton@samba.org>
We were passing in the hole size as kB not pages to free_area_init which
made the VM misbehave. This only hit on POWER3 because POWER4 and newer
places IO above all memory and so doesnt have a hole.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] Add PPC85xx MAINTAINERS entry
From: Kumar Gala <kumar.gala@freescale.com>
Added myself to the MAINTAINERS file for 85xx. Added an entry into the
CREDITS file for me.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] (o)profile Documentation/basic_profiling.txt updates
From: bert hubert <ahu@ds9a.nl>
Signed-off-by: bert hubert <ahu@ds9a.nl>
Signed-off-by: John Levon <levon@movementarian.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] SELinux: Extend and revise calls to secondary module
From: Stephen Smalley <sds@epoch.ncsc.mil>
This patch extends the set of calls to the secondary security module by
SELinux as well as revising a few existing calls to support other security
modules and to more cleanly stack with the capability module. Please
apply.
Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] fix allocate_pgdat comments
From: "Martin J. Bligh" <mbligh@aracnet.com>
From: Andy Whitcroft <apw@shadowen.org>
The comments for i386 allocate_pgdat indicate that the routine should be
modified to place the pgdat into node local memory. However, this has
already been done as the pgdat is placed at node_remap_start_vaddr. This
patch updates the comments to reflect this reality.
Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Martin J. Bligh <mbligh@aracnet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] drivers/media/video/tda9840.c: honour return code of i2c_add_driver()
From: Michael Hunold <m.hunold@gmx.de>
i2c_add_driver() may actually fail, but my driver returns 0 regardless.
Thanks to Arthur Othieno <a.othieno@bluewin.ch> for this obviously correct
patch.
Signed-off-by: Michael Hunold <hunold@linuxtv.org>
Signed-off-by: Arthur Othieno <a.othieno@bluewin.ch>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] zap_pte_range speedup
From: Hugh Dickins <hugh@veritas.com>
zap_pte_range is wasting time marking anon pages accessed: its original
!PageSwapCache test should have been reinstated when page_mapping was
changed to return swapper_space; or more simply, just check !PageAnon.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] h8300: delete obsolute header
From: Yoshinori Sato <ysato@users.sourceforge.jp>
- delete obsolute(unused) header file
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] cirrusfb: major update
From: David Eger <eger@havoc.gtf.org>
This patch brings the cirrusfb driver up to date with 2.6. cirrusfb has
suffered bit rot like you wouldn't believe (last updated... 2.3.x era?).
The driver will now compile again, and you can change to a high resolution
text mode with stty. Known defects: doesn't play nice with X, nor fbset.
C = Cosmetic change
L = Logical change
A = API change
W = register Writing change
(1-CA) fb_info and cirrusfb_info:
- mostly cosmetic, but a lot less confusing, and no more nasty casting.
It used to be stylish to embed struct fb_info_gen (now struct fb_info)
as the first member of struct clgenfb_info (now struct cirrusfb_info),
and then you'd cast to the deisred struct.
Now we pass the size of our data structure to framebuffer_alloc(),
and we make fb_info and cirrusfb_info reference each other with
pointers (as in radeonfb).
In the old code, there two declarations were common:
clgenfb_info *fb_info;
clgenfb_info *info;
since there's also a 'struct fb_info' now, I found this really confusing,
and unified usage as:
cirrusfb_info *cinfo;
fb_info *info;
This accounts for a lot of the search and replace cosmetic upgrade.
(2-A) All of the FB knowledge of FB internals is gone in 2.6
(3-LW) revised maxclock numbers (cirrusfb_board_info_rec.maxclock[5])
In my quest to get fbset to work, I borrowed some maxclock data
from the X.Org tree for various chipsets. It didn't really seem
to help. oh well.
(3-LA) upgraded PCI registration
Instead of doing PCI walking from the driver, we hand off a
pci_device_id table to the PCI subsystem and just get called when
it finds a relevant board.
(4-L) striking lots of __init and __initdata specifiers
I was running into some things not working when I moved the call to
init_vgachip() from the driver registration to set_par(). I thought
perhaps this was due to some things being marked __init accidentally
so I axed said annotations. Turns out it was something else. See 5.
(5-LA) delayed chip initialization, nasty double-set_par() pseudo-bug
Tony says that the fb drivers shouldn't do any chipset initialization
until they get a set_par() call. This way, fb modules can be safely
unloaded if no one gets around to using them, and the vga_con -> fbcon
hand off is smoother, as fbcon can still grab the back-scroll data from
vga_con...
In any case, moving the calls to init_vgachip() and fbgen_do_set_var()
from driver initialization to set_par() revealed that the cirrus
register-writing function needs to be called twice for a mode change to
work. I don't understand why.
(6-LA) split clgen_decode_var() into the bits that check the var and the
bits that actually generate register information (par/regs) to write
Adding modedb hooks here might actually fix fbset, i think...
(7-LW) No longer write the palette in init_vgachip() nor in set_par().
Someone else (fbcon?) seems to be making its own calls to setcolreg()
for us.
(8-LW) setcolreg() -- while removing all of the console cruft, I had
to try to reconstitute the palette code. I think I got this right,
but I could be off -- the penguin boots in the correct colors at least ;-)
(9-L) pan_display() - we don't do wrap, silly. that's only on the amiga.
(10-L) pan+BLT - to make pan play nicely with copyarea()/fillrect()
I had to add a couple of calls to cirrusfb_WaitBLT() to make sure
the engine is idle.
(11-LW) cirrusfb_blank() - I upgraded the switch here to use the new
VESA_* blanking mode constants. I think I translated the right
logic for the right blanking levels.
Signed-off-by: David Eger <eger@havoc.gtf.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] update ikconfig help text
From: "Randy.Dunlap" <rddunlap@osdl.org>
Some elements of ikconfig have been removed, but the help text wasn't
updated to reflect those changes.
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] update ikconfig generator script
From: "Randy.Dunlap" <rddunlap@osdl.org>
http://bugme.osdl.org/show_bug.cgi?id=2701
Current script has problems with some shells and utilities. Remove use of
'echo' in the script.
From: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] hugetlb.c: use safe iterator
From: "Chen, Kenneth W" <kenneth.w.chen@intel.com>
With list poisoning on by default from linux-2.6.7, it's easier than ever to
trigger the bug in try_to_free_low(). It ought to use the safe version of
list iterater.
Signed-off-by: Ken Chen <kenneth.w.chen@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] swsusp minor docs updates
From: Pavel Machek <pavel@ucw.cz>
I shot myself in the foot with swsusp, so I guess documenting that
particular trap is right thing to do (tm). Somehow two copies of "radeon
hint" crept in; fix that, too.
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] Prepare for SMP suspend
From: Pavel Machek <pavel@ucw.cz>
Its very bad idea to freeze migration threads, as it crashes machine upon
next call to "schedule()". In refrigerator, I had one "wake_up_process()"
too many. This fixes it.
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] swsusp: shuffle cpu.c to make it usable for smp suspend
From: Pavel Machek <pavel@ucw.cz>
This moves fix_processor_context() so that additional prototype is not
needed, and adds context * to processor state saving functions, so that
they can be used on SMP. It should be done this way from the beggining.
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] consolidate in-kernel configuration
From: Andy Whitcroft <apw@shadowen.org>
Being able to recover the configuration from a kernel is very useful and it
would be nice to default this option to Yes. Currently, to have the config
available both from the image (using extract-ikconfig) and via /proc we
keep two copies of the original .config in the kernel. One in plain text
and one gzip compressed. This is not optimal.
This patch removes the plain text version of the configuration and updates
the extraction tools to locate and use the gzip'd version of the file.
This has the added bonus of providing us with the exact same results in
both cases, the original .config; including the comments.
Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sparse: fixes for "assignment expression in conditional" in fs/*
From: Mika Kukkonen <mika@osdl.org>
Fix various sparse "assignment expression in conditional" warnings in fs/
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] hugetlb.c - fix try_to_free_low()
From: "Chen, Kenneth W" <kenneth.w.chen@intel.com>
Turn on CONFIG_HIGHMEM and CONFIG_HUGETLBFS. Try to config the hugetlb
pool:
[root@quokka]# echo 100 > /proc/sys/vm/nr_hugepages
[root@quokka]# grep HugePage /proc/meminfo
HugePages_Total: 100
HugePages_Free: 100
[root@quokka]# echo 20 > /proc/sys/vm/nr_hugepages
[root@quokka]# grep HugePage /proc/meminfo
HugePages_Total: 0
HugePages_Free: 0
[root@quokka]# echo 100 > /proc/sys/vm/nr_hugepages
[root@quokka]# grep HugePage /proc/meminfo
HugePages_Total: 100
HugePages_Free: 100
[root@quokka]# echo 0 > /proc/sys/vm/nr_hugepages
[root@quokka]# grep HugePage /proc/meminfo
HugePages_Total: 31
HugePages_Free: 31
The argument "count" passed to try_to_free_low() is the config parameter
for desired hugetlb page pool size. But the implementation took that input
argument as number of pages to free. It also decrement the config
parameter as well. All give random behavior depend on how many hugetlb
pages are in normal/highmem zone.
A two line fix in try_to_free_low() would be:
- if (!--count)
- return 0;
+ if (count >= nr_huge_pages)
+ return count;
But more appropriately, that function shouldn't return anything.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] oom killer: ignore free swapspace
From: William Lee Irwin III <wli@holomorphy.com>
During stress testing at Oracle to determine the maximum number of clients
2.6 can service, it was discovered that the failure mode of excessive
numbers of clients was kernel deadlock. The following patch removes the
check if (nr_swap_pages > 0) from out_of_memory() as this heuristic fails
to detect memory exhaustion due to pinned allocations, directly causing the
aforementioned deadlock.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: SH-3 On-Chip ADC support
From: Paul Mundt <lethal@Linux-SH.ORG>
This adds support for the SH-3's on-chip ADC (which is needed by things like
the touchscreen, etc.).
Signed-off-by: Andriy Skulysh <askulysh@image.kiev.ua>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: dma-mapping updates.
From: Paul Mundt <lethal@Linux-SH.ORG>
This updates the sh dma-mapping code, as well as doing some cleanup in the
consistent API. We also add a consistent_{alloc,free} to the machvec for
platforms that need special handling.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: DMA driver updates.
From: Paul Mundt <lethal@Linux-SH.ORG>
This updates the SuperH DMA driver, as well as cleaning up the registration
interface.
We also drop the use of bitfields in dma-sh since things like the SH4-202,
7751R, 7760, etc. all have a completely different set of register
definitions.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: early printk() cleanup.
From: Paul Mundt <lethal@Linux-SH.ORG>
sh was using its own CONFIG_SH_EARLY_PRINTK, this is no longer necessary as we
can easily work with the generic CONFIG_EARLY_PRINTK.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: fixmap support.
From: Paul Mundt <lethal@Linux-SH.ORG>
This adds fixmap support for sh.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: Renesas HS7751RVoIP board support.
From: Paul Mundt <lethal@Linux-SH.ORG>
This adds support for the Renesas Technology Sales HS7751RVoIP board.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: IDE cleanup.
From: Paul Mundt <lethal@Linux-SH.ORG>
This does a bit of IDE cleanup (in preparation for the SuperH generic IDE host
driver). This also adds SuperH to the list of platforms that are interested
in CONFIG_IDE_MAX_HWIFS.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: ptep_get_and_clear() compile fix.
From: Paul Mundt <lethal@Linux-SH.ORG>
This fixes up a compile error occuring with ptep_get_and_clear() existing in
pgalloc.h. We move it to a somewhat more sensible location instead, and take
this opportunity to make some cleanups for use of generic code in the SH-3
case, etc.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: sh-sci updates.
From: Paul Mundt <lethal@Linux-SH.ORG>
This adds support for the SH7300 as well as the SH5-101/103 processors as well
as specific board support for the RTS7751R2D.
In addition to this, the sh early printk code is gutted so that we use the
generic CONFIG_EARLY_PRINTK interfaces instead.
Signed-off-by: Hiroshi DOYU <Hiroshi_DOYU@montavista.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: SolutionEngine 7300 board support.
From: Paul Mundt <lethal@Linux-SH.ORG>
This adds support for the SH7300 solution engine board (a forward port of the
2.4 code).
Signed-off-by: Hiroshi DOYU <Hiroshi_DOYU@montavista.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: Renesas RTS7751R2D board support.
From: Paul Mundt <lethal@Linux-SH.ORG>
This adds support for the Renesas Technology Sales RTS7751R2D board.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: PCI updates
From: Paul Mundt <lethal@Linux-SH.ORG>
This updates the pci-auto code, as well as adding ops and fixups for the
RTS7751R2D board.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: SH7705/SH7300 subtype support, ST40 updates.
From: Paul Mundt <lethal@Linux-SH.ORG>
This adds support for the SH7705 and SH7300 subtypes and also updates some
ST40-specific FRQCR handling code.
Signed-off-by: Alex Bennee <kernel-hacker@bennee.com>
Signed-off-by: Hiroshi DOYU <Hiroshi_DOYU@montavista.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: VoyagerGX companion chip support.
From: Paul Mundt <lethal@Linux-SH.ORG>
This adds support for the SM501/VoyagerGX companion chip, used by the
RTS7751R2D.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: merge.
From: Paul Mundt <lethal@Linux-SH.ORG>
This merges the remaining sh changes, random bug fixes, added syscalls, cache
fixups, etc. Nothing really eventful.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sh: Consolidate SystemH with other Renesas boards.
From: Paul Mundt <lethal@Linux-SH.ORG>
Nothing really interesting here, with the addition of several other Renesas
boards, we just move the systemh directory to the renesas one to fit in
better with the directory structure.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] md: Fix up handling for read error in raid1.
From: NeilBrown <neilb@cse.unsw.edu.au>
There is severe bit-rot in this code, which is to say that it doesn't work
at all: an io error during read will do bad things. It should work better
with this patch.
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] md: XOR template selection redo
From: NeilBrown <neilb@cse.unsw.edu.au>
From: Josh Litherland <josh@emperorlinux.com>
The XOR routine selection process is often confusing as it often doesn't
choose the routine that measures the fastest, as sometime one routine is
known to have better cache performance.
This patch avoids the comparison when there is a known best choice, and
makes the report more meaningful.
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] kswapd warning fix
mm/vmscan.c: In function `kswapd':
mm/vmscan.c:1139: warning: no return statement in function returning non-void
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] balanced_irq warning fix
arch/i386/kernel/io_apic.c: In function `balanced_irq':
arch/i386/kernel/io_apic.c:582: warning: no return statement in function returning non-void
and clean things up a bit
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] fix broken alpha build ptrace.c error
From: Darren Williams <dsw@gelato.unsw.edu.au>
include/asm/checksum.h:75: warning: `struct in6_addr' declared inside parameter list include/asm/checksum.h:75
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<roland@redhat.com>
[PATCH] fix x86-64 ptrace access to 32-bit vsyscall page
When I made get_user_pages support looking up a pte for the "gate" area, I
assumed it would be part of the kernel's fixed mappings. On x86-64 running
a 32-bit task, the 32-bit vsyscall DSO page still has no vma but has its
pte allocated in the user mm in the normal fashion. This patch makes it
use the generic page-table lookup calls rather than the shortcuts.
With this, ptrace on x86-64 can access a 32-bit process's vsyscall page.
The behavior on x86 is unchanged.
Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: clean up prom.c and related files
Somebody back in the mists of time decided that call_prom and rtas_call
should return longs even though both of those bits of firmware run in
32-bit mode and produce a 32-bit result. To make life more interesting,
the 32-bit result gets zero-extended to 64 bits, which makes checking
for a -1 return value more complicated than it should be.
This patch changes call_prom and rtas_call to return an int, and makes
the corresponding changes to use ints for the variables used to hold
those return values.
While I was doing this I finally got annoyed enough with the strings of
prom_print() and prom_print_hex() calls that we do to write a simple
prom_printf. I deliberately didn't use snprintf because the execution
environment is weird at this point - we aren't running at the address we
are linked at just yet - and I didn't want to inflict that on any code
outside this file. I also did a prom_debug() macro, which eliminated a
few ifdefs.
There are also a bunch of other minor cleanups. This patch makes very
few algorithmic changes but does get rid of a lot of casts. :)
I have been running with this patch for a couple of weeks, and Anton has
tested it too.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] Better memset
Anton noticed in some traces that we were spending an awfully long time
doing a memset. The ppc64 memset is basically unchanged from the ppc32
version, and it only does 4-byte stores and doesn't unroll the loop.
Here's a memset that performs a bit better.
I have been using it for 3 weeks now, and Anton has tested it on a
variety of machines, without problems.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] Clean up head.S whitespace
The whitespace in arch/ppc64/kernel/head.S is a bit all over the place.
This patch fixes it up. This patch changes nothing other than
whitespace.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<benh@kernel.crashing.org>
[PATCH] ppc64: Fix booting on LPAR machines with more than 1 CPU
The exception rewrite contains a small bug that prevents bring up of CPUs
on logically partitioned machines.
The kernel is trying to zero the backlink on the new stack while running
with relocation disabled, which potentially cause it to try to access an
address outside of the region allowed in real mode. This seem to be a
leftover from previous code as we also zero the backlink later after
turning off the MMU.
This patch removes the offending bit.
<Andries.Brouwer@cwi.nl>
[PATCH] revert partition nonsense
Updating my source to 2.6.7 I see that you applied some
nonsense garbage patch. Please undo.
[ Note by Linus: the fact that DOS_EXTENDED_PARTITION is 5, and we're
iterating over slots 1-4 in the partition table, are two totally
unrelated things. Using the symbolic constant does indeed not make
any sense at all here, as Andries so eloquently points out. ]
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] make DVD ioctls that can legitimately fail quiet
DVD_LU_SEND_{AGID,TITLE_KEY} can be legitimately rejected; in that case
we should not spew into logs.
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: trivial drivers/net/* annotations
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: trivial drivers/char/* annotation and format fixes
- trivial annotation in several places in drivers/mtd
- a bunch of debugging printks switched from %x to %llx (they get 64bit
values)
- in doc200[01].c fixed type of (unused) last argument in their
doc_read_ecc().
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: trivial annotations in drivers/char/*
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] isdn_writebuf_stub() sanitized
isdn_writebuf_stub() was always called for userland pointers.
Killed the argument telling whether it's kernel or userland pointer,
killed dead code, updated callers.
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: trivial drivers/isdn/* annotations
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: i2o fixed
Fixes for direct dereferencing of userland pointers in i2o_config.c
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: trivial i2o annotations
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: scsi ->ioctl() annotation
Low-level drivers' ->ioctl() gets a userland pointer from scsi_ioctl();
prototype annotated, so is scsi_debug instance.
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: remove redundant hwgroup->handler checks from ide-taskfile.c
Remove checks for hwgroup->handler == NULL from task_[in,mulin,out]_intr()
(CONFIG_IDE_TASKFILE_IO=n versions). These functions can be called only from
ide_intr() or ide_timer_expiry() and both set hwgroup->handler to NULL first.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: end request fix for CONFIG_IDE_TASKFILE_IO=y PIO handlers
ide_end_drive_cmd() should only be called for "flagged" taskfiles
which have separate PIO handlers so use driver->end_request() instead.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: PIO-in drive busy fix (CONFIG_IDE_TASKFILE_IO=y)
If the drive times out the final status check we should fail the request
instead of setting another handler for the next IRQ.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: check drive->mult_count in flagged_taskfile()
Check drive->mult_count in flagged_taskfile() and fail request early
if necessary so there is no need to do it later in the PIO handlers.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: last IRQ fix for task_mulout_intr() (CONFIG_IDE_TASKFILE_IO=n)
We should wait for the last IRQ after all data is sent.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: remove DTF() debugging printks from ide-taskfile.c
They are off by default and conflict with the future changes.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: add task_multi_sectors() to ide-taskfile.c
Move common code from task_mulin_intr() and task_mulout_intr()
(CONFIG_IDE_TASKFILE_IO=y) to a task_multi_sectors() helper.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: split task_sectors() and task_multi_sectors()
- split __task_sectors() out of task_sectors()
- add bio and buffer versions of task[_multi]_sectors()
- use task_bio_sectors() instead of task_sectors() in pdc4030.c
- move task[_buffer]_sectors() to ide-taskfile.c
- uninline task[_multi]_sectors()
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: don't clear rq->errors for REQ_DRIVE_TASKFILE requests
REQ_DRIVE_TASKFILE requests aren't retried so don't clear rq->errors
in CONFIG_IDE_TASKFILE_IO=n PIO handlers and in CONFIG_IDE_TASKFILE_IO=y
PIO handlers clear rq->errors only for fs requests, flagged_* PIO
handlers were already okay.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: use task_buffer[_multi]_sectors() in ide-taskfile.c
- update rq counters directly in task_buffer_sectors()
- use task_buffer[_multi]_sectors() in taskfile PIO
handlers (CONFIG_IDE_TASKFILE_IO=n and flagged ones) so:
(a) rq->hard_cur_sectors is used for rq mapping
(b) in case of error valid rq->sector is reported
(c) we can s/rq->current_nr_sectors/rq->nr_sectors/ later
- uninline task_buffer_sectors()
- remove not needed !rq->bio code from ide_[un]map_buffer()
(it is used only for fs requests which are always bio based)
- remove no longer needed task_rq_offset()
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: PIO-out setup fixes (CONFIG_IDE_TASKFILE_IO=n)
- setup hwgroup->handler/timer in ->prehandler() (after checking
drive status) and in do_rw_taskfile() only send a command
- make pre_task_mulout_intr() transfer first data block itself
instead of calling ->handler() so we don't have to play tricks
with hwgroup->handler/timer in task_mulout_intr()
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: reduce > 3kb call path in ide-cs
- Reduce large stack usage in ide_config() by using kmalloc(), down
from 0x4a4 bytes to 0x64 bytes (x86-32).
- Little whitespace cleanup.
- Move function comment block to immediately above the function.
Module loaded and unloaded, otherwise not tested (no hardware).
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: hpt36x/37x tuning fix
From: Jonas Thornblad <jonas@thornblad.net>
There is a problem in the hpt366.c driver where the function
ide_config_drive_speed(drive, speed) is called without using the correct
speed variable. The speed variable should use the value returned by
hpt3xx_ratefilter which decides the speed after checking against the bad
drives list.
I believe the following patch fixes the problem.
Slightly reworked by me - Bart.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: check_region removal - trm290.c
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] symlink 1/9: infrastructure and explanation
This patch-kit gets past the limit on nested symlinks, without
incompatible API changes _and_ with killing code duplication in most of
the readlink/follow_link pairs. And no, it's not the old ->getlink()
crap - procfs et.al. are not special-cased there.
Here's how it works:
* ->follow_link() still does what it used to do - replaces
vfsmount/dentry in the nameidata it got from caller. However, it can
also leave a pathname to be resolved by caller.
* we add an array of char * into nameidata; we always work with
nd->saved_names[current->link_count]. nd_set_link() sets it,
nd_get_link() returns it.
* callers of ->follow_link() (all two of them) check if ->follow_link()
had left us something to do. If it had (return value was zero and
nd_get_link() is non-NULL), they do __vfs_follow_link() on that name.
Then they call a new method (->put_link()) that frees whatever has to
be freed, etc.
Note that absolute majority of symlinks have "resolve a pathname" as
part of their ->follow_link(); they can do something else and some don't
do that at all, but having that pathname resolution is very, very
common.
With that change we allow them to shift pathname resolution part to
caller. They don't have to - it's perfectly OK to do all work in
->follow_link(). However, leaving the pathname resolution to caller
will
a) exclude foo_follow_link() stack frame from the picture
b) kill 2 stack frames - all callers are in fs/namei.c
and they can use inlined variant of vfs_follow_link().
That reduction of stack use is enough to push the limit on nested
symlinks from 5 to 8 (actually, even beyond that, but since 8 is common
for other Unices it will do fine).
For those who have "pure" ->follow_link() (i.e. "find a string that
would be symlink contents and say nd_set_link(nd, string)") we also get
a common helper implementing ->readlink() - it just calls
->follow_link() on a dummy nameidata, calls vfs_readlink() on result of
nd_get_link() and does ->put_link(). Using (or not using) it is up to
filesystem; it's a helper that can be used as a ->readlink() for many
filesystems, not a reimplementation of sys_readlink(). However, that's
_MANY_ filesystems - practically all of them.
Note that we don't put any crap like "if this is a normal symlink, do
this; otherwise call ->follow_link() and let it do its magic" into
callers - all symlinks are handled the same way. Which was the main
problem with getlink proposal back then.
That covers almost everything; the only cases left are nfs, ncpfs and
cifs. Those will go later - we are backwards compatible, so it's not a
problem.
First patch: infrastructure - helpers allowing ->follow_link() to leave
a pathname to be traversed by caller + corresponding code in callers.
<viro@www.linux.org.uk>
[PATCH] symlink 2/9: ext2 conversion and helper functions
ext2 conversion (helper functions for that one will be actually
used a lot by other filesystems, so to fs/namei.c they go)
<viro@www.linux.org.uk>
[PATCH] symlink 3/9: trivial filesystems
trivial cases - ones where we have no need to clean up after pathname
traversal (link body embedded into inode, etc.).
Plugged leak in devfs_follow_link(), while we are at it.
<viro@www.linux.org.uk>
[PATCH] symlink 4/9: simple filesystems
cases that can simply reuse ext2 helpers (page_follow_link_light() and
page_put_link()).
<viro@www.linux.org.uk>
[PATCH] symlink 5/9: smbfs
smbfs - switched from on-stack allocation of buffer for link body (!) to
__getname()/putname(); switched to new scheme.
<viro@www.linux.org.uk>
[PATCH] symlink 6/9: xfs
xfs switched to new scheme; leaks plugged.
<viro@www.linux.org.uk>
[PATCH] symlink 7/9: shmfs
shm switched (it almost belongs to SL3, but it does some extra stuff
after the link traversal).
<viro@www.linux.org.uk>
[PATCH] symlink 8/9: befs
befs switched; leaks plugged.
<viro@www.linux.org.uk>
[PATCH] symlink 9/9: jff2
jffs2 switched; leaks plugged.
<david-b@pacbell.net>
[PATCH] USB: EHCI IRQ tweaks
Various tweaks to EHCI IRQ handling, these may affact some systems.
- Delays enabling IRQs until the root hub is more fully set up, so
any "resume detect" IRQs can be handled properly. (Craig Nadler)
- Power down ports on driver shutdown. (Craig Nadler)
- Remove some duplicate irq-sharing logic that somehow crept in; check
only once, and return IRQ_NONE to detect IRQ storms better (db)
- Minor comment fix re integrated TTs. (db)
From: Craig Nadler <craig.nadler@arc.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: usb ethernet gadget build fixes on PXA
Build fixes for ethernet gadget on PXA.
From: Frank Neuber <fn@kernelport.de>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<zinx@epicsol.org>
[PATCH] USB: hid-tmff fix
This fixes a long-standing bug in the hid-tmff driver that
causes it to not work at all.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<jejb@mulgrave.(none)>
qla2xxx: Remove qla_os.h
From: Andrew Vasquez <praka@users.sourceforge.net>
Instead make all files do the proper includes.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Use 64-bit IO addresses in UHCI driver
Thanks to Ludovic Aubry for this patch. It changes some local variables
used by the UHCI driver to store IO addresses from unsigned int to
unsigned long. This is vitally necessary on 64-bit platforms.
From: Ludovic Aubry <laubrycomm@free.fr>
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Imiprove usb_device tracking in dummy_hcd
A tricky problem the dummy_hcd driver has to solve is keeping track of the
usb_device structure that corresponds to a registered gadget. Right now
that's not done very robustly. This patch stores the address of the
structure when a new URB is submitted and also acquires a reference to
make sure that completing the final URB won't deallocate the structure
before dummy_hcd is through with it.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Add mb() during initialization of UHCI controller
In a recent thread it was mentioned that some architectures, such as PPC,
do not guarantee relative ordering between different varieties of
processor/device data transfers. This patch adds an mb() instruction to
the UHCI driver, to insure that the data structures in memory (cached by
the CPU and accessed by DMA) are fully flushed before the controller is
started (by regular bus IO).
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: usb gadget drivers should be stricter about ZLPs
Some USB device controllers make it easy to handle all the various ways
hosts interpret the USB spec about when control-IN transfers need to send
a ZLP ... they can just send one if the host asks, or start the status
stage whenever the host thinks it's time. Other controllers make it hard
to be forgiving in those cases.
This patch updates all the gadget drivers to explicitly set the req->zero
flag to reflect whether the USB spec says a ZLP "must" be sent by the
device. "Forgiving" drivers won't notice the change, but the others need
to see this information passed down from the gadget driver.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<oliver@neukum.org>
[PATCH] USB: GFP_KERNEL in irq
you are using GFP_KERNEL in irq. That's illegal. GFP_ATOMIC must
be used.
Signed-Off-By: Oliver Neukum <oliver@neukum.name>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<oliver@neukum.org>
[PATCH] USB: kaweth not handling ESHUTDOWN
kaweth fails to cleanly shut down operations upon shutdown of the
controller.
Signed-Off-By: Oliver Neukum <oliver@neukum.name>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: gadgetfs AIO support
This patch adds AIO support to gadgetfs, letting user mode programs use
"libaio" to manage USB I/O concurrency with the same API as they may
already be using for disk files. In particular, it's practical to
stream isochronous data to/from userspace using this API, by keeping
an endpoint's I/O queue from emptying.
Each AIO "iocb" in userspace corresponds directly to one "usb_request"
(and one kiocb) in the kernel. Their lifecycles, including cancelation,
overlap completely. That's much of why the patch is so small (surprised
the heck out of me!); that, and using copy_{to,from}_user() rather than
trying fancy dma mapping tricks to attain zerocopy nirvana.
The kernel AIO module forgot to export kick_iocb(), so this adds the
missing declaration ... needed when using gadgetfs as a module.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<hverhagen@dse.nl>
[PATCH] USB: shut-up kaweth usb/net driver
The kaweth usb ethernet driver is pretty noisy. It generates over 40 lines
during a modprobe. The following patch reduces the prints generated by
this driver.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<mdharm-usb@one-eyed-alien.net>
[PATCH] USB: Patch to signal underflow in usb-storage driver
This patch causes the usb-storage driver to return an error indication
(DID_ERROR together with SUGGEST_RETRY) when the amount transferred by a
SCSI command is smaller than the "underflow" amount. Some devices, like
the iRiver H100 series, occasionally transfer 0 bytes with GOOD status.
This change will make the sd driver aware that something unexpected has
happened so it can retry the command.
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 <greg@kroah.com>
<nemosoft@smcc.demon.nl>
[PATCH] USB: PWC 9.0.1
Attached you will find patches that will bring the PWC driver in the kernel
up to version 9.0.1 from 8.12 (9.0 wasn't accepted at first). Patches are
against 2.4.26 and 2.6.7. The main difference with 9.0 is that the
video_relase() routine is now hopefully in line with kernel requirements.
I've also added one more ioctl() call, upon request.
I'm also slightly in the dark on the status of the PWC in the 2.6 kernel;
I've seen two patches: the first was a bad one, since it would crash your
kernel when you unplug the cam. I've seen a second patch to reverse the
first one, but I don't know if that went in. Either way, you might get a
conflict in pwc-if.c in and about the pwc_video_release() routine; this
patch was generated against the clean 2.6.7 kernel source. Should you need
or want to fix it manually, this patch should remove the
pwc_video_release() in the 2.6 kernel.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<greg@kroah.com>
[PATCH] USB: enable the pwc driver to be able to be built again.
<torvalds@ppc970.osdl.org>
Make bitops/cpumask functions be "const" where appropriate.
<akpm@osdl.org>
[NET]: Fix warning in tr.c
A few things popped up when using current gcc cvs.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[NET]: Fix warning in fc.c
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[NETFILTER]: ip_fw_compat_masq.c needs net/ip.h for IP_OFFSET.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[PKT_SCHED]: Fix pkt_sched.h warnings.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
[PKT_SCHED]: Fix typo in config help text, noticed by Geert.
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] symlink: fix missing 'depth' initialization
Now we always care about one part of nameidata --- ->depth. And we need
to make sure it's always initialized.
generic_readlink() was missing that part.
<nico@org.rmk.(none)>
[ARM PATCH] 1942/1: basic LCD support for the PXA270/Mainstone board
Patch from Nicolas Pitre
This is only basic support so the LCD pannel becomes usable
on Mainstone. No PXA270 specific capabilities were added.
The Mainstone defconfig also updated to enable LCD by default.
<akpm@osdl.org>
[PATCH] x86: fix up cpumask breakage
We can't do
&some_inline_function();
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[AGPGART] Fix silly logic bug in AGPx8 ->x4 fallback code.
Spotted by Rainer Klier
Signed-off-by: Dave Jones <davej@redhat.com>
<acme@conectiva.com.br>
[NET] move already shared functions from inet to core
inet_recvmsg, inet_setsockopt, inet_getsockopt and inet_sock_release are
already shared with ipv6 and sctp, will be used as well by the poor cousins,
so reflect this properly renaming them to sock_common_NAME and move them to
net/core/sock.c
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
Signed-off-by: David S. Miller <davem@redhat.com>
<acme@conectiva.com.br>
[NET] share tcp_v4_destroy_sock with tcpv6
tcp_v6_destroy_sock just extends tcp_v4_destroy_sock, so reuse the
tcp_v4_destroy_sock instead of cut'n'pasting it into tcpv6.
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
Signed-off-by: David S. Miller <davem@redhat.com>
<stevef@smfhome1.smfdom>
Do not loop in cifsd demultiplex thread when someone sigkills it.
On unmount of second user on same tcp session, make sure that we
do not kill cifsd prematurely.
Signed-off-by: Steve French (sfrench@us.ibm.com)
<akpm@osdl.org>
[SPARC64]: Make find_next_bit take a const pointer.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[SPARC64]: Make ___arch_swapXp() take a const pointer.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
[SPARC64]: Update defconfig.
<herbert@gondor.apana.org.au>
[IPSEC]: Check encap_type at config time.
The following patch moves the udp->encap_type check from the per-packet
hot-path into udp_setsockopt().
As a consequence, this allows user space to detect whether the kernel
actually supports the encap type that they're requesting. Pity no one
did this before the NON-IKE patch was applied. As it is there is no
easy way to detect whether NON-IKE support is present.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@redhat.com>
<herbert@gondor.apana.org.au>
[IPSEC]: Check encap_type at config time, in user API code.
Here is the patch to check encap_type at the earliest possible
opportunity in xfrm_user/af_key.
This will allow us to assume in esp4 that the encap_type from x->encap
is always valid.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@redhat.com>
<Andries.Brouwer@cwi.nl>
[PATCH] isofs fixes
This fixes two things.
On the one hand we have the old "cruft" mount option, that sometimes was
enabled automatically, for ridiculously large files or CDROMs. But what
was ridiculous ten years ago, no longer is. So, only decide that
something is cruft when the user said so.
On the other hand, sometimes we get negative sizes. That is caused by
assignments inode->i_size = isonum_733(), where the latter was declared
integer. I made it unsigned int, as the standard also does.
(Someone with problems replied:
>> Could you test the below?
> Ok I did, the patch seems to work great! Thanks!
)
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: idle disk on resume
From: Jens Axboe <axboe@suse.de>
I need this patch to survive suspend on my powerbook, if the drive is
sleeping when suspend is entered. Otherwise it freezes on resume when it
tries to read from the drive.
Acked by Ben.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: limit max_sectors to 256 for PDC20265
PDC20265 seems to not like large LBA48 requests.
Thanks to Adolfo Gonzalez Blazquez for help in debugging this problem.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<miles@mctpc71.ucom.lsi.nec.co.jp>
[PATCH] v850: guard declaration of handle_IRQ_event with #ifdef !__ASSEMBLY__
Signed-off-by: Miles Bader <miles@gnu.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<miles@mctpc71.ucom.lsi.nec.co.jp>
[PATCH] v850: add missing end-of-line backslash to vmlinux.lds.S
Signed-off-by: Miles Bader <miles@gnu.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<miles@mctpc71.ucom.lsi.nec.co.jp>
[PATCH] v850: add find_next_bit
[Since many archs use the same implementation of find_next_bit, it might
be nice to have `generic_find_next_bit' or something.]
Signed-off-by: Miles Bader <miles@gnu.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<miles@mctpc71.ucom.lsi.nec.co.jp>
[PATCH] v850: remove bogus __ARCH_WANT_ macro defs
Signed-off-by: Miles Bader <miles@gnu.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<miles@mctpc71.ucom.lsi.nec.co.jp>
[PATCH] make CONFIG_SYSVIPC depend on CONFIG_MMU
The sysv-ipc code uses mm/shmem.o, which in turn uses VM stuff and is
only compiled on MMU systems.
Signed-off-by: Miles Bader <miles@gnu.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jbarnes@engr.sgi.com>
[PATCH] ia64: early console registration
Allow consoles to register early if they're capable of early output.
If one of them registers successfully, set CPU 0 online so that
printk() will actually call the console drivers.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<holt@sgi.com>
[PATCH] ia64: Fixups for the SN2 Block Transfer Engine
The attached patch contains some cleanups to the bte code and introduces
the ability to excercise bte interfaces on other nodes. This is an SGI
Altix specific piece of hardware.
Signed-off by: Robin Holt
Signed-off by: Jesse Barnes
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<jbarnes@engr.sgi.com>
[PATCH] ia64: make SN2 use 16MB granules, too
Altix needs to use 16MB granules to prevent attribute aliasing in low
memory space. This patch makes the kernel configuration system
enforce that requirement.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<bjorn.helgaas@hp.com>
[PATCH] ia64: minor IOSAPIC cleanup
Introduce iosapic_{read,write,eoi} to hide the IOSAPIC REG_SELECT
stuff. i386 and x86_64 already do this for io_apic_{read,write}.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<jbarnes@engr.sgi.com>
[PATCH] ia64: another sn2_defconfig update
This update fixes the FAT default NLS options and trims some others.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<alex.williamson@hp.com>
[PATCH] ia64: trashing bootmem on non-NUMA boxes
call_pernode_memory() is rounding memory regions to page boundaries,
but in the non-NUMA case, it's incorrectly passing the rounded start and
the original length. Any reserved memory regions sitting beyond a
memory region that isn't nicely aligned is potentially at risk for
getting freed and trashed. This is a fairly nasty bug that can bite in
very hard to find ways. In my case, the EFI memory map was getting
overwritten, causing the ACPI methods to access chipset registers
cachable instead of uncachable. It could potentially be causing some of
the random hangs and strange behavior we're seeing lately.
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<rmk@flint.arm.linux.org.uk>
[PCMCIA] Fix bogus align value
0 is not a valid alignment value for allocate_resource()
<rmk@flint.arm.linux.org.uk>
[ARM] Fix SA1100 build after timer changes.
<dougg@torque.net>
[PATCH] More advansys fixes
- fix PCI wide "use_sg > 0" problem introduced in lk 2.6.7-bk2
- fix ISA oops (present in all versions of the lk 2.6 series to date)
- bump version to "3.3K" and add comments
- fix compilation error when ADVANSYS_DEBUG defined
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
advansys: add warning and convert #includes
The DMA conversion of the advansys driver is still
broken. Add a #warning to the driver and a comment
above it explaining what needs to be done.
Mark the driver as BROKEN because of the warning
Also remove the #include "scsi.h"
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] ppc32: fix compilation
PPC has an out of line and exported abs() that gives lots of nice and
wierd compilation erorrs. Also kill the duplicate cpu_online() in
asm-ppc/smp.h.
<hch@infradead.org>
[PATCH] MPT Fusion driver 3.01.09 update
On Mon, Jun 21, 2004 at 12:16:08PM -0400, Moore, Eric Dean wrote:
> We are pleased to announce the MPT Fusion release candidate for lk 2.6
I've worked with Eric offline to resolve the issue we had and get some
more changes in, but he has left for his vacation today. He send me
a patch though and left it to me whether we'd merged it despite only
moderate testing. Given 2.6.7 was just done and he'll certainly be
back before 2.6.8 I'd go for it. Below is the patch rediffed against
scsi-misc-2.6:
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<herbert@gondor.apana.org.au>
[IPSEC]: Fix alen calcs in non-IKE encapsulation.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@redhat.com>
<herbert@gondor.apana.org.au>
[IPSEC]: Remove run-time encap_type checks in esp4.
This allows us to remove all the per-packet checks on x->encap->encap_type.
I've left the check in esp_input just in case someone adds a non-ESP encap
type in future.
However, printing a warning and then continuing is definitely wrong.
So expect a follow-up patch to drop the packet when encap_type is
unknown in esp_input.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@redhat.com>
<herbert@gondor.apana.org.au>
[IPSEC]: Drop bogus NAT-T printks in esp_input.
Here is the patch to drop the packet if encap_type is unknown.
I've also removed the other two bogus printk's as they cannot
occur (printing a message is the last thing you want to do even
if they did occur :).
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@redhat.com>
<hadi@zynx.com>
[PKT_SCHED]: In tca_action_flush, don't pass NULL netlink callback into ops->walk().
Signed-off-by: Jamal Hadi Salim <hadi@zynx.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<herbert@gondor.apana.org.au>
[IPSEC]: Move common code out of udp_encap_rcv().
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@redhat.com>
<randy.dunlap@verizon.net>
[PATCH] fdomain screwup
| From: Andrew Morton
| To: linux-scsi@vger.kernel.org
| Subject: fdomain screwup
|
| - fdomain_setup() is marked __init, but is called from non-__init
| fdomain_16x0_detect()
|
| - fdomain_setup() is declared in drivers/scsi/pcmcia/fdomain_stub.c as
| taking two arguments, but is implemented in fdomain_setup() taking a
| single argument.
|
| Please, never ever ever put extern function declarations in .c files.
| Put it in a header file which is visible to the definition and to all
| callsites.
|
| - fdomain_setup() is declared static, hence the linkage fails.
|
| - fdomain_16x0_bus_reset() is implemented in drivers/scsi/fdomain.c but
| has static scope, so the call from drivers/scsi/pcmcia/fdomain_stub.c
| doesn't work.
[I didn't find this to be the case, so I didn't fix it.]
| - fdomain_16x0_bus_reset() has an extern declaration in
| drivers/scsi/pcmcia/fdomain_stub.c. This should be moved to a header
| file which is visible to etc...
Builds and loads. No hardware to test.
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<James.Bottomley@steeleye.com>
[PATCH] fix aic7xxx probing
aic7xxx probing routines are still wrong on eisa.
Fix eisa by incrementing found if it returns successfully
Also make all the various incarnations of the pci probing routine
consistently return the number of found cards (or 1 for the later
generic device model probing).
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<chas@cmf.nrl.navy.mil>
[ATM]: fix sparse checker warnings (by Stephen Hemminger <shemminger@osdl.org>)
<jejb@raven.il.steeleye.com>
Fix up fdomain after mismerge
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] mptbase.c build fix
drivers/message/fusion/mptbase.c: In function `procmpt_summary_read':
drivers/message/fusion/mptbase.c:5160: parse error before `int'
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@raven.il.steeleye.com>
ncr53c8xx turn on clustering
Since the driver now supports multiple virtual segments
in an iommu situation, it can also support clustering
for non-iommu systems.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] some tmscsim consolidation
On Sun, Jun 06, 2004 at 02:41:56PM +0200, Christoph Hellwig wrote:
> I've looked through my old tmscsim patch queue and found this one:
>
> - merge dc390_initDCB into dc390_slave_alloc
> - merge DC390_release and dc390_shutdown into dc390_remove_one,
> use del_timer_sync to make sure the timer is really deleted on
> removal, adjust locking accordingly
> - some tiny related cleanups
Okay, here's a resend vs current scsi-misc-2.6 that has your three
outstanding merged. Additionally I've also killed dc390_freeDCBs()
as all dcbs are removed in ->slave_destroy.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<g.liakhovetski@gmx.de>
[PATCH] kill obsolete typedefs and wrappers from tmscsim
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<stern@rowland.harvard.edu>
[PATCH] PATCH: (as333) BLIST flag for non-lockable devices
On Wed, 23 Jun 2004, Mike Anderson wrote:
> Since SCSI already has the device list it would seem like we would
> possibly add a new flag like was done for mode sense. As this is not a
> transport issue I would assume we would not want to add flags in
> usb/storage, but handle it in the mid-layer as a SCSI protocol
> non-compliance.
Here is a patch that implements this suggestion. It's rather similar to
the one that Javier Marcet wrote back in January, in
http://marc.theaimsgroup.com/?l=linux-usb-users&m=107345268526718&w=2
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<bjorn.helgaas@hp.com>
[PATCH] Add PCDP console detection support
Add support for the EFI/DIG PCDP console discovery table (see
http://www.dig64.org/specifications/DIG64_HCDPv20_042804.pdf).
This moves the code from drivers/serial/8250_hcdp.[ch] to
drivers/firmware/pcdp.[ch], since it's no longer 8250-specific. It also
obsoletes CONFIG_SERIAL_8250_HCDP, replacing it with CONFIG_EFI_PCDP (which
defaults to Y for ia64).
In a nutshell, HCDP tells us "these UARTs are available for use as a
console," and it's up to the user to explicitly specify the console device.
The kernel can guess in some cases, but not all.
The PCDP (aka HCDP v2) tells us what we really want to know, namely, "this
UART or VGA device is the console device." (It also has provision for
support for new device types.)
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] ppc64: COMMAND_LINE_SIZE fix
In file included from arch/ppc64/kernel/setup.c:37:
include/asm/machdep.h:116: `COMMAND_LINE_SIZE' undeclared here (not in a function)
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: fix oprofile on 970
- Use 970/970FX instead of GPUL
- Add POWER5 and 970FX to systemcfg.h
- Create new cpu feature CPU_FTR_MMCRA_SIHV and use it
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: udbg should use snprintf
Use vsnprintf/snprintf in udbg.c
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: another udbg fix
udbg_read would lock up if ppc_md.udbg_putc didnt exist. Just return 0 and
dont lock up instead.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: udbg fix
Some udbg.c cleanups:
- remove some old comments
- clean up formatting
- remove unused udbg_puthex and udbg_printSP
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: remove a stale comment in rtas.c
rtas.c doesn't call reloc_offset
remove comment from rtas.c and extern function declaration
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<dhowells@redhat.com>
[PATCH] ppc64: fix usage of cpumask_t on iSeries
This fixes a bit of iSeries code that hadn't been changed to reflect that
cpumask_t is now a struct and not an integer type.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] __alloc_bootmem_node should not panic when it fails
__alloc_bootmem_node currently panics if it cant satisfy an allocation for
a particular node. Thats rather antisocial, we should at the very least
return NULL and allow the caller to proceed (eg try another node).
A quick look at alloc_bootmem_node usage suggests we should fall back to
allocating from other nodes if it fails (as arch/alpha/kernel/pci_iommu.c
and arch/x86_64/kernel/setup64.c do).
The following patch does that. We fall back to the regular __alloc_bootmem
when __alloc_bootmem_node fails, which means all other nodes are checked
for available memory.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<stsp@aknet.ru>
[PATCH] larger IO bitmaps
The previous discussion was started here:
http://www.uwsg.iu.edu/hypermail/linux/kernel/0211.0/0477.html but in 2.4
times this was kind of problematic.
Now, with the lazy bitmap allocation and per-CPU TSS, this will really not
drain any resources I think. 8K TSS increase and 8K per process *that does
ioperm()* - I think it is not very bad.
The reasons why I need that, are described in the URL above. Basically this
will allow to use full-screen VESA under dosemu (without LFB though), and this
may be also helpfull for the XFree project and some other projects:
http://www.uwsg.iu.edu/hypermail/linux/kernel/9807.1/1079.html
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@elte.hu>
[PATCH] NX (No eXecute) support for x86
we'd like to announce the availability of the following kernel patch:
http://redhat.com/~mingo/nx-patches/nx-2.6.7-rc2-bk2-AE
which makes use of the 'NX' x86 feature pioneered in AMD64 CPUs and for
which support has also been announced by Intel. (other x86 CPU vendors,
Transmeta and VIA announced support as well. Windows support for NX has
also been announced by Microsoft, for their next service pack.) The NX
feature is also being marketed as 'Enhanced Virus Protection'. This
patch makes sure Linux has full support for this hardware feature on x86
too.
What does this patch do? The pagetable format of current x86 CPUs does
not have an 'execute' bit. This means that even if an application maps a
memory area without PROT_EXEC, the CPU will still allow code to be
executed in this memory. This property is often abused by exploits when
they manage to inject hostile code into this memory, for example via a
buffer overflow.
The NX feature changes this and adds a 'dont execute' bit to the PAE
pagetable format. But since the flag defaults to zero (for compatibility
reasons), all pages are executable by default and the kernel has to be
taught to make use of this bit.
If the NX feature is supported by the CPU then the patched kernel turns
on NX and it will enforce userspace executability constraints such as a
no-exec stack and no-exec mmap and data areas. This means less chance
for stack overflows and buffer-overflows to cause exploits.
furthermore, the patch also implements 'NX protection' for kernelspace
code: only the kernel code and modules are executable - so even
kernel-space overflows are harder (in some cases, impossible) to
exploit. Here is how kernel code that tries to execute off the stack is
stopped:
kernel tried to access NX-protected page - exploit attempt? (uid: 500)
Unable to handle kernel paging request at virtual address f78d0f40
printing eip:
...
The patch is based on a prototype NX patch written for 2.4 by Intel -
special thanks go to Suresh Siddha and Jun Nakajima @ Intel. The
existing NX support in the 64-bit x86_64 kernels has been written by
Andi Kleen and this patch is modeled after his code.
Arjan van de Ven has also provided lots of feedback and he has
integrated the patch into the Fedora Core 2 kernel. Test rpms are
available for download at:
http://redhat.com/~arjanv/2.6/RPMS.kernel/
the kernel-2.6.6-1.411 rpms have the NX patch applied.
here's a quickstart to recompile the vanilla kernel from source with the
NX patch:
http://redhat.com/~mingo/nx-patches/QuickStart-NX.txt
update:
- make the heap non-executable on PT_GNU_STACK binaries.
- make all data mmap()s (and the heap) executable on !PT_GNU_STACK
(legacy) binaries. This has no effect on non-NX CPUs, but should be
much more compatible on NX CPUs. The only effect it has it has on
non-NX CPUs is the extra 'x' bit displayed in /proc/PID/maps.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sysfs: fill_read_buffer() fix
This BUG_ON() triggers for `count = -EFOO' due to PAGE_SIZE being unsigned.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<zwane@linuxpower.ca>
[PATCH] Remove smbfs server->rcls/err
This is a small cleanup requested by Urban, use the rcls/err in smb_request
as opposed to smb_sb_info.
Signed-off-by: Zwane Mwaikambo <zwane@linuxpower.ca>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kaos@sgi.com>
[PATCH] kallsyms: exclude kallsyms-generated symbols
Exclude symbols added by kallsyms itself, so .tmp_kallsyms[12].S have
the same list of symbols.
Signed-off-by: Keith Owens <kaos@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kaos@sgi.com>
[PATCH] kallsyms: verify that System.map is stable
Verify that linking kallsyms into vmlinux generates a stable System.map,
instead of assuming that it is stable.
Add CONFIG_KALLSYMS_EXTRA_PASS as a temporary workaround for unstable maps,
so users can proceed while waiting for kallsyms to be fixed.
Signed-off-by: Keith Owens <kaos@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<coywolf@greatcn.org>
[PATCH] kbuild: distclean srctree fix
I just find a bug that ``make distclean'' cannot remove the editor backup
files and the like when using build directory. That is because the find
command is improperly searching the build directory instead of the
$(srctree) it should.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mbligh@aracnet.com>
[PATCH] make __free_pages_bulk more comprehensible
I find __free_pages_bulk very hard to understand ... (I was trying to mod
it for the non MAX_ORDER aligned zones, and cleaned it up first). This
should make it much more comprehensible to mortal man ... I benchmarked
the changes on the big 16x and it's no slower (actually it's about 0.5%
faster, but that's within experimental error).
I moved the creation of mask into __free_pages_bulk from the caller - it
seems to really belong inside there. Then instead of doing wierd limbo
dances with mask, I made it use order instead where it's more intuitive.
Personally I find this makes the whole thing a damned sight easier to
understand.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rusty@rustcorp.com.au>
[PATCH] Fix race between CONFIG_DEBUG_SLABALLOC and modules
store_stackinfo() does an unlocked module list walk during normal runtime
which opens up a race with the module load/unload code. This can be
triggered by simply unloading and loading a module in a loop with
CONFIG_DEBUG_PAGEALLOC resulting in store_stackinfo() tripping over bad
list pointers.
kernel_text_address doesn't take any locks, because during an OOPS we don't
want to deadlock. Rename that to __kernel_text_address, and make
kernel_text_address take the lock.
Signed-off-by: Zwane Mwaikambo <zwane@fsmlabs.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (modified)
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] dmi_scan: port Acer laptop irq routing workaround to new DMI probing
This patch moves PCI IRQ routing workaround for Acer TravelMate 360 laptop to
arch/i386/pci/irq.c and makes acer_tm360_irqrouting variable static. It also
fixes VisWs build error caused by this workaround code.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] dmi_scan: port PnP BIOS driver to new DMI probing
This patch ports PnP BIOS driver to new DMI probing API.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] dmi_scan: port sonypi driver to new DMI probing
This patch ports sonypi driver to new DMI probing API and removes
is_sony_vaio_laptop global variable.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] dmi_scan: port PIIX4 SMBUS driver to new DMI probing
This patch ports sonypi driver to new DMI probing API and removes
is_unsafe_smbus global variable.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] dmi_scan: port powernow-k7 driver to new DMI probing
This patch ports powernow-k7 driver to new DMI probing API.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] dmi_scan: remove unused ASUS K7V-RM DMI quirk
BROKEN_ACPI_Sx flag doesn't seem to be used anywhere in the kernel, so ASUS
K7V-RM can be removed.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] dmi_scan: port APM BIOS driver to new DMI probing
This patch ports APM BIOS driver to new DMI probing API.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Robert.Picco@hp.com>
[PATCH] hpet fixes
I eliminated the request_irq brain damage, chopped off procfs support
(didn't care for it too much in the first place and it was adopted from
rtc.c), made the check for FMODE_WRITE in hpet_open and responded to a few
other suggestions.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kenneth.w.chen@intel.com>
[PATCH] per node huge page stats in sysfs
It adds per node huge page stats in sysfs.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: mark NFS/TCP server not EXPERIMENTAL
From: Greg Banks <gnb@sgi.com>
NFS/TCP has been used widely for a long time now, and is now enabled by many
distros and typically recommended for lossy or congested networks. This patch
removes the EXPERIMENTAL tag, updates the help text, and changes arch
defconfigs to set it by default (note that several already did so).
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: simplify nfsd4 name encoding.
Use opaque xdr encoding routines from xdr.c instead of rolling our own.
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: simplify nfsd4_release_lockowner
Simplify nfsd4_release_lockowner a bit, factor out code that we need for
another patch.
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: delete an obsolete comment from nfsd rpc code
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: reduce stack usage in nfsd4
nfsd4_proc_compound is using over a thousand bytes of stack.
This is partly because it declares two local svc_fh's, partly because of a big
switch statement which calls a bunch of functions which may be inlined.
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: nfsd4 lockowner fixes
Insist that the first time a client presents a new lockowner, the seqid should
be 0. (RFC 3530 section 8.1.5)
Also, return an error if the client presents a previously-used lockowner as if
it were new.
From: Andy Adamson <andros@citi.umich.edu>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: parse nsfd4 callback information
Preparation for delegations: parse callback information provided in
setclientid request.
From: Andy Adamson <andros@citi.umich.edu>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: improve cleaning up of nfsd4 requests
Currently nfs4_arg->to_free keeps a list of void ptrs on which kfree is called
when freeing the nfs4_arg. This allows us to do cleanup on e.g. xdr decode
failures. To allow more complicated objects to be freed (in particular,
acls), we add a "void (*release)(void *)" to allow us to request something
other than kfree be called when freeing.
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: allow user to set NFSv4 lease time.
Allow the lease to be set from /proc/fs/nfs/nfsv4leasetime.
To comply with rfc3530, this appears as a server reboot from the point of view
of the client, which must reclaim state with the grace period.
From: Andy Adamson <andros@citi.umich.edu>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] i386: uninline memmove
Using current gcc CVS I hit a piece of code in which the compiler was emitting
a memmove() call. The kernel link failed.
Uninline it.
Also, move the memcpy and memset exports into memcpy.c.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sds@epoch.ncsc.mil>
[PATCH] SELinux: fix build with CONFIG_SECURITY_NETWORK=n
SELinux should just drop out the socket and netfilter hooks when that is
disabled.
The problem was introduced because of the fine-grained netlink patches,
which made the selinux_netlink_send/recv hook functions depend on
CONFIG_SECURITY_NETWORK but the netlink_send/recv hooks themselves are not
dependent on it.
Need to move selinux_netlink_send/recv back out of the conditional block,
and provide a static inline stub for selinux_nlmsg_perm if
CONFIG_SECURITY_NETWORK is not defined.
Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<juhl-lkml@dif.dk>
[PATCH] tidy up the identify_cpu() output
Here's a patch to line up the "CPU: After * identify, caps:" messages
produced by printk's in arch/i386/kernel/cpu/common.c
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<arjanv@redhat.com>
[PATCH] Permit root to choose vfat policy to UTF8
Right now the kernel detects the sysadmin trying to set the iocharset of
vfat to UTF8 and prevents this with an error. While I can see that this is
not recommended, enforcing this is policy that probably doesn't belong in
the kernel. The patch below makes this situation a warning and a
recommendation instead of a strong blockage.
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=126641
is an example of a sysadmin disliking this policy enforcement.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] crc: add common CRC16 module
Currently we have 8 copies of CRC16 calculation table in different device
drivers, this patch creates common crc16.c module to replace them.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] crc: use it in async PPP driver
This patch makes async PPP driver use common crc16 code.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] crc: use it in IRDA drivers
This patch makes IRDA subsystem use common crc16 code.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] crc: use it in ISDN drivers
This patch makes various ISDN drivers use common crc16 code.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] crc: use it in AX.25 drivers
This patch makes AX.25 drivers use common crc16 code.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kenneth.w.chen@intel.com>
[PATCH] Fix direct I/O into hugetlb page
Hit a kernel oops on 2.6.7 kernel when doing direct I/O to hugetlb page.
The destructor of compound page was moved into page->mapping since 2.6.6.
It got interfered with set_page_dirty() for hugetlb page: an O_DIRECT read
into first tail page of the compound page will fool set_page_dirty() to
deference page->mapping->a_ops and then kernel oops. Patch to fix the
oops. We do just like what bio_set_pages_dirty() does.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mbligh@aracnet.com>
[PATCH] fix NUMA boundaray between ZONE_NORMAL and HIGHMEM
From: Andy Whitcroft <apw@shadowen.org>
This patch eliminates the false hole which can form between ZONE_NORMAL and
ZONE_HIGHMEM. This is most easily seen when 4g/4g split is enabled, but
it's always broken, and we just happen not to hit it most of the time.
Basically, the patch changes the allocation of the numa remaps regions (the
source of the holes) such that they officially fall within VMALLOC space,
where they belong.
Tested in -mjb for a couple of months, and again against 2.6.7-mm1.
Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Martin J. Bligh <mbligh@aracnet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<dhowells@redhat.com>
[PATCH] missing semicolon in 2.6.7 VIODASD driver
There appears to be a missing semicolon in the VIODASD driver in 2.6.7.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulkf@microgate.com>
[PATCH] ppp_generic.c get_filter made conditional
Add #ifdef CONFIG_PPP_FILTER around get_filter implementation which is only
used when this option is enabled. This prevents compiler warning (unused
function) when CONFIG_PPP_FILTER is not defined.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bart@samwel.tk>
[PATCH] laptop-mode documentation update
The laptop mode docs don't say that no kernel configuration changes are
needed to use laptop mode. That's caused some people to look for the
option. This patch makes the doc explicitly mention the lack of an option.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] inodes_stat.nr_unused fix
__sync_single_inode() is forgetting to increment inodes_stat.nr_unused when
moving a previously-dirty inode onto the inode_unused list.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bart@samwel.tk>
[PATCH] Laptop mode control script improvements
From: Herve Eychenne <rv@eychenne.org>
Clean up the script. This also makes it two times faster. (Thanks to
Herve Eychenne.)
- moved variable definitions to the top, for easier configuration
- the script contains bashisms, so make it /bin/bash
- use sed -e'...' -e '...' instead of sed | sed
- avoid subshells: () changed to {}
- various other minor optimizations and improvements
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pavel@ucw.cz>
[PATCH] swsusp.S: meaningful assembly labels
This introduces meaningfull labels instead of .L1234, meaning code is
readable, kills alignment where unneccessary, and kills TLB flush that was
only pure paranoia (and slows it down a lot on emulated systems).
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lcapitulino@prefeitura.sp.gov.br>
[PATCH] drivers/char/ipmi/ipmi_si_intf.c warnings
drivers/char/ipmi/ipmi_si_intf.c: In function `acpi_gpe_irq_setup':
drivers/char/ipmi/ipmi_si_intf.c:1173: warning: passing arg 4 of `acpi_install_gpe_handler' from incompatible pointer type
drivers/char/ipmi/ipmi_si_intf.c: In function `acpi_gpe_irq_cleanup':
drivers/char/ipmi/ipmi_si_intf.c:1193: warning: passing arg 3 of `acpi_remove_gpe_handler' from incompatible pointer type
Signed-off-by: Luiz Capitulino <lcapitulino@prefeitura.sp.gov.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hugh@veritas.com>
[PATCH] anon_vma list locking bug
Vladimir Saveliev reported anon_vma_unlink list_del BUG (LKML 24 June).
His testing is still in progress, but we believe it comes from a nasty
locking deficiency I introduced in 2.6.7's anon_vma_prepare.
Andrea's original anon_vma_prepare was fine, it needed no anon_vma lock
because it was always linking a freshly allocated structure; but my
find_mergeable enhancement let it adopt a neighbouring anon_vma, which of
course needs locking against a racing linkage from another mm - which the
earlier adjust_vma fix seems to have made more likely.
Does anon_vma->lock nest inside or outside page_table_lock? Inside, but
that's not obvious without a lock ordering list: instead of listing the
order here, update the list in filemap.c; but a separate patch because
that's less urgent and more likely to get wrong or provoke controversy.
(Could do it with anon_vma lock after dropping page_table_lock, but a long
comment explaining why some code is safe suggests it's not.)
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<juhl-lkml@dif.dk>
[PATCH] cpufreq_delayed_get() inlining fix
Here's a patch to reorder timer_tsc.c so gcc 3.4 does not fail to inline
and thus fix the warning "arch/i386/kernel/timers/timer_tsc.c:30: warning:
inlining failed in call to 'cpufreq_delayed_get': function body not
available"
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] lock ordering comment update
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] ext3: direct-io transaction extending fix
ext3_direct_io_get_blocks() is misinterpreting the return value from
ext3_journal_extend(), and is consequently running out of buffer credits and
going BUG on tremendously large direct-io writes. Fix that up.
Also, I note that the really large direct-io writes can hold a transaction
open for the entire duration, which can be minutes. This violates ext3's
attempt to commit data at regular intervals. Fix that up by looking at the
transaction state: if it's T_LOCKED, shut off the current handle so the
pending commit can complete.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rmk+lkml@arm.linux.org.uk>
[PATCH] ARM COMMAND_LINE_SIZE build fix
Rework the declaration, sizing and memcpying of saved_command_line[] so
that ARM doesn't need to implement unwelcome header file nestings.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hugh@veritas.com>
[PATCH] Don't hold i_sem on swapfiles
We permanently hold the i_sem of swapfiles so that nobody can addidentally
ftruncate them, causing subsequent filesystem destruction.
Problem is, it's fairly easy for things like backup applications to get
stuck onthe swapfile, sleeping until someone does a swapoff.
So take all that out again and add a new S_SWAPFILE inode flag. Test that
in the truncate path and refuse to truncate an in-use swapfile.
Synchronisation between swapon and truncate is via i_sem.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] ext2_setattr retval fix
ext2_setattr() drops the inode_setattr() return value on the floor. This is
very bad - I/O errors during truncate are lost.
The patch changes ext2_setattr() so that we no longer call ext2_acl_chmod() if
inode_setattr(), which is what ext3 does.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] reiserfs_setattr retval fix
reiserfs() is also dropping inode_setattr() retvals on the floor.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] jfs_setattr() fix
jfs is dropping inode_setattr()'s return value.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] cifs_setattr() retval fix
CIFS is failing to propagate the inode_setattr() return value.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] ncpfs_setattr() retval fix
ncpfs is failing to propagate the inode_setattr return value.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] affs_setattr() retval fix
affs is failing to propagate the inode_setattr() return value.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sfr@canb.auug.org.au>
[PATCH] PPC64 iSeries fails to boot
Jeremy Katz of Red Hat reported that his iSeries machine would not boot
with 2.6.7 based kernels.
It appears that with the inclusion of Paul Mackerras' patch "Optimize
exception/syscall entry/exit" a small previous patch got reverted. Here
is that patch again. The lack of this patch does not stop all iSeries
machines booting, but it does stop some.
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davem@nuts.davemloft.net>
[SPARC64]: No longer set WANT_PAGE_VIRTUAL.
Also uninline pfn_to_page and page_to_pfn.
Struct page is now 8 bytes smaller.
<stevef@smfhome1.smfdom>
Fix cifs xid transaction counts to be more consistent. Start using __set_page_dirty_no_buffers.
Signed-off-by: Steve French (sfrench@us.ibm.com)
<bunk@fs.tum.de>
[NET]: Kill spurious ifndef in net/ip.h
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
[NET]: Fix SO_{RCV,SND}TIMEO getsockopt handling.
A microsecond is 1 millionth of a second not
1 thousandth of a second.
Noticed by Markus Mottl <markus@oefai.at>
Signed-off-by: David S. Miller <davem@redhat.com>
<jhf@rivenstone.net>
[PATCH] ppc32: command_line_size build fix
We need setup.h for COMMAND_LINE_SIZE.
Signed-off-by: Joseph Fannin <jhf@rivenstone.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<apw@shadowen.org>
[PATCH] ia32: fix deadlocks when oopsing while mmap_sem is held
If a fault in the kernel leads to an unexpected protection fault whilst in
a code path which holds mmap_sem we will deadlock in do_page_fault() while
trying to classify the fault. By carefully testing the source of the fault
we can detect and OOPS on the vast majority of these, greatly enhancing
diagnosis of such bugs.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] x86 stack dump fixes
- Fix the !CONFIG_FRAME_POINTER && !CONFIG_KALLSYMS output formatting.
- Make print_context_stack() static
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<zwane@linuxpower.ca>
[PATCH] Fix smbfs readdir oops
This has been reported a couple of times and is consistently causing some
folks grief, so Urban, would you mind terribly if i send this patch to at
least clear current bug reports. If there is additional stuff you want
ontop of this let me know and i can send a follow up patch.
The bug is that at times we haven't completed setting up the smb_ops so we
have a temporary 'null' ops in place until the connection is completely up.
With this setup it's possible to hit ->readdir() whilst the null ops are
still in place, so we put the process to sleep until the connection setup
is complete and then call the real ->readdir().
This patch addresses the bugzilla report at
http://bugzilla.kernel.org/show_bug.cgi?id=1671
Signed-off-by: Zwane Mwaikambo <zwane@linuxpower.ca>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<eger@havoc.gtf.org>
[PATCH] radeonfb accel capabilities
Here's the accel capabilities patch for radeonfb. It updates radeonfb to
advertise its acceleration capabilities via fbinfo.flags. I've tested this
on my box, and it gives me a nice fast console.
defect: "$ fbset -accel 0" doesn't work for radeonfb -- disabling accel
will only work from the kernel command line :-/
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: David Eger <eger@havoc.gtf.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<alan@redhat.com>
[PATCH] vc locking
Like a few other drivers the vc driver is doing unlocked careless
references to file offsets. Its got kind of 2.2 locking that hasnt been
updated in the lseek function so someone at least tried.
Fortunately we have a real lock for this and can just make lseek use that
too.
The 'assume 64bit load is atomic' bug seems to be very widely spread
akpm@osdl.org:
Move declarations to vt_kern.h
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<apw@shadowen.org>
[PATCH] fix GFP zone modifier interators
For each node there are a defined list of MAX_NR_ZONES zones. These are
selected as a result of the __GFP_DMA and __GFP_HIGHMEM zone modifier flags
being passed to the memory allocator as part of the GFP mask. Each node
has a set of zone lists, node_zonelists, which defines the list and order
of zones to scan for each flag combination. When initialising these lists
we iterate over modifier combinations 0 .. MAX_NR_ZONES. However, this is
only correct when there are at most ZONES_SHIFT flags. If another flag is
introduced zonelists for it would not be initialised.
This patch introduces GFP_ZONETYPES (based on GFP_ZONEMASK) as a bound for
the number of modifier combinations.
Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adobriyan@mail.ru>
[PATCH] Remove include/asm-*/init.h
There's no reason to keep files that
a) nobody #include's
b) produce #error
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Andries.Brouwer@cwi.nl>
[PATCH] minor CAP_DAC_OVERRIDE fix
CAP_DAC_OVERRIDE fails to give search permission in a directory with
mode 0.
Patch acked by Chris Wright <chrisw@osdl.org>
Signed-off-by: Andries Brouwer <aeb@cwi.nl>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torvalds@ppc970.osdl.org>
ppc64: fix silly typo ("1" vs "i").
<rmk@flint.arm.linux.org.uk>
[ARM] Update ARM kernel install script
- fix up for kbuild changes
- run users own kernel install script if present
<wli@holomorphy.com>
[AIO]: kiocb->private is too large for kiocb's on-stack.
sizeof(struct kiocb) is dangerously large for a structure commonly
allocated on-stack. This patch converts the 24*sizeof(long) field,
->private, to a void pointer for use by file_operations entrypoints.
A ->dtor() method is added to the kiocb in order to support the release
of dynamically allocated structures referred to by ->private.
The sole in-tree users of ->private are async network read/write,
which are not, in fact, async, and so need not handle preallocated
->private as they would need to if ->ki_retry were ever used. The sole
truly async operations are direct IO pread()/pwrite() which do not
now use ->ki_retry(). All they would need to do in that case is to
check for ->private already being allocated for async kiocbs.
This rips 88B off the stack on 32-bit in the common case.
Signed-off-by: William Lee Irwin III <wli@holomorphy.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<olh@suse.de>
[DECNET]: Fix signed bug in net/decnet/dn_nsp_in.c:dn_nsp_linkservice()
char can be either signed or unsigned, depending on the target system.
Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: David S. Miller <davem@redhat.com>
<kdesler@soohrt.org>
[NET]: Fix typos in pktgen docs.
<noll@mathematik.tu-darmstadt.de>
[PATCH] nfs oops fix
Al's current changes to struct nameidata broke nfsroot for my discless
clients (oops in nfs_fill_super). The patch below fixes this problem
for me.
Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
Cc: <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] remove extraneous security_inode_setattr call in hugetlbfs
remove extraneous security_inode_setattr call in hugetlbfs, it's already
done by VFS.
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nico@cam.org>
[PATCH] move prototype for __get_vm_area() to a sane location
There are currently two files besides mm/vmalloc.c that make use of that
function:
- arch/sh/kernel/cpu/sh4/sq.c
which defined its own prototype locally risking not being in sync with
the real function, and
- arch/arm/kernel/module.c which has no prototype at all and cause
build warnings.
This fixes those issues
<stevef@stevef95.austin.ibm.com>
hash cifs inodes
Signed-off-by: Steve French (sfrench@us.ibm.com)
<hch@lst.de>
[NETLINK]: Fix NLMSG_OK/RTA_OK length checking.
Verify at least a full header is there before derefencing
length struct member.
<greg@kroah.com>
USB: provide support for the HX version of pl2303 chips
Thanks to Gordon Elam <gbe@shoremicro.com> for the information needed
to do this.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stevef@smfhome1.smfdom>
merge /proc/fs/cifs/SimultaneousOps into /proc/fs/cifs/Stats
Signed-off-by: Steve French (sfrench@us.ibm.com)
<rmk@flint.arm.linux.org.uk>
[ARM] Move ZTEXTADDR/ZBSSADDR initialisation to compressed/Makefile
Since this is where these two variables are used, it makes sense to
have them in that makefile. Also, consolidate "targets"
initialisation, fixes a missing FORCE dependency for the uImage rule,
and remove more FTVPCI code.
<rmk@flint.arm.linux.org.uk>
[ARM] arch/arm/boot variable name consistency.
For clarity and consistency, use the same name for makefile and
linker symbols.
<rmk@flint.arm.linux.org.uk>
[ARM] Fix install/zinstall to work with separated source/build trees.
<rmk@flint.arm.linux.org.uk>
[ARM] Convert bootp to use kbuild infrastructure.
<rmk@flint.arm.linux.org.uk>
[ARM] Kernel boot decompressor updates
- use 'Image' target for kernel image to be compressed rather than
duplicating its generation.
- use .incbin-based generation of ELF objects from binary data rather
than 'ld'-based generation.
<rmk@flint.arm.linux.org.uk>
[ARM] Prevent static data in misc.o
Static data causes GOTOFF relocations to be used, which won't work
because we want to relocate the .data section separately from the
.text section. Therefore, force all data to be nonstatic.
<rmk@flint.arm.linux.org.uk>
[ARM] EBSA110 I/O and decompressor fixes.
This fixes the buggy decompressor assembly, and fixes PCMCIA IO
to use the correct byte lane when accessing certain PCMCIA cards.
<rmk@flint.arm.linux.org.uk>
[ARM] arch/arm/Makefile cleanups
Clean up bzImage target, remove a couple of obsolete testing targets,
and add better bootpImage help text.
<rmk@flint.arm.linux.org.uk>
[ARM] Move ISA_DMA_THRESHOLD to asm/memory.h
This allows machine classes to override ISA_DMA_THRESHOLD as
necessary.
<rmk@flint.arm.linux.org.uk>
[ARM] Move arch_adjust_zones to asm/memory.h
This places arch_adjust_zones along side ISA_DMA_THRESHOLD. These
two are related, but having them in separate files means its not
obvious that they are.
ISA_DMA_THRESHOLD is a DMA mask which must be defined such that it
matches the memory handed out by GFP_DMA, which in turn is controlled
by arch_adjust_zones.
<paulus@samba.org>
[PATCH] ppc64: fix memset
This fixes a bug in the ppc64 memset where the code that gets the
destination address aligned (or is supposed to) was looking at the
bottom 3 bits of the count rather than the destination address. The
result of this was that the kernel wouldn't boot on POWER3 machines.
The patch also removes an unnecessary duplicate instruction.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] sparse: fix ugly include/linux/efi.h typedef
efi.h declares a function type, and then uses that as an argument to
another function, and expects the compiler to magically demote the
function to a function pointer.
Even a gcc person (rth) was surprised that this was legal, and it
doesn't match any other use of a function pointer in the kernel, and
sparse doesn't like the implicit type-conversion.
So make the type sane in the first place, instead of depending on
a very weird corner case of the C language.
<aia21@cam.ac.uk>
[PATCH] Remove NOOP code from fs/buffer.c::drop_buffers()
I noticed that fs/buffer.c::drop_buffers() contains some code that
AFAICS doesn't actually do anything other than waste cpu cycles so here
is patch to remove it... The local variable was_uptodate is being
messed with but it is not being read anywhere so it seems entirely
pointless.
I assume this must be a remainder from old code which mucked around with
the page uptodateness but which has since been (re-)moved.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torsten.scherer@uni-bielefeld.de>
[PATCH] USB Storage: unusual_devs.h addition
took me a while to get my external usb drive running under linux-2.6.6,
appears to need the appended fix. according to the header in unusual_devs.h
one should send them to you, so here you go.
the funny thing is that it works fine unter linux-2.6.0-test11 on different
hardware, but then i'm out of my depth concerning what might have been
changed in the usb driver in the meantime. i don't really follow the
changes. i didn't find any real documentation about what these flags do,
only a couple of "my usb drive worked with 2.4 but doesn't work any more
with 2.6" messages on the web, and some of them pointed to unusual_devs.h. i
do not claim to know what i've done with this fix, but i'd like to see it
officially included. :-)
T: Bus=04 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#= 2 Spd=480 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0402 ProdID=5621 Rev= 1.03
S: Product=USB 2.0 Storage Device
S: SerialNumber=00042222200000113608
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<slansky@usa.net>
[PATCH] USB: PL2303 module, new IDs
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<akpm@osdl.org>
[PATCH] USB: pwc-uncompress.h
For some reason, gcc-2.95.4 dies horridly on those asmlinkage
declarations.
I was unable to work out _why_ those functions have asmlinkage, as there
seem to be no instances of them - nobody calls
pwc_register_decompressor().
What's up with that?
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<herbert@gondor.apana.org.au>
[PATCH] USB: Fix pegasus_set_multicast lockup in drivers/usb/net/pegasus.c
I strongly recommend that this patch be applied.
Without this patch, running tcpdump on an SMP machine with the
pegasus adapter locks up 9 times out of 10. This is what happens:
CPU0 CPU1
pegasus_start_xmit
netif_stop_queue
pegasus_set_multicast
netif_stop_queue
netif_wake_queue
Which crashes if another packet is sent to pegasus_start_xmit before
the first one is finished.
If there are other drivers doing this, please fix them too.
PS I submitted this to Petkan years ago but he probably lost it.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB Storage: Unusual_devs.h update
On Sat, 26 Jun 2004, Edward C. Bailey wrote:
> Hello,
>
> I was downloading some pictures from my Digital Wallet to my Fedora
> Core 2 system at the same time I happened to be watching
> /var/log/messages. Here's what I saw:
>
> Jun 26 12:16:02 raptor kernel: usb 1-1.2: new full speed USB device using address 6
> Jun 26 12:16:02 raptor kernel: usb-storage: This device (097a,0001,0001 S 06 P 01) has unneeded SubClass and Protocol entries in unusual_devs.h
> Jun 26 12:16:02 raptor kernel: Please send a copy of this message to <linux-usb-devel@lists.sourceforge.net>
>
> Given that Minds@Work are out of business, you might not care about this
> information, but I thought I'd pass it on, just in case you do... :-)
What the heck, we'll use it anyway. Thanks for sending this in.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<rmk@flint.arm.linux.org.uk>
[ARM] Reliably update SIZEOF_MACHINE_DESC
Generate SIZEOF_MACHINE_DESC using asm-offsets method rather than
relying on people updating the definition in asm/mach/arch.h
<rmk@flint.arm.linux.org.uk>
[ARM] MMC mclk is no longer used, so remove it.
<rmk@flint.arm.linux.org.uk>
[ARM] Miscellaneous fixes
- Remove 'arc' machine name from Makefile
- clk_set_rate() should return non-zero atm.
- proc-sa1100.S doesn't need asm/ptrace.h
- update mach-types
- kill line of spaces in clock.h
<bjorn.helgaas@hp.com>
[PATCH] ia64: define cpu_logical_id() always
Define cpu_logical_id() even when !SMP. I added uses of this in some
iosapic printk's, which broke the UP build.
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<bjorn.helgaas@hp.com>
[PATCH] ia64: fix a couple of comment typos
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<hjl@lucon.org>
[PATCH] ia64: Don't use -mtune=merced for gcc 3.4
Gcc 3.4 has a new DFA scheduler for ia64. Unfortunately, it is not
well tested for Itanium 1. When I tried to use gcc 3.4 to compile
2.6 kernel configured for Merced, gcc failed in many places:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15598
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15653
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15655
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16130
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16142
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16143
Some of them have been fixed. But I am afraid many more remain. I don't
know how many Itanium 1 machines left in production use. If people want
to optimize kernel for Itanium 1, they can stick with the older gccs.
Or they should upgrade their machines. I think the gcc developer's time
should be better spent on somewhere else. I have been using this patch
for a while, kernel seems to work OK.
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<kenneth.w.chen@intel.com>
[PATCH] ia64: change ia64_switch_mode_{phys,virt}() to preserve bsp/sp
Change ia64_switch_mode_phys() and ia64_switch_mode_virt() to preserve
the virtual sp/bsp and update the call-sites accordingly. This avoids
problems with the init_task pointer which lives in region 5 now.
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<kaber@trash.net>
[NETFILTER]: Fix IP_NF_TARGET_NOTRACK config deps.
<hadi@zynx.com>
[NET]: Two tc action fixes.
Another patchlet after turning on preempt and rerunning tests.
- against dev.c is a genuine bug - i wish preempt would have
given a more sane hint. Strange on how its a non issue when preempt is
off.
- against act_api.c is just an annoyance. I removed the kmod because it
will only make sense to list actions if policies exist for that action.
And if policies exist, the module would be loaded.
Signed-off-by: Jamal Hadi Salim <hadi@zynx.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<kenneth.w.chen@intel.com>
[PATCH] ia64: Clean up needlessly large stack frames in PAL-call stubs
The code allocated all 96 stacked registers, for no apparent reason.
Also, fix ia64_pal_call_static() to switch RSE to enforced-lazy, LE
mode before the PAL-call.
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<shemminger@osdl.org>
[PKT_SCHED]: Packet scheduler exports.
The packet scheduling code has some ugly define's which were to deal with
configuration possibilities and the old style module exports. With the current
2.6 method, this is unnecessary.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<greg@kroah.com>
USB: fix bug where removing usb-serial modules or usb serial devices could oops
This fixes the issue where the Generic driver would bind to all usb-serial
devices, so the disconnect would not properly go to the real driver that
controlled the device. This was very bad when unloading the module with
the device still connected.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<torvalds@ppc970.osdl.org>
sparse: fix pointer/integer confusion
I don't think we're in K&R any more, Toto.
If you want a NULL pointer, use NULL. Don't use an integer.
Most of the users really didn't seem to know the proper type.
<kenneth.w.chen@intel.com>
[PATCH] ia64: fix incorrect initialization of ar.k4 for BP
The patch to move the current pointer for init_task from region 7 to
region 5 inadvertendly caused ar.k4 (CURRENT_STACK) to be initialized
improperly for the bootstrap processor. Fix this by initializing it
to -1.
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<shemminger@osdl.org>
[PKT_SCHED]: Bad TDIFF_SAFE in csz.
This code in the csz scheduler, is just plain broken. The TDIFF_SAFE
effectively expands to:
unsigned long delay = now - q->t_c;
if (delay > 0) {
delay = 0;
goto do_reset;
}
if (delay >> q->delta_log)
So delay is always 0! I assume that what was originally intended
is the to keep delay bounded to 1<<q->delta_log.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<shemminger@osdl.org>
[PKT_SCHED]: Eliminate guard from TDIFF_SAFE.
The last argument in the PSCHED_TDIFF_SAFE is no longer used;
only usage eliminated by previous patch. It gets rid of a bad macro
usage.
Also, can use the standard min_t macro which also eliminates the
macro problem of double evaluation of bound.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<shemminger@osdl.org>
[PKT_SCHED]: Use get_jiffies_64()
The packet scheduler simulates 64 bit jiffies on 32 bit platforms by running
a timer keeping a mark and and offset. Since there is no locking and this is
racy and doesn't handle jiffie wrap real well.
We can use get_jiffies_64 on 2.6 do get what is needed.
The downside is the overhead of a function call, and a cache miss in
get_jiffies_64.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<jbarnes@engr.sgi.com>
[PATCH] ia64: update early printk for new console driver
The Altix console driver has been replaced in Andrew's tree by a new
one that uses the serial core API. Update the early_console_setup
routine to use the new config option so that it's ready when the
driver hits Linus' tree. This will also fix a build bug since the old
driver hasn't been updated.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<davem@nuts.davemloft.net>
Cset exclude: dtor_core@ameritech.net|ChangeSet|20040629212548|46753
<davej@redhat.com>
[AGPGART] Fix sparse NULL pointer warnings.
Signed-off-by: Dave Jones <davej@redhat.com>
<tony.luck@intel.com>
[PATCH] ia64: fix reloc-out-of-range error on module loading
I'm hitting this problem because the module I want to load was
compiled with -g, so the filesize is absolutely huge. kernel/module.c
does a vmalloc() to inhale the entire file, and then two calls to
module_alloc() (which calls vmalloc() on ia64) to load the 'init' and
'core' sections. The 'init' is small and slips into a gap early in the
vmalloc playspace, while the 'core' area is allocated after the huge
area that was allocated for the inhaled copy of the whole file.
I made a one coding change to Jean-Marc's version, adding a check to
see whether the init/core sections are close enough together for the
PCREL21B to reach (they almost always are).
I've kept the test that there are no jumps from core to init (though
the message that is printed is almost as unhelpful as the one that you
get when you statically link a module into the kernel that has calls
to the discarded .exit section :-)
This patch stalled out before on the question of whether a PLT was
overkill for a section-to-section branch, and whether it would be
better to use relaxation techniques to extend the range. Doing that
might be more elegant in some way, but it needs a whole heap of extra
code (to count how many relaxed branches need to be added and
allocated them as needed). This seems a lot of extra code that is
only ever going to be exercised by maniacs like me with 49MB .ko
files.
I fixed up the comments to be a little more heplful.
Signed-off-by: <tony.luck@intel.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<shemminger@osdl.org>
[BRIDGE]: Fix message age in bridge STP config packets.
This is a revised version of Kishore's patch to set message age appropriately
in STP configuration packets.
Signed-off-by: Kishore A K <KishoreAK@myw.ltindia.com>
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<davidm@tiger.hpl.hp.com>
ia64: Fix UP-build breakage caused by early_console_setup() patch.
<seto.hidetoshi@jp.fujitsu.com>
[PATCH] ia64: Quiet corrected errors (CMC/CPE)
Trivial patch to quiet messages about corrected errors.
Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
<akpm@osdl.org>
[PATCH] x86_64 .init.setup alignment fix
We're now putting 24-byte structures into .init.setup via __setup. But
x86_64's compiler is emitting a `.align 16' in there, so they end up on
32-byte boundaries and do_early_param()'s pointer arithmetic goes wrong.
Fix that up by forcing the compiler to align these structures to sizeof(long).
Cc: Andi Kleen <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<apw@shadowen.org>
[PATCH] ppc64: fix deadlocks when oopsing while mmap_sem is held
If a fault in the kernel leads to an unexpected protection fault whilst in
a code path which holds mmap_sem we will deadlock in do_page_fault() while
trying to classify the fault. By carefully testing the source of the fault
we can detect and OOPS on the vast majority of these, greatly enhancing
diagnosis of such bugs.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<yoav_zach@yahoo.com>
[PATCH] binfmt misc fd passing via ELF aux vector
The proposed patch uses the aux-vector to pass the fd of the open misc
binary to the interpreter, instead of using argv[1] for that purpose.
Previous patch - open_nonreadable_binaries, offered the option of
binfmt_misc opening the binary on behalf of the interpreter. In case
binfmt_misc is requested to do that it would pass the file-descriptor of
the open binary to the interpreter as its second argument (argv[1]). This
method of passing the file descriptor was suspected to be problematic,
since it changes the command line that users expect to see when using tools
such as 'ps' and 'top'.
The proposed patch changes the method of passing the fd of the open binary
to the translator. Instead of passing it as an argument, binfmt_misc will
request the ELF loader to pass it as a new element in the aux-vector that
it prepares on the stack for ELF interpreter. With this patch, argv[1]
will hold the full path to the binary regardless of whether it opened it or
not.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kalin@ThinRope.net>
[PATCH] Translate Japanese comments in arch/v850
Convert the Japanese comments in arch/v850.
I am not exactly 100% sure I translated it correctly since I have no idea
what exactly was that NEC v850 evaluation board, but should be OK (say 95%
sure).
Acked by Miles Bader <miles@lsi.nec.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rmk@arm.linux.org.uk>
[PATCH] Provide console_device()
[This patch series has also been separately sent to the architecture
maintainers]
Add console_device() to return the console tty driver structure and the
index. Acquire the console lock while scanning the list of console drivers
to protect us against console driver list manipulations.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rmk@arm.linux.org.uk>
[PATCH] Provide console_suspend() and console_resume()
Add console_stop() and console_start() methods so the serial drivers
can disable console output before suspending a port, and re-enable output
afterwards.
We also add locking to ensure that we synchronise with any in-progress
printk.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wim@iguana.be>
[PATCH] watchdog: indydog.c update
<wim@iguana.be> (04/06/27 1.1770)
[WATCHDOG] indydog.c-patch-20040627
* Fix: since we use the new module_param's: make sure that
linux/moduleparam.h stays included
* in the release code we can just use indydog_stop();
The ChangeSets can also be looked at on:
http://linux-watchdog.bkbits.net:8080/linux-2.6-watchdog
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] fbcon: fix display artifacts
Fixed display artifacts present in the space reserved for the boot logo.
Use attributes of the background erase character instead of hardcoding the
color to zero.
Signed-off-by: Antonino A. Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tigran@veritas.com>
[PATCH] fix to microcode driver for the old CPUs.
Here is a patch against Linux 2.6.7 which fixes the sigmatch() macro to
work for the relatively old processors as well, which have 'pf == 0'
(processor flags as read from MSR 0x17), For example, the processors
failing without this patch are Pentium II 300 MHz (Klamath) with
family/model/stepping 6/3/4 and 6/3/3.
The patch also contains minor cosmetic changes (to make source code more
uniform).
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lcapitulino@prefeitura.sp.gov.br>
[PATCH] CREDITS update
Luiz has ~40 patches to his name, go he gets a banana.
Signed-off-by: Luiz Capitulino <lcapitulino@prefeitura.sp.gov.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] PCDP console detection support fixes
Check for ioremap failure and use correct UPIO_{MEM,PORT} constants.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sfr@canb.auug.org.au>
[PATCH] ppc64: vio infrastructure modifications
The intention here is to have no effect on pSeries except:
1) vio_register_device is renamed to vio_register_device_node to better
reflect is purpose and to allow me to introduce
vio_register_device_iseries.
2) I have introduced the name and type fields in struct vio_dev to make
these two fields independent of subarchitecture.
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sfr@canb.auug.org.au>
[PATCH] ppc64: iseries_veth integration
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sfr@canb.auug.org.au>
[PATCH] ppc64: viodasd integration
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sfr@canb.auug.org.au>
[PATCH] ppc64: viocd integration
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sfr@canb.auug.org.au>
[PATCH] ppc64: viotape integration
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Robert.Picco@hp.com>
[PATCH] hpet fixes
Some hpet clean up and a fix to the RTC request_irq issue.
Signed-off-by: Bob Picco <Robert.Picco@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lethal@Linux-SH.ORG>
[PATCH] sh64 support
This patch adds sh64 support.
This is a bit overdue, as this was on the should-fix list, though we
weren't done debugging and finishing off the port until just recently (I
did a port against 2.5.68 but it wasn't in any shape to be merged).
sh64 is already in 2.4 and has been for quite awhile, so this is mostly
just a forward port of that code to 2.6 with appropriate bug fixes, etc.
along the way. There isn't much in the way of new features that have been
added to the port yet, though I have added rough hugetlb and oprofile
support.
This patch doesn't really touch any common code, with the exception of an
ifdef or two for keyboard support and an ifdef in fb.h to omit sh64 from
the __raw_xxx() wrapping that sh does.
The only other common driver changes were to sh-sci for serial support, but
those bits were already merged with the latest batch of sh-sci updates.
Beyond that, the port is completely isolated.
Signed-off-by: Richard Curnow <richard.curnow@superh.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lethal@Linux-SH.ORG>
[PATCH] sh64: Fix syscall table alignment
If the syscall table is in the text section, the movi that loads its
address into a register will at link time have its immediates resolved as
though it's an SHmedia symbol, i.e. the LSB will be 1. This is then
misaligned as a base address for loading the address to jump to.
This could be fixed either by moving the table back to the .data section
(as done here), or by masking off the LSB after loading the table address
into a register.
Signed-off-by: Richard Curnow <richard.curnow@superh.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lethal@Linux-SH.ORG>
[PATCH] kyrofb: Fix modedb usage when built as a module.
Since James confirmed that this doesn't need to be module specific, we get
rid of the #ifndef MODULE checks for both the modedb and the modedb lookup.
Additionally we also switch from memset_io() to fb_memset().
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lethal@Linux-SH.ORG>
[PATCH] sh/sh64: MAINTAINERS update.
This updates MAINTAINERS for sh/sh64 to match up with the 2.4 entries.
I've also removed NIIBE-san as an active sh maintainer, since he hasn't
been involved or submitted any code since 2002/06/26.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<romieu@fr.zoreil.com>
[PATCH] cirrusfb: minor fixes
- fix unbalanced invocation of pci_enable_device();
- leaks plugged in cirrusfb_zorro_setup();
- move framebuffer_release() into cirrusfb_{pci/zorro}_unmap() to balance
cirrusfb_{pci/zorro}_setup();
- make cirrusfb_{pci/zorro}_setup() return adequate error codes when
something fails;
- cirrusfb_zorro_unmap: iounmap() now take as argument values previously
returned by ioremap().
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: David Eger <eger@havoc.gtf.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<olh@suse.de>
[PATCH] signed bug in drivers/video/console/fbcon.c con2fb_map[]
drivers/video/console/fbcon.c:310: warning: comparison is always true due
to limited range of data type
char can be either signed or unsigned, depending on the target system.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Matt_Domsch@dell.com>
[PATCH] EDD: store mbr_signature on first 16 int13 devices
Currently, the x86/x86_64 real-mode kernel setup code reads and stores the
mbr_signature (4 bytes in the MBR at offset 440 decimal) for BIOS int13h
device 80h only. This is useful, but not as useful as if we stored such
signatures for all int13h devices. Think OS installer wanting to set up md
software RAID across several BIOS disks.
Patch below against 2.6.7 allows the storing of the mbr_signature for the
first 16 BIOS int13h devices, and exports them via
/sys/firmware/edd/int13_dev8x/mbr_signature as before.
This also merges the three EXPORT_SYMBOLs that setup.c exported for edd.c's
use into one.
Signed-off-by: Matt Domsch <Matt_Domsch@dell.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] Combined patch for remaining trivial sparse warnings in allnoconfig build
Well, one of these (fs/block_dev.c) is little non-trivial, but i felt
throwing that away would be a shame (and I did add comments ;-).
Also almost all of these have been submitted earlier through other
channels, but have not been picked up (the only controversial is again the
fs/block_dev.c patch, where Linus felt a better job would be done with
__ffs(), but I could not convince myself that is does the same thing as
original code).
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<James.Bottomley@SteelEye.com>
[PATCH] dma_get_required_mask()
This patch implements dma_get_required_mask() which may be used by drivers
to probe the optimal DMA descriptor type they should be implementing on the
platform.
I've also tested it this time with the sym_2 driver...making it chose the
correct descriptors for the platform. (although I don't have a 64 bit
platform with >4GB memory, so I only confirmed it selects the 32 bit
descriptors all the time...)
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<joern@wohnheim.fh-wedel.de>
[PATCH] Add m68k support to checkstack
Add m68k support to checkstack.pl
Regular expression combination by Andres Schwab
Signed-off-by: <geert@linux-m68k.org>
Signed-off-by: Jörn Engel <joern@wohnheim.fh-wedel.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<joern@wohnheim.fh-wedel.de>
[PATCH] small fixes to checkstack
- fix documentation
- use $(src) in Makefile (fixes cross-compilation)
Both spottet by Geert Uytterhoeven
Signed-off-by: Jörn Engel <joern@wohnheim.fh-wedel.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trini@kernel.crashing.org>
[PATCH] Add <linux/compiler.h> to <linux/fd.h>
<linux/fd.h> references __user which is defined in <linux/compiler.h>.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<haveblue@us.ibm.com>
[PATCH] fix page->count discrepancy for zero page
While writing some analysis tools for memory hot-remove, we came across a
single page which had a ->count that always increased, without bound. It
ended up always being the zero page, and it was caused by a leaked
reference in some do_wp_page() code that ends up avoiding PG_reserved
pages.
Basically what happens is that page_cache_release()/put_page() ignore
PG_reserved pages, while page_cache_get()/get_page() go ahead and take the
reference. So, each time there's a COW fault on the zero-page, you get a
leaked page->count increment.
It's pretty rare to have a COW fault on anything that's PG_reserved, in
fact, I can't think of anything else that this applies to other than the
zero page.
In any case, it the bug doesn't cause any real problems, but it is a bit of
an annoyance and is obviously incorrect. We've been running with this
patch for about 3 months now, and haven't run into any problems with it.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<peterc@gelato.unsw.edu.au>
[PATCH] Fix Alpha compilation
When using gcc 3.3.3 on alpha, the current BK head doesn't compile.
- there's an external declaration for abs() in the same scope as a macro
definition in arch/alpha/time.c
- The compiler is picky about `const' declarations, which breaks on
bitops.h.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<eger@havoc.gtf.org>
[PATCH] radeonfb: 16bpp copyarea() fix
radeonfb: fix 16bpp copyarea() bug
It turns out the bug was due to my mis-copying a certain set of flags from
the x.org tree.
Signed-off-by: David Eger <eger@havoc.gtf.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<oleg@tv-sign.ru>
[PATCH] kill mm_struct.used_hugetlb
mm_struct.used_hugetlb used to eliminate costly find_vma() from
follow_page(). Now it is used only in ia64 version of follow_huge_addr().
I know nothing about ia64, but this REGION_NUMBER() looks simple enough to
kill used_hugetlb.
There is debug version (commented out) of follow_huge_addr() in i386 which
looks at used_hugetlb, but it can work without this check.
Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torvalds@ppc970.osdl.org>
sparse: get rid of more integer/pointer confusion
Use NULL, not 0, where appropriate.
<ajgrothe@yahoo.com>
[CRYPTO]: Add TEA and XTEA algorithms.
The following is a patch against 2.6.7 (should apply cleanly to 2.6.5 or
above). It implements the Tiny Encryption Algorithm (TEA) and the
Xtended TEA (XTEA) algorithms. TEA goes back to 1994 and is a good
algorithm espically for memory constrained systems. It is similar in
concept to the IDEA crypto. It does NOT have any patent restrictions
and has been put in the public domain by Wheeler and Needham. Tea is used
in quite a few products such as filesafe and even Microsoft's Xbox.
Signed-off-by: Aaron Grothe <ajgrothe@yahoo.com>
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<davej@redhat.com>
[AGPGART] K8T800 Pro support in amd64 driver.
Signed-off-by: Kris Kersey <augustus@linuxhardware.org>
Signed-off-by: Dave Jones <davej@redhat.com>
<tony@com.rmk.(none)>
[ARM PATCH] 1947/1: Remove unused async_struct in OMAP pm.h
Patch from Tony Lindgren
Removes some dead code as noted by Russell King.
<nico@org.rmk.(none)>
[ARM PATCH] 1948/1: Mainstone compile fix
Patch from Nicolas Pitre
... and a comment fix in bonus
<nico@org.rmk.(none)>
[ARM PATCH] 1949/1: warning fix
Patch from Nicolas Pitre
Missing prototype.
<adwol@polsl.gliwice.pl>
[NETFILTER]: Fix opt[] to be array of u_int8_t in tcp_find_option().
<davem@nuts.davemloft.net>
[IPV4]: Bootp packet extension area is variable length.
1) Remove the magic 300 constant
2) Allow b->exten area to be zero or more
variable bytes in length.
Signed-off-by: David S. Miller <davem@redhat.com>
<mika@osdl.org>
[PATCH] sparse: NULL vs 0 - arch/i386/*
<mika@osdl.org>
[PATCH] sparse: NULL vs 0 - drivers/acpi/*
<mika@osdl.org>
[PATCH] sparse: NULL vs 0 - drivers/char/*
<mika@osdl.org>
[PATCH] sparse: NULL vs 0 - rest of drivers
<mika@osdl.org>
[PATCH] sparse: NULL vs 0 - drivers/usb
<mika@osdl.org>
[PATCH] sparse: NULL vs 0 - filesystems
<mika@osdl.org>
[PATCH] sparse: NULL vs 0 - net/*
<mika@osdl.org>
[PATCH] sparse: NULL vs 0 - sound/*
<mika@osdl.org>
[PATCH] sparse: NULL vs 0 - the rest of it
<hch@sgi.com>
[XFS] Don't dereference buffer after pagebuf_iostrategy()
SGI Modid: xfs-linux:xfs-kern:174326a
Signed-off-by: Nathan Scott <nathans@sgi.com>
<margitsw@t-online.de>
[PATCH] prism54 cleanup functions
2004-06-28 Margit Schubert-While <margitsw@t-online.de>
* Clean up function definitions (missing static, extraneous inline)
<margitsw@t-online.de>
[PATCH] prism54 missing error check
2004-06-28 Margit Schubert-While <margitsw@t-online.de>
* Missing error check after dev_alloc_skb
<margitsw@t-online.de>
[PATCH] prism54 fix unlikely
2004-06-28 Margit Schubert-While <margitsw@t-online.de>
* Fix a thinko by me
<margitsw@t-online.de>
[PATCH] prism54 device list cleanup
2004-06-28 Margit Schubert-While <margitsw@t-online.de>
* Clean up the device table
<margitsw@t-online.de>
[PATCH] prism54 remove prog reg poke
2004-06-28 Margit Schubert-While <margitsw@t-online.de>
* Don't poke around in the timeout registers
<margitsw@t-online.de>
[PATCH] prism54 use set_pci_mwi()
2004-06-28 Margit Schubert-While <margitsw@t-online.de>
* Use set_pci_mwi()
<brazilnut@us.ibm.com>
[PATCH] pcnet32: acknowledge all interrupts early.
A recent change I made broke pcnet32 in a way that allowed real hardware
to work, but broke VMWare. This patch acknowledges all interrupts early
in the pcnet32_interrupt while loop. Without this patch on real hardware
the first transmit operation would clear the 'init' interrupt, but in
VMWare it would rain interrupts. Keith Moore did more testing for me
on VMWare and I did a better job testing on hardware. Petr Vandrovec
correctly pointed out the source of the problem on lkml.
This patch is not needed for 2.4.27-rc1 unless my patch labeled
"pcnet32: recover after rx hang" is applied (which it has not).
signed-off-by: Don Fry <brazilnut@us.ibm.com>
<brazilnut@us.ibm.com>
[PATCH] pcnet32: Add HomePNA parameter for 79C978.
This patch adds a module parameter to select HomePNA mode of operation for
the 79C978 version of the pcnet32. Tested ia32 and ppc64.
signed-off-by: Patrick Simmons <psimmons@flash.net>
signed-off-by: Don Fry <brazilnut@us.ibm.com>
<brazilnut@us.ibm.com>
[PATCH] pcnet32: correctly program bcr32.
The pcnet32 driver was not correctly enabling MII autonegotiation after
booting when ppc firmware forced the speed/duplex mode of the chip.
After several conversations with AMD this patch corrects the problem.
I have tested this on hardware I have available (ia32 and ppc64) but I
would like wider audience testing of this patch.
Signed-off-by: Don Fry <brazilnut@us.ibm.com>
<brazilnut@us.ibm.com>
[PATCH] pcnet32: change to use module_param
Change the pcnet32 driver to use module_param and module_param_array.
<akpm@osdl.org>
[PATCH] net/at1700.c depends on MCA_LEGACY
From: "Luiz Fernando N. Capitulino" <lcapitulino@prefeitura.sp.gov.br>
drivers/net/at1700.c does not compile without CONFIG_MCA_LEGACY set.
As CONFIG_MCA_LEGACY depends on CONFIG_MCA, we can use only
CONFIG_MCA_LEGACY, insteed of "MCA && MCA_LEGACY".
Signed-off-by: Luiz Capitulino <lcapitulino@prefeitura.sp.gov.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<davem@nuts.davemloft.net>
[SPARC64]: Document reserved and soft2 bits in PTE.
<akpm@osdl.org>
[PATCH] net/ne2.c needs MCA_LEGACY
From: "Luiz Fernando N. Capitulino" <lcapitulino@prefeitura.sp.gov.br>
drivers/net/ne2.c does not compile without CONFIG_MCA_LEGACY set.
As CONFIG_MCA_LEGACY depends on CONFIG_MCA, we can use only
CONFIG_MCA_LEGACY, insteed of "MCA && MCA_LEGACY".
Signed-off-by: Luiz Capitulino <lcapitulino@prefeitura.sp.gov.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<shemminger@osdl.org>
[PATCH] (1/3) skfp - cleanup is_XXX functions
This started out from sparse warnings about calling with fddi_broadcast
that is declared const. This fixes that and gets rid of some of the namespace
pollution of this driver by moving the predicate function is_individual, is_broadcast, ...
as inline's in the one file that uses them.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
<shemminger@osdl.org>
[PATCH] (2/3) skfp -- sparse __user annotation
Add __user annotation to the device specific ioctl.
<shemminger@osdl.org>
[PATCH] [sparse] get rid of warnings about #if DEBUG
Several drivers use '#if DEBUG' which is a warning under the sparse checker.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
<shemminger@osdl.org>
[PATCH] get rid of __OPTIMIZE__ requirement in net drivers
Several network drivers have checks that they are only built with -O.
This breaks checking with sparse and other tools, and seems like a holdover from
when drivers were built out of tree and the kernel build system was less stable.
This patch gets rid of these.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
<rmk+lkml@arm.linux.org.uk>
[PATCH] PCMCIA net device unplugging ordering fix
This is a rather old patch which re-orders the teardown of PCMCIA
network devices. Current device drivers remove the IO mappings,
interrupts, and free any PCMCIA windows before they unregister
themselves from the network layer.
This patch ensures that we first unregister from the network layer
before performing any teardown of resources or windows.
Note: the only card which has been tested in this patch is pcnet_cs.
<dale@farnsworth.org>
[PATCH] Patch 1/2 enable smc91x enet driver for use by PPC
Hi,
Patch 1 of 2 to enable the smc91x driver to be used by the IBM Redwood5
and Redwood6 boards.
Move drivers/net/arm/smc91x.[ch] to drivers/net
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
<dale@farnsworth.org>
[PATCH] Patch 2/2 enable smc91x enet driver for use by PPC
Hi,
Patch 2 of 2 to enable the smc91x driver to be used by the IBM Redwood5
and Redwood6 boards.
Enable smc91x driver to support IBM Redwood5 and Redwood6 boards
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
<panto@intracom.gr>
[PATCH] add new fec_8xx network driver
<shemminger@osdl.org>
[PATCH] skfddi - fix warning
The conversion to ANSI, caused a warning because the mulitcast code needs
a cast. dmi->dmi_addr is a u8 array, and fddi_addr is just a wrapper around a u8 array.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
<shemminger@osdl.org>
[PATCH] skfddi - cleanup local and dead functions
Cleanup the SK Fddi driver a little more. Mark some functions as static,
and eliminate (or comment out) some that are defined but never used.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
<jgarzik@pobox.com>
[netdrvr] add fec_8xx to Makefile
<jgarzik@pobox.com>
[netdrvr] disable certain drivers that are broken on 64-bit
Disable Toshiba FIR IRDA driver (donauboe) and IBM Lanstreamer
token ring driver on all 64-bit platforms. Add #error to each driver
explaining the problem, causing build of driver to fail when
BITS_PER_LONG == 64.
<jgarzik@pobox.com>
[netdrvr] fix warnings found on 64-bit platforms
Updated: 8139too, arcnet/arcnet, rrunner
<davem@nuts.davemloft.net>
[SPARC64]: Reserve a software PTE bit for _PAGE_EXEC.
Based upon the PAX sparc64 patches. Credit to
PaX Team <pageexec@freemail.hu>
Also, reformat the comments here so the lines fit in
80 columns.
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
[SPARC64]: Non-executable page support.
Based upon the PAX patches. Credit to PaX Team
<pageexec@freemail.hu>
Signed-off-by: David S. Miller <davem@redhat.com>
<rmk@flint.arm.linux.org.uk>
[SERIAL] Remove UPF_RESOURCES
The UPF_RESOURCES flag was added to the serial layer to cater for
the idiosyncrasies of the PCMCIA layer, where the PCMCIA core code
handles the claiming of busy resources.
However, the PCMCIA core has progressed, and now does not claim busy
resources - IOW, it now behaves just like any other bus driver,
where resources are allocated non-busy and its up to the drivers to
mark their regions busy using request_region / request_mem_region.
The effect of this is that the UPF_RESOURCES hack in the serial
layer is now redundant, and can now be removed - 8250 devices
should now always use request_region / request_mem_region
unconditionally.
Signed-off-by: Russell King.
<rmk@flint.arm.linux.org.uk>
[ARM] asm/arch-versatile/uncompress.h does not need linux/kernel.h
<mingo@elte.hu>
[PATCH] enable SMP Opterons boot an NX-enabled x86 kernel
This fixes a corner-case NX bug: the x86 SMP kernel doesnt boot on SMP
Opterons if NX is enabled [and mem=nopentium is specified], due to
kernel-space NX protection preventing the SMP trampoline from being
executable.
Since the SMP trampoline is a rare case of 'dynamic code' executed by
the kernel (it has to be below 640K so it cannot be part of the kernel
text itself), i've added the necessary infrastructure to enable/disable
executability of specific kernel pages.
We cannot simply disable NX via the MSR because we've got the NX bits in
the kernel pagetables, which are set up before we do the SMP bootup.
The NX bit in the pagetables is undefined if EFER.NXE is 0, so we cannot
count on NX-capable CPUs not faulting when they encounter them.
I've tested the x86 kernel on a non-NX SMP x86 box and on an NX UP box,
on which i've also tested a simulated SMP trampoline, it all works fine.
- add infrastructure to enable/disable executability of kernel pages
- make the SMP trampoline page executable.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<petero2@telia.com>
[PATCH] Can't open CDROM device for writing
Opening a CDROM device for writing no longer works, because cdrom_open()
returns -EROFS even if cdrom_open_write() succeeds.
This fixes it.
Signed-off-by: Peter Osterlund <petero2@telia.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<andrea@suse.de>
[PATCH] zombie with CLONE_THREAD and strace
'strace' shows a problem with a missing release_task for self-reaping
clones that have been traced. We need to defer releasing them until the
tracer is done with them, but if the tracer dies, we need to handle that
case gracefully too.
We do that by having 'forget_original_parent()' generate a list of tasks
to release when this case happens.
Patch based on discussions on linux-kernel, and suggestions from Roland
McGrath <roland@redhat.com>.
<mika@osdl.org>
[PATCH] Fix sound/isa/gus/* compile error without CONFIG_PNP
<kevcorry@us.ibm.com>
[PATCH] dm: kcopyd.c: Remove unused include
kcopyd.c: Remove unused #include.
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] dm: kcopyd.c: make client_add() return void
kcopyd.c: client_add() can return void instead of an int, which will eliminate
an unnecessary error path in kcopyd_client_create().
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] dm: dm-raid1.c: Enforce max of 9 mirrors
dm-raid1.c: Since kcopyd can currently only handle 1 source and up to 8
destinations, enforce a max of 9 mirrors when creating a dm-mirror device.
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] dm: dm-raid1.c: Use fixed-size arrays
dm-raid1.c: Declare fixed-sized (instead of variable-sized) arrays on the
stack in recover() and do_write().
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kevcorry@us.ibm.com>
[PATCH] dm: Remove 1024 devices limitation
Remove the limitation of 1024 DM devices.
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<shemminger@osdl.org>
[TCP]: TCP acts like it is always out of memory.
Current 2.6.7 tree acts as if it is alway under memory pressure because
a recent change did a s/tcp_memory_pressure/tcp_prot.memory_pressure/.
The problem is tcp_prot.memory_pressure is a pointer, so it is always non-zero!
Rather than using *tcp_prot.memory_pressure, just go back to looking at
tcp_memory_pressure.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<rmk@flint.arm.linux.org.uk>
[ARM] Timer fixes for CLPS711x.
<Matt_Domsch@dell.com>
[PATCH] EDD: x86-64 build fix
On Wed, Jun 30, 2004 at 01:22:21AM -0400, Jeff Garzik wrote:
> CC arch/x86_64/kernel/setup.o
> arch/x86_64/kernel/setup.c: In function `copy_edd':
> arch/x86_64/kernel/setup.c:415: error: `EDD_MBR_SIGNATURE' undeclared=20
> (first use in this function)
> arch/x86_64/kernel/setup.c:415: error: (Each undeclared identifier is=20
> reported only once
> arch/x86_64/kernel/setup.c:415: error: for each function it appears in.)
> arch/x86_64/kernel/setup.c:417: error: `EDD_MBR_SIG_NR' undeclared=20
> (first use in this function)
> make[1]: *** [arch/x86_64/kernel/setup.o] Error 1
> make: *** [arch/x86_64/kernel] Error 2
Arrgh. On i386 it's in include/asm-i386/setup.h On x86_64 it
belongs in include/asm-x86_64/bootsetup.h.
Patch below defines EDD_MBR_SIG_NR and EDD_MBR_SIGNATURE on x86_64.
Signed-off-by: Matt_Domsch <Matt_Domsch@dell.com>
<aia21@cantab.net>
NTFS: Add a set_page_dirty address space operation for ntfs_m[fs]t_aops.
It is simply set to __set_page_dirty_nobuffers() to make sure that
running set_page_dirty() on a page containing mft/ntfs records will
not affect the dirty state of the page buffers.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
<aia21@cantab.net>
NTFS: Add fs/ntfs/index.c::__ntfs_index_entry_mark_dirty() which sets all
buffers that are inside the ntfs record in the page dirty after which
it sets the page dirty. This allows ->writepage to only write the
dirty index records rather than having to write all the records in
the page. Modify fs/ntfs/index.h::ntfs_index_entry_mark_dirty() to
use this rather than __set_page_dirty_nobuffers().
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
<aia21@cantab.net>
NTFS: Update __ntfs_index_entry_mark_dirty() so it makes sure that the
page has buffers. Otherwise we could end up with a dirty page
without buffers and our set_page_dirty() would not mark the buffers
dirty when they are created and thus they would not be written out
and the dirty records would be lost.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
<aia21@cantab.net>
NTFS: 2.1.15 - Implement fs/ntfs/aops.c::ntfs_write_mst_block() which
enables the writing of page cache pages belonging to mst protected
attributes like the index allocation attribute in directory indices
and other indices like $Quota/$Q, etc. This means that the quota is
now marked out of date on all volumes rather than only on ones where
the quota defaults entry is in the index root attribute of the
$Quota/$Q index.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
<akpm@osdl.org>
[PATCH] err2-14: skge locking fix
It can return with the lock held.
Found by the Stanford locking checker.
Signed-off-by: Andrew Morton <akpm@osdl.org>
<simon@thekelleys.org.uk>
[PATCH] [Bug 2948] New: Atmel wireless driver Oopses
<davem@nuts.davemloft.net>
[TG3]: Fibre PHY fixes from Sun.
- Support HW autoneg on 5704.
- On serdes, no MII reg ioctl support.
<davem@nuts.davemloft.net>
[TG3]: Update driver version and reldate.
<david@gibson.dropbear.id.au>
[PATCH] ppc64: remove RTAS arguments from PACA
This patch removes the RTAS arguments structure on ppc64 from the PACA.
The args have to be in the RMO, but since we have a global spinlock for
RTAS anyway, there's no reason to have a separate copy of the args per-CPU.
This patch replaces the PACA field with a single instance in the global
rtas structure.
The one exception is for the rtas_stop_self() call, which can't take the
lock, because it never returns. But it has a fixed set of arguments, so we
can use another global instance which is initialized at boot.
This lets us remove rtas.h from paca.h, which substantially reduces overall
#include hairiness (because paca.h is now, as it wants to be, a nice
low-level structure-defining header which relies on very little and can
safely be included almost anywhere). Although it does add some noise to
the patch, because a bunch of places relied on the indirect inclusion of
rtas.h, or even more indirect inclusions (see the hunks applying to eeh.h
and current.h!).
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<david@gibson.dropbear.id.au>
[PATCH] ppc64: PACA cleanup
Cleanup the PPC64 PACA structure. It was previously a big mess of
unecessary fields, overengineered cache layout and uninformative comments.
This is essentially a rewrite of include/asm-pp64/paca.h with associated
changes elsewhere. The patch:
- Removes unused PACA fields
- Removes uneeded #includes
- Uses gcc attributes instead of explicit padding to get the desired
cacheline layout, also rethinks the layout and comments accordingly.
- Better comments where asm or firmware dependencies apply non-obvious
layout constraints.
- Splits up the pointless STAB structure, letting us move its elements
independently.
- Uses offsetof instead of hardcoded offset in spinlocks.
- Eradicates xStudlyCaps identifiers
- Replaces PACA guard page with an explicitly defined emergency stack
(removing more than NR_CPUS pages from the initialized data segment).
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: janitor log_rtas_error() call arguments
This patch from Linas Vepstas (rediffed by me) fixes the confusing argument
aliasing of the log_rtas_error() subroutine.
This patch makes no functional changes, it just cleans up some strange
usage.
The rtas_args used to communicate with firmware are always taken from the
paca struct, so as to keep the args at a fixed, low-memory location. But
the log_rtas_error() routine also took an rtas_args pointer, which it
assumed was aliased to the paca struct. This aliasing is both
un-neccessary, and confusing; this patch eliminates this confusion.
Signed-off-by: Linas Vepstas <linas@linas.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: Janitor rtas_call() return variables
Recently I changed the return value of rtas_call() from an unsigned long to
an int. That patch missed a few places where we declare a variable to
store the result from rtas_call(). This new patch changes those places to
use an int variable instead of a long or unsigned long variable. Linas
Vepstas pointed this out.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trini@kernel.crashing.org>
[PATCH] ppc32: OCP for MP10x
Attached is the latest version of Adrian Cox's OCP patch for
MPC107/8240/8245. This unifies some openpic setup code, and ensures that
the OCP devices are only added to the bus on chip variants which have them.
All interested parties seem happy, and this patch is necessary to provide a
unified I2C driver for 85xx and 107/824x.
Signed-off-by: Adrian Cox <adrian@humboldt.co.uk>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mporter@kernel.crashing.org>
[PATCH] ppc32: PPC44x defconfig update and fixes
Update PPC44x defconfigs and some fixes.
Signed-off-by: Matt Porter <mporter@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mporter@kernel.crashing.org>
[PATCH] ppc32: PPC4xx preempt fix
PPC4xx preempt fixes. Based on previous Classic PPC patch.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Matt Porter <mporter@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mporter@kernel.crashing.org>
[PATCH] ppc32: Fix dual UICs in 4xx PIC support
Fixes a case where we were not correctly acking the base cascade controller
on PPC4xx. Patch from Pavel Bartusek <pba@sysgo.com>
Signed-off-by: Matt Porter <mporter@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pavel@ucw.cz>
[PATCH] swsusp: preparation for smp support & fix device suspending
It fixes levels for calling driver model, puts devices into sleep before
powering down (so that emergency parking does not happen), and actually
introduces SMP support, but its disabled for now. Plus noone should try to
freeze_processes() when thats not implemented, we now BUG()s -- we do not
want Heisenbugs.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<arjanv@redhat.com>
[PATCH] produce a warning on unchecked inode_setattr use
The patch below uses the new-in-gcc-3.4 option to generate a warning on
unchecked results of marked functions, and applies this to the
inode_setattr function (which based on recent bk commits HAS to be checked
for it's return value for correct operation). A warning looks like this:
fs/ext2/inode.c:1279: warning: ignoring return value of 'inode_setattr', declared with attribute warn_unused_result
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<george@mvista.com>
[PATCH] Bugfix for CLOCK_REALTIME absolute timer
As required by the standard, this patch adds to POSIX ABSOLUTE timers the
functionality of adjusting the timer when the clock is set so that it still
expires at the specified time (provided that time has not passed, in which
case the timer expires immeadiatly).
The standard is, IMNSOHO, a bit vague on just how repeating timers are to
be handled so I made some choices:
1) If an absolute timer is to expire every N intervals, we assume that
the expiries should happen at those specified times after clock setting.
I.e. we adjust the repeat timer as well as the initial timer. (The
other option would be to treat the repeating timers as relative and not
to adjust them.)
2) If a clock set moves the the clock prior to the initial expiry time
AND that time has already passed and been signaled, the current repeat
timer is adjusted, i.e. we DO NOT go back to the initial time and
repeat that. (The other option is to treat this case as a new request
with the initial timer parameters (which by this time we have lost).)
3) If time is advanced such that it appears that several expiries have
been missed, the overrun count will reflect the misses. (The other
option is to not reflect this in the overrun.) At the same time, nothing
is done to acknowledge, to the user, that we are repeating expiries when
the clock is retarded.
Signed-off-by: George Anzinger <george@mvista.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] sparse: define max kernel symbol length and clean up errors in kernel/kallsyms.c
CHECK kernel/kallsyms.c
kernel/kallsyms.c:136:7: warning: bad constant expression
kernel/kallsyms.c:136:7: warning: bad constant expression
kernel/kallsyms.c:136:7: warning: bad constant expression
kernel/kallsyms.c:143:22: warning: bad constant expression
kernel/kallsyms.c:143:22: warning: bad constant expression
kernel/kallsyms.c:143:22: warning: bad constant expression
Now the cause of sparse warnings is that it does not handle runtime array
dimensioning (which I take it is a sparse problem), but in this particular
case it _might_ make sense to change the runtime allocation to compile
time, as the upper size of the array is known, because the code in
kernel/kallsyms.c clearly uses 127 (or 128) as "magic constant" for kernel
symbol (array) length, and in the other hand in include/linux/module.h
there is: #define MODULE_NAME_LEN (64 - sizeof(unsigned long))
The only concern is that the array become quite big (the original comment
of it being "pretty small" no longer applies ...). One way to help that
would be to use buffer[] also in place of namebuf[], but that would be
little tricky as the format string should be before the symbol name ...
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] sparse: fix sparse warnings in kernel/power/*
CHECK kernel/power/swsusp.c
kernel/power/swsusp.c:320:15: warning: expected lvalue for member dereference
kernel/power/swsusp.c:337:15: warning: expected lvalue for member dereference
kernel/power/swsusp.c:359:14: warning: expected lvalue for member dereference
kernel/power/swsusp.c:925:12: warning: assignment expression in conditional
[...]
CHECK kernel/power/pmdisk.c
kernel/power/pmdisk.c:795:12: warning: assignment expression in conditional
Trivial sparse fixes for two files under kernel/power. Patch attached.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] sparse: fix sparse in drivers/pnp/pnpbios/*
CHECK drivers/pnp/pnpbios/core.c
include/linux/pnpbios.h:144:5: warning: undefined preprocessor identifier 'needed'
CC drivers/pnp/pnpbios/core.o
CHECK drivers/pnp/pnpbios/bioscalls.c
include/linux/pnpbios.h:144:5: warning: undefined preprocessor identifier 'needed'
drivers/pnp/pnpbios/bioscalls.c:346:5: warning: undefined preprocessor identifier 'needed'
drivers/pnp/pnpbios/bioscalls.c:361:5: warning: undefined preprocessor identifier 'needed'
drivers/pnp/pnpbios/bioscalls.c:388:5: warning: undefined preprocessor identifier 'needed'
drivers/pnp/pnpbios/bioscalls.c:427:5: warning: undefined preprocessor identifier 'needed'
drivers/pnp/pnpbios/bioscalls.c:509:5: warning: undefined preprocessor identifier 'needed'
CC drivers/pnp/pnpbios/bioscalls.o
CHECK drivers/pnp/pnpbios/rsparser.c
include/linux/pnpbios.h:144:5: warning: undefined preprocessor identifier 'needed'
CC drivers/pnp/pnpbios/rsparser.o
CHECK drivers/pnp/pnpbios/proc.c
include/linux/pnpbios.h:144:5: warning: undefined preprocessor identifier 'needed'
The fix is trivial, sparse wants the preprocessor symbol to be defined
before use. There was a similar fix accepted by Linus couple weeks ago.
Patch attached.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rddunlap@osdl.org>
[PATCH] convert private ABS() to kernel's abs()
Convert private ABS() defines and callers to use abs() from linux/kernel.h.
Builds successfully. stv0299, riva, & sstfb modules load.
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] Rivafb fixes
The patch below fixes the following to rivafb:
1 Seems that nVidia hardware has a limit on clipping coordinates that is
also dependent on the color depth of the framebuffer.
2.From Pawel Goleniowski <pawelg@dabrowa.pl>: Fix for wrong colors at 16bpp
(RGB565). The fix has been submitted several times in lkml and this list
but was never applied.
3 Search all I2C/DDC busses for the EDID block instead of just the first
bus.
4 Updated request_mem_region/release_mem_region to
pci_request_regions/pci_release_regions.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] Mode Switch in fbcon_blank()
As we've discussed in another thread, below is a diff that will do a set_par()
as late as possible when there is KD_TEXT<->KD_GRAPHICS switch. The set_par()
will be forced in fbcon_resize() instead.
Not sure if this has repercussions with the other drivers, but this patch
fixed the X nv driver hanging when switching to the console. (I believe the
crash is actually caused by an early set_par() -- while in fbcon_blank.
Removing the set_par in fbcon_blank fixed the hang but caused cursor sprite
and display corruption).
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] Another batch of fbcon fixes
- Update display->vrows when fbset changes certain fields in var (such as
color depth) but without changing the display resolution. This might
produce concommitant changes in other fields such as and especially
var->yres_virtual.
- Clear the FBINFO_MISC_MODECHANGEUSER flag _before_ issuing a
notifier_call_chain(). Clearing it after the notifier_call_chain() will
cause fbcon to go into an infinite loop.
- Sanitized failure path of set_con2fb_map().
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] pcdp.c needs io.h
Include <asm/io.h> for ioremap() declaration.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Natalie.Protasevich@UNISYS.com>
[PATCH] es7000 subarch update for target_cpus()
This is ES7000 sub arch update. The tiny patch below fixes a bug that
results in boot problem on all ES7000 partitions with numbers higher than
0. Currently, target_cpus() returns incorrect cpumask value since it
indexes bits by the logical APIC ID, not by CPU number. The patch affects
only ES7000 sub arch. It was tested extensively on the system with
multiple partitions.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<eric@lammerts.org>
[PATCH] asiliantfb fix
The init function is writing somewhere using a physical address instead of
a virtual address.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] 64 bit bug in radix-tree lookup.
The radix tree functions __lookup and __lookup_tag uses (1 << shift) in
their index calculations. On 64 bit systems the shift can be bigger than
32. The shift of an integer by more than 32 bits evaluates to zero which
causes the lookup to fail.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: core changes
From: Arnd Bergmann <arndb@de.ibm.com>
From: Christian Bornträger <cborntra@de.ibm.com>
From: Michael Holzheu <holzheu@de.ibm.com>
From: Martin Schwidefsky <schwidefsky@de.ibm.com>
s390 core changes:
- Fix cpu_idle loop if /proc/sys/kernel/hz_timer is set.
- Store correct trap indication on 64 bit for call to do_debugger_trap
in the single stepped svc code.
- Avoid the use of alloca in the debug feature.
- Remove extraneous includes of linux/version.h.
- Regenerate default configuration.
- Mention eServer z890 in Kconfig help text.
- Prevent gcc 3.4 from removing statically defined per cpu variables.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: comon i/o layer
From: Utz Bacher <utz.bacher@de.ibm.com>
From: Cornelia Huck <cohuck@de.ibm.com>
Common i/o layer changes:
- Consolidate store channel subsystem characteristics from its three
users (css, cmf and qdio) to a single location.
- Always use new stipd format and move creation of global path group
to channel subsystem init function. Add dummy init_IRQ to setup.c
and remove requestirq.c.
- Remove bogus CHPID_LONGS define.
- Add more magic to catch chpids coming online again without generating
machine checks.
- Fix check for unsolicited interrupts. Deferred cc=1 indicates a
solicited interrupt.
- Fix progress indication in qdio summary bytes to avoid loosing interrupts.
- Rename console_device to console_devno to avoid naming conflict.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: dasd driver changes
From: Horst Hummel <horst.hummel@de.ibm.com>
From: Carsten Otte <cotte@de.ibm.com>
From: Stefan Weinhuber <wein@de.ibm.com>
dasd device driver changes:
- Fix calculation of number of idal words needed for a channel program.
- Fix race in i/o termination after request timeout.
- Fix race in state change interrupt handling.
- Fix call to BLKPG ioctl in dasd_destroy_partitions.
- Integrate irb into dasd request to avoid kmalloc in the interrupt handler.
- Store build clock for error recovery requests.
- Remove unused cpu variable from dasd_ext_handler.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: sclp console driver
From: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
sclp console driver changes:
- Correct handling of busy and not operational states.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: network driver changes
From: Ursula Braun-Krahl <braunu@de.ibm.com>
From: Frank Pavlic <pavlic@de.ibm.com>
From: Thomas Spatzier <tspat@de.ibm.com>
From: Peter Tiedemann <ptiedem@de.ibm.com>
s390 network driver changes:
- ctc: replace snprintf by strlcpy.
- lcs: change info text for lcs cards from "OSA2 card" to "OSA LCS card".
- lcs: fix alignment of lcs_cmd structure to get multicast pings working.
- lcs: first call in_dev_put then register multicast addresses.
- netiucv: remove unused device timer and unused flags field.
- netiucv: include interrupt type in pathid mismatch message.
- qeth: don't start a new kernel thread for every new ip address.
- qeth: fix IP assist command sequence numbers.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: zfcp host adapter
From: Heiko Carstens <heiko.carstens@de.ibm.com>
From: Andreas Herrmann <aherrman@de.ibm.com>
From: Maxim Shchetynin <maxim@de.ibm.com>
zfcp host adapter changes:
- Exploit FC transport class and autoselect SCSI_FC_ATTRS for zfcp.
- Fix acl download to zfcp controller.
- Change message loglevels to make zfcp less noisy.
- Don't wait for SBAL to finish for command aborts after a timeout
and for logical unit or target resets.
- Force reopen of port if link test failed.
- Fix race between qdio_shutdown and do_QDIO.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paul@allied-universal.com>
[PATCH] Telephony Driver ISAPNP fix
I recently got an ISA Phonejack card and quickly found it wouldn't work
with a stock 2.6.7 kernel.
So found this bug in the ISAPNP part of the code, throughout the code it
use it's own data structure to reference it's base IO address, in the
ISAPNP code this was not being populated with any value hence it can't talk
to the card and so the driver fails.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ralf@linux-mips.org>
[PATCH] mips: kconfig spelling fixes
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ralf@linux-mips.org>
[PATCH] mips: update config symbols
CONFIG_DECSTATION is now CONFIG_MACH_DECSTATION ...
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ralf@linux-mips.org>
[PATCH] mips: MIPS updates
- Remove support for NEC Eagle which is a system that was produced in
almost zero numbers.
- Sort out the MV-64340 code a little more.
- Fix computation of interrupts masks for the upper 32 interrupts of the
MV-64340.
- Gas was producing bad break codes for MIPS32/MIPS64 processors for a while.
Add a workaround to the kernel trap handler.
- Rewrite RM7000 cache code in a way where it's hopefully easier to read.
- Handle 64-bit pointers right for the BCM1250.
- Try to share code for GT-64240 and MV-64340.
- Fix RM9000 definition of _CACHE_CACHABLE_NONCOHERENT.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ralf@linux-mips.org>
[PATCH] mips: MAINTAINERS updates
Update my email address. Add Manish Lachwani as maintainer for the MV-64340
driver which has already been accepted by Jeff Garzik.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ralf@linux-mips.org>
[PATCH] mips: MIPS needs a 32-bit ioaddr_t
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ralf@linux-mips.org>
[PATCH] mips: delete IRIX emul misc minors
Remove the last leftovers of the compatibility code for running the IRIX X
server.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<stsp@aknet.ru>
[PATCH] vm86: set IOPL to 3 on pushf
The attached patch fixes the pushf under v86 to always set the IOPL field
to 3, as the Intel CPUs do.
It was in 2.4 for year, but somehow missed 2.6. It comes from here
(although now a bit shorter):
http://lkml.org/lkml/2003/5/25/81
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] Remaining sparse warnings in allnoconfig
Attached is a smallish patch for couple trivial sparse warnings in
allnoconfig build and more importantly an "excuses" text file explaining
why the rest have not been fixed.
Basically all of them (with the exception of the one in Andrews tree) need
some serious re-engineering.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] [err1-10] journal_extend() locking fix
From the new Stanford locking checker
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] [err1-25] snd_ctl_read() locking fix
From the new Stanford locking checker
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<stelian@popies.net>
[PATCH] sonypi driver update (PM and DMI VGN-)
This updates the sonypi driver by:
* fixing the power management handling, using the new device
model PM scheme.
* adds "VGN-" as a DMI search pattern for a Sony Vaio laptop.
Florian Lohoff reported the power management issue and tested the
patch.
Many users reported the DMI name issue, including Till Busch who
made a patch for dmi_scan.c.
Signed-off-by: Stelian Pop <stelian@popies.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<stelian@popies.net>
[PATCH] meye driver update (wait_ms -> msleep)
This patch, originally from Daniel Drake, replaces the meye driver
'wait_ms()' function with calls to the kernel provided 'msleep()'
function.
Signed-off-by: Daniel Drake <dsd@gentoo.org>
Signed-off-by: Stelian Pop <stelian@popies.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@elte.hu>
[PATCH] i386 nx prefetch fix & cleanups
- fix possible prefetch-fault loop on NX page, based on suggestions
from Jamie Lokier.
- clean up nx feature dependencies
- simplify detection of NX-violations when the kernel executes code
- introduce pte_exec_kern() to simplify the NX logic
- split the definitions out of pgtable-[23]level.h into
pgtable-[23]level-defs.h, to enable the former to use generic
pte functions from pgtable.h.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lxiep@us.ibm.com>
[PATCH] PCI: export pci_scan_child_bus for the pci hotplug drivers to use
Signed-off-by: Linda Xie lxie@us.ibm.com
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<roland@topspin.com>
[PATCH] PCI: Add some PCI Express constants to pci.h
This patch adds some PCI Express register constants to <linux/pci.h>
For my device, setting the Max_Read_Request_Size value in the PCI
Express device control register makes a huge performance difference.
I wanted my driver code that does this to be a little more
self-documenting than:
pci_read_config_word(mdev->pdev, cap + 8, &val);
val = (val & ~(5 << 12)) | (5 << 12);
I went a little overboard and added all the basic device register
fields. If desired I could go even further overboard and add the
link, slot and root registers as well.
This patch is based on Matthew Wilcox's patch for pciutils, corrected
for some PCI Express spec 1.0a changes.
Signed-off-by: Roland Dreier <roland@topspin.com>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<linas@austin.ibm.com>
[PATCH] PCI Hotplug: rpaphp null pointer deref
This patch fixes a null-pointer dereference when hot-plug operations
are performed on a machine that has virtual-io devices in it.
Virtual i/o devices to not have pci bridges associated with them.
It also corrects an ordering problem during hotplug remove.
This patch was previously reviewed/tested by Linda Xie, the current
rpaphp maintainer.
Signed-off-by: Linas Vepstas <linas@linas.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<linas@austin.ibm.com>
[PATCH] PCI Hotplug: RPAPHP structure size/performance
Please review and apply the following patch if you find it agreeable.
This patch does not make any functional changes, but does improve
both performance and memory usage by rearranging structure elements.
The need for these changes became appearent during a code review of
the disassembly involving this structure. The memory footprint of this
structure is made smaller by grouping the byte fields next to each other.
The access of the list_head can be simplified by making it the first element
of the structure, thus avoiding a needless add-immediate without negatively
impacting any of the other accesses.
Signed-off-by: Linas Vepstas <linas@linas.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<buytenh@wantstofly.org>
[PATCH] PCI: New PCI vendor/device ID for Radisys ENP-2611 board
Included is a patch for linux to add a PCI vendor/device ID for the
Radisys ENP-2611 board. The ENP-2611 is a 64bit/66MHz PCI board which
hosts an Intel IXP2400 network processor, has three GigE interfaces,
runs linux and generally kicks ass.
(see http://www.radisys.com/oem_products/ds-page.cfm?productdatasheetsid=1147)
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<chrisw@osdl.org>
[PATCH] check attr updates in /proc
Any proc entry with default proc_file_inode_operations allow unauthorized
attribute updates. This is very dangerous for proc entries that rely
solely on file permissions for open/read/write.
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] sparse: remaining integer zero / NULL fixes in allmodconfig & vmlinux
This fixes the the remaining 0 to NULL things that were found with 'make
allmodconfig' and 'make C=1 vmlinux'.
<Andries.Brouwer@cwi.nl>
[PATCH] fat/inode.c
Two years ago, OGAWA Hirofumi removed some ugly code and
added a few simple tests to the FAT filesystem code,
intended to avoid recognizing non-FAT as FAT (for people who
fail to specify rootfstype=, forcing the kernel to guess).
That worked fairly well, until this year.
I have now seen a thread in Czech and a report from Holland that
involved the "FAT: bogus sectors-per-track value" error message.
The patch below removes this test again. The advantage is that
some real-life FAT filesystems can be mounted again.
The disadvantage that more non-FAT fss will be accepted as FAT.
Ferry van Steen <freaky@bananateam.nl> reports "the patch Andries
Brouwer gave me seems to work".
Signed-off-by: Andries Brouwer <aeb@cwi.nl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torvalds@ppc970.osdl.org>
logo/logo.c needs <stddef.h> for NULL
It's one of the rare files that has almost no includes
what-so-ever, so it actually never got NULL any other
way.
<chrisw@osdl.org>
[PATCH] chown permission check fix for ATTR_GID
SuSE discovered this problem with chown and ATTR_GID. Make sure user
is authorized to change the group, CAN-2004-0497.
<jgarzik@pobox.com>
[libata] add ->qc_issue hook
This hook is used when an ATA controller wishes to use
hardware-specific methods of taskfile delivery, rather
than the standard method of bitbanging the ATA shadow
registers.
<jgarzik@pobox.com>
[libata] add ata_queued_cmd completion hook
<jfbeam@bluetronic.net>
[libata sata_sil] add drive to mod15write quirk list
<akpm@osdl.org>
[PATCH] ntfs build fix
gcc-2.95 chokes on this.
Cc: Anton Altaparmakov <aia21@cantab.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: remove deprecated firmware API
From: Linas Vepstas <linas@austin.ibm.com>
This patch eliminates the usage of the deprecated ibm,fw-phb-id token for
idnetifying PCI bus heads in favor of the documented, offically supported
mechanism for obtaining this info. Please note that some versions of
firmware may return incorrect values for the ibm,fw-phb-id token.
Signed-off-by: Linas Vepstas <linas@linas.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: set ppc_md.log_error
We have a platform-specific function pointer on ppc64 for a function to log
errors detected by the platform, but it was never getting set. This patch
sets it on pSeries (the only ppc64 platform which has an error logging
function).
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mporter@kernel.crashing.org>
[PATCH] ppc32: Redwood[56] support for smc91x Ethernet driver
This patch enables the Redwood 5 and Redwood 6 platforms to use the smc91x
ethernet driver.
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
Signed-off-by: Matt Porter <mporter@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mbligh@aracnet.com>
[PATCH] ia32 NUMA: physnode_map entries can be negative
Based on work from Bill Irwin <wli@holomorphy.com>
physnode_map[] needs to be signed so that pfn_to_nid() can return negative
values used to detect invalid pfn's.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jack@suse.cz>
[PATCH] Fix minor quota race
It fixes a possible race between quotaoff and prune_icache. The race could
lead to some forgotten pointers to quotas in inodes leading later to BUG
when invalidating quota structures.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] i386 math emu build fix
rmk's patch found a defined-but-unimplemented symbol
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] remove unused variable in esp.c
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] remove unused variable in mxser.c
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] fbcon: optimization for accel_putcs()
I did some simple benchmarking (time cat linux-2.6.7-mm5/MAINTAINERS)
between 2.4 and 2.6 and I am not satisfied with what I see (It's claimed
that fbdev-2.6 is faster than 2.4). The reason for the claim:
2.4 putcs - draw small amounts of data a lot of times
2.6 putcs - draw larger amounts of data a fewer times
The way characters are drawn in 2.6 is optimal for accelerated drivers but
should also give a speed boost for drivers that rely on software drawing.
However the penaly incurred when preparing a large bitmap from a number of
small bitmaps is currently very high. This is because of the following
reasons:
1 fb_move_buf_{aligned|unaligned} uses pixmap->{out|in}buf. This is very
expensive since outbuf and inbuf methods process only a byte or 2 of data
at a time.
2 fb_sys_outbuf (the default method for pixmap->outbuf) uses memcpy().
Not a good choice if moving only a few bytes.
3 fb_move_buf_unaligned (used for fonts such as 12x22) also involves a
lot of bit operations + a lot of calls to outbuf/inbuf which
proportionately increases the penaly.
So, I thought of separating fb_move_buf_* to fb_iomove_buf_* and
fb_sysmove_buf_*.
fb_iomove_buf_* - used if drivers specified outbuf and inbuf methods
fb_sysmove_buf_* - used if drivers have no outbuf or inbuf methods
*Most, if not all drivers fall in the second category.
Below is a table that show differences between 2.4, 2.6 and 2.6 +
abovementioned changes. To reduce the effect of panning and
fillrect/copyarea, the scrollmode is forced to redraw.
=================================================================
Test Hardware: P4 2G nVidia GeForce2 MX 64
Scrollmode: redraw
time cat linux-2.6.7-mm5/MAINTAINERS
1024x768-8 1024x768-16 1024x768-32
=================================================================
8x16 noaccel (2.4)
real 0m5.490s real 0m8.535s real 0m15.388s
user 0m0.001s user 0m0.000s user 0m0.001s
sys 0m5.487s sys 0m8.535s sys 0m15.386s
8x16 noaccel (2.6)
real 0m5.166s real 0m7.195s real 0m12.177s
user 0m0.001s user 0m0.000s user 0m0.000s
sys 0m5.164s sys 0m7.192s sys 0m12.176s
8x16 noaccel+patch (2.6)
real 0m3.474s real 0m5.496s real 0m10.460s
user 0m0.001s user 0m0.001s user 0m0.001s
sys 0m5.492s sys 0m5.492s sys 0m10.454s
=================================================================
8x16 accel (2.4)
real 0m4.368s real 0m9.420s real 0m22.415s
user 0m0.001s user 0m0.001s user 0m0.001s
sys 0m4.019s sys 0m9.384s sys 0m22.312s
8x16 accel (2.6)
real 0m4.296s real 0m4.339s real 0m4.391s
user 0m0.001s user 0m0.001s user 0m0.000s
sys 0m4.280s sys 0m4.336s sys 0m4.389s
8x16 accel+patch (2.6)
real 0m2.536s real 0m2.649s real 0m2.799s
user 0m0.000s user 0m0.000s user 0m0.001s
sys 0m2.536s sys 0m2.645s sys 0m2.798s
=================================================================
1024x768-8 1024x768-16 1024x768-32
=================================================================
12x22 noaccel (2.4)
real 0m7.883s real 0m12.175s real 0m21.134s
user 0m0.000s user 0m0.000s user 0m0.001s
sys 0m7.882s sys 0m12.174s sys 0m21.129s
12x22 noaccel (2.6)
real 0m10.651s real 0m13.550s real 0m21.009s
user 0m0.001s user 0m0.001s user 0m0.000s
sys 0m10.617s sys 0m13.545s sys 0m21.008s
12x22 noaccel+patch (2.6)
real 0m4.794s real 0m7.718s real 0m15.173s
user 0m0.002s user 0m0.001s user 0m0.000s
sys 0m4.792s sys 0m7.715s sys 0m15.170s
=================================================================
12x22 accel (2.4)
real 0m3.971s real 0m9.030s real 0m21.711s
user 0m0.000s user 0m0.000s user 0m0.000s
sys 0m3.950s sys 0m8.983s sys 0m21.602s
12x22 accel (2.6)
real 0m9.392s real 0m9.486s real 0m9.508s
user 0m0.000s user 0m0.000s user 0m0.001s
sys 0m9.392s sys 0m9.484s sys 0m9.484s
12x22 accel+patch (2.6)
real 0m3.570s real 0m3.603s real 0m3.848s
user 0m0.001s user 0m0.000s user 0m0.000s
sys 0m3.567s sys 0m3.600s sys 0m3.844s
=================================================================
Summary:
1 2.6 unaccelerated is a bit faster than 2.4 when handling 8x16 fonts,
with a higher speed differential at high color depths.
2 2.4 unaccelerated is a bit faster than 2.6 when handling 12x22 fonts,
with a smaller speed difference at high color depths (2.6 is actually a
bit faster than 2.4 at 32bpp).
3 2.4 rivafb accelerated suffers at high color depths, even becoming
slower than unaccelerated, possibly because of the 'draw few bytes many
times' method.
4 2.6 rivafb accelerated has similar performance at any color depth,
possibly because of 'draw lots of bytes a fewer times' method.
5 With the changes, there is a speed gain of ~1.7 seconds and ~5.7
seconds with 8x16 and 12x22 fonts respectively indepependent of the color
depth or acceleration used. The speed gain is constant but significant.
Below is a patch against 2.6.7-mm5. The effects will be very noticeable
with drivers that uses SCROLL_REDRAW, but one should still see some speed
gain even if SCROLL_YPAN/YWRAP is used.
Separated fb_sys_move_* into fb_iosys_move_* and fb_sysmove_* to reduce
penalty when constructing fb_image->data from character maps. In my
testcase (1024x768 SCROLL_REDRAW), I get a ~1.7 second advantage with 'time
cat MAINTAINERS' using 8x16 fonts and ~5.7 seconds with 12x22 fonts. The
speed gain is independent of acceleration or color depth.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] err1-40: sysvfs locking fix
Found by the new Stanford locking checker.
Minimal fix for a deadlock in sysvfs: get_branch() can take
read_lock(&pointers_lock), but one caller already has a write_lock.
Perhaps some of the "oh we raced, drop everything and try again" logic in
there can go away now, but this is enugh to fix the obvious deadlock.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] err1-2: sscape locking fix
Fix deadlock identified by the Stanford locking checker.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] err1-14: sb_audio locking fix
Lamely fix a straightforward deadlock in sb_audio.c. Founf by the Stanford
locking checker.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] err2-1 dvb_register_i2c_device locking fix
Fix deadlock identified by the Stanford locking checker.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] err2-25: dvb_register_i2c_bus() locking fix
Found by the Stanford locking checker.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] err2-27: i2o_claim_device() locking fix
Found by the Stanford locking checker
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] err2-29: ufs_new_fragments() locking fix
Found by the Stanford locking checker
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<James.Bottomley@SteelEye.com>
[PATCH] dma_get_required_mask() build fix
This new function fails to build on sparc64 due to nasty include
dependencies.
Fix that by uninlining it - it was too big for inlining anyway.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paul@allied-universal.com>
[PATCH] telephony: support devfs
Add devfs support to telephony devices. Only tested with a single
telephony device. Devices name phone/<minor>.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] s/2.5/2.6/ in MAINTAINERS
s/2.5/2.6/ in MAINTAINERS
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] apm.c warning fix
arch/i386/kernel/apm.c: In function `suspend':
arch/i386/kernel/apm.c:1221: warning: implicit declaration of function `save_processor_state'
arch/i386/kernel/apm.c:1223: warning: implicit declaration of function `restore_processor_state'
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jgarzik@pobox.com>
[libata] create, and use, ->irq_clear hook
This is more conservative in general, and so applies to multiple
controllers. Specifically it attempts to address irq-related issues
on the Intel ICH5/6 hardware. On Intel ICH5/6, the BMDMA 'interrupt'
status bit will be set even on non-DMA commands, which software
(and I) did not expect.
This change clears pending interrupts once upon initialization,
and then each time ata_irq_on() is called.
<jgarzik@pobox.com>
[ata] add ata_ok() inlined helper, and ATA_{DRDY,DF} bit to linux/ata.h
<jgarzik@pobox.com>
[libata] split ATA_QCFLAG_SG into ATA_QCFLAG_{SG,SINGLE}
In part of the effort to remove SCSI specifics from the libata
internals, remove references to cmd->use_sg. cmd->use_sg
becomes ATA_QCFLAG_SG, and !cmd->use_sg becomes ATA_QCFLAG_SINGLE.
Convenience constant ATA_QCFLAG_DMAMAP is created when the programmer
wishes to refer collectively to ATA_QCFLAG_{SG,SINGLE}.
<jgarzik@pobox.com>
[libata] create, and use aga_sg_init[_one] helpers
Move more SCSI-specific code out of libata core.
<jgarzik@pobox.com>
[libata sata_promise] update driver to use new ->qc_issue hook
The ->qc_issue hook was designed to allow drivers to override some
or all of the actual delivery of the taskfile to hardware.
In the case of Promise, the hardware has its own packet format when doing
read/write DMA commands, but uses traditional ATA taskfile registers
for other types of commands.
<pj@sgi.com>
[PATCH] remaining cpumask const qualifiers
The remainder of the const qualifiers on cpumask ops.
My cpumask overhaul missed specifying the const qualifiers
in cpumask.h. Subsequently, Linus has added some. The following
should provide the remainder of them. It also fixes one src vs dst
variable misnaming.
Using crosstool on 2.6.7-mm5, I have built the following
arch's with the following change included:
alpha ia64 powerpc-405 powerpc-750 sparc sparc64 x86_64
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<marcel@holtmann.org>
[Bluetooth] Change inquiry_cache to hci_inquiry_cache
This patch changes the inquiry_* functions to be either local to hci_core.c
or change name from inquiry_cache_lookup to hci_inquiry_cache_lookup to try
and reduce the potential for namespace conflicts. There could be USB or SCSI
or other code that uses an inquiry_cache.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
<marcel@holtmann.org>
[Bluetooth] Fix deadlock in the 3Com driver
This patch fixes the deadlock problem when bt3c_interrupt() is calling
bt3c_write_wakeup() with info->lock held.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
<marcel@holtmann.org>
[Bluetooth] Fix kobject oops on firmware loading
Allocate the memory for .kobj.k_name and make use of kobject_init() for
the fake device that is needed for firmware loading.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
<marcel@holtmann.org>
[Bluetooth] Add HID protocol support
This patch adds support for the Bluetooth HID protocol to the
Bluetooth subsystem. Currently only the boot mode is supported.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
<marcel@holtmann.org>
[Bluetooth] Allocate protocol number for AVDTP support
This patch allocates the next free protocol number for the upcoming
AVDTP support.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
<hch@lst.de>
[PATCH] ppc32: compilation failure on ppc32
This fixes compilation on ppc32.
The power/smp.o file should be linked only if both SMP and SWSUSPEND
are configured in. It used to do it even without SWSUSPEND.
<lethal@Linux-SH.ORG>
[PATCH] swap_unplug_io_fn() nommu update
include/linux/swap.h changed the definition for swap_unplug_io_fn() awhile
back, but mm/nommu.c was never updated to reflect the new definition.
As such, mm/nommu.c presently fails to compile. This fixes it.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<airlied@starflyer.(none)>
typo..
<airlied@starflyer.(none)>
typo in radeon_state.c
<airlied@starflyer.(none)>
whitespace cleanup in radeon.h
<nico@org.rmk.(none)>
[ARM PATCH] 1950/1: SIZEOF_MACHINE_DESC requires asm/constants.h
Patch from Nicolas Pitre
The change as seen here:
http://linux.bkbits.net:8080/linux-2.5/diffs/arch/arm/kernel/head.S@1.19?nav=index.html|ChangeSet@-4d|cset@1.1769.3.12
has this note:
"No need to include asm/mach/arch.h"
But it now requires asm/constants.h otherwise SIZEOF_MACHINE_DESC
is not defined. Why compilation succeeds anyways still mystify me.
<icampbell@com.rmk.(none)>
[ARM PATCH] 1953/1: Omit id for platform devices where only one can possibly exist.
Patch from Ian Campbell
Now that the BK tree allows platform devices to specify an id of -1
to get rid of the numbered suffix.
Following discussion on the l-a-k mailing list here is patch to do
this for the pxafb, pxa2xx-udc and pxamci generic PXA2xx platform
devices and the platform devices on the Lubbock.
<jelenz@edu.rmk.(none)>
[ARM PATCH] 1938/1: Support for Collie device
Patch from John Lenz
Cleanup and forward port of patch 1850.
Add machine support for the Sharp Zaurus SL5500 PDA.
Does not include support for the collie serial port or
the sa1100fb_lcd_power function.
<miles@lsi.nec.co.jp>
[PATCH] v850: Get rid of lvalue-casts in memset.c to make gcc happy
Signed-off-by: Miles Bader <miles@gnu.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<miles@lsi.nec.co.jp>
[PATCH] v850: Use __volatile__ qualifier on test_bit asm statements
Otherwise recent versions of gcc seem to optimize away some necessary tests.
Signed-off-by: Miles Bader <miles@gnu.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<miles@lsi.nec.co.jp>
[PATCH] v850: Return value from no_action in irq.c
Signed-off-by: Miles Bader <miles@gnu.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: EEH fixes for POWER5 machines (1/2)
From: Linas Vepstas <linas@austin.ibm.com>
This patch allows ppc64 to boot on Power5 machines. The new Power5 PCI
bridge design requires EEH (enhanced PCI error handling) to be enabled for
all PCI devices, not just some PCI devices. In addition, this patch moves
the check for PCI to ISA bridges out of perf critical code, and into
initialization code. This also avoids race conditions where the device
type might not have been set. Also, some whitespace fixes, and some
error-message-printing beautification.
Signed-off-by: Linas Vepstas <linas@linas.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: EEH fixes for POWER5 machines (2/2)
From: Linas Vepstas <linas@austin.ibm.com>
This patch fixes the usage of the slot-error-detail log buffer for the
Power5 architecture. The size of the error buffer is variable, and the
correct size to use should have been obtained from firmware. Failure to
use the correct buffer sizes will result in hard-to-debug system lockups
deep in firmware. This patch is based on an earlier patch from Ben
Herrenschmidt, which essentially did the same thing.
This patch also tweaks some of the subroutine documentation.
Signed-off-by: Linas Vepstas <linas@linas.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: RTAS error log locking fix
From: Linas Vepstas <linas@austin.ibm.com>
When an RTAS call returns the "hardware error" code, we need to do another
RTAS call to find out what went wrong. Previously we weren't doing that
inside the lock that serializes RTAS calls, and thus another cpu could get
in and do another RTAS call in the meantime. This patch fixes it. This
patch also includes some minor whitespace fixes.
Signed-off-by: Linas Vepstas <linas@linas.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: gcc 3.5 fixes
gcc 3.5 ICEd on the ppc64 version of __ptep_set_access_flags, but it does
look like we want to use *ptep here.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: gcc 3.5 fixes #2
Here are the ppc64 specific gcc 3.5 fixes.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: SPLPAR spinlock optimisation
Currently our spinlocks can call into the hypervisor on dedicated processor
machines. Doing this may slow our locks down, so avoid it where possible.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<olh@suse.de>
[PATCH] ppc32: biarch gcc support
A native powerpc64-linux gcc can not compile a ppc32 kernel properly. This
patch fixes it. It was copied from ppc64. The change to vmlinux.lds.S
fixes this error:
ld: warning: powerpc:common architecture of input file `init/built-in.o' is
incompatible with powerpc:common64 output
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] ppc64: remove MachineCheck_Pseries
rmk added a check to vmlinux for undefined symbols in -mm kernels. ppc64
fails due to trying to export an unimplemented symbol from assembly code.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] port reboot workarounds to new DMI probing
This patch moves reboot related workarounds out of dmi_scan.c Please
consider applying.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] Fix sparse warnings in fs/udf/*
CHECK fs/udf/dir.c
fs/udf/dir.c:240:13: warning: expected lvalue for member dereference
[...]
CHECK fs/udf/namei.c
fs/udf/namei.c:872:6: warning: expected lvalue for member dereference
fs/udf/namei.c:916:6: warning: expected lvalue for member dereference
fs/udf/namei.c:1189:14: warning: expected lvalue for member dereference
fs/udf/namei.c:1234:7: warning: expected lvalue for member dereference
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mbligh@aracnet.com>
[PATCH] fix up physnode_map
At the moment, we initialise physnode_map from the various BIOS tables,
which can create problems, as holes inside an node return 1 for pfn_valid,
and yet pfn_to_nid is not correct for them. I'd hacked around this in my
tree by defaulting the mapping to 0, not -1, but that's not the correct fix
... this is.
I consolidated all the code back into 1 place, and use node_start_pfn[] and
node_end_pfn[] to walk over it instead - that means it matches up perfectly
with lmem_map's as we're using the same data. It also cleans up a lot of
the code.
Tested on both NUMA-Q and x440 ... and it only affects i386 NUMA boxen.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] wavefront_fx.c build fix
With gcc from CVS:
sound/isa/wavefront/wavefront_fx.c:697: error: static declaration of 'page_zero' follows non-static declaration
include/sound/yss225.h:4: error: previous declaration of 'page_zero' was here
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] MTRR __initdata fix
smp_changes_mask is used by generic_set_all() which isn't __init
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] selinux build fix
With gcc-3.5 from CVS:
security/selinux/avc.c:76: error: static declaration of 'avc_cache_stats' follows non-static declaration
security/selinux/include/avc.h:107: error: previous declaration of 'avc_cache_stats' was here
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] selinux space saving
Move inline avc_cache_stats helper functions alongside the statically declared
avc_cache_stats array.
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<eger@havoc.gtf.org>
[PATCH] err1-7, err1-8: double locking fix for radeonfb
radeonfb: the Stanford lock checker found us double-locking rinfo->reg_lock
via sequences like OUTPLL(foo, INPLL(bar) | baz ), as both OUTPLL and INPLL
grab the register lock. This should fix the problem.
Signed-off-by: David Eger <eger@havoc.gtf.org
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pj@sgi.com>
[PATCH] Fix ia64 UPF_RESOURCES pcdp.c 2.6.7-mm5 build
It looks like someone removed UPF_RESOURCES in remove-upf_resources.patch
in parallel with someone adding drivers/firmware/pcdp.c that references
UPF_RESOURCES.
In any event, trying to build a defconfig ia64 2.6.7-mm5 (which includes
CONFIG_SERIAL_8250=y in the .config) fails with:
drivers/firmware/pcdp.c: In function `setup_serial_console':
drivers/firmware/pcdp.c:100: error: `UPF_RESOURCES' undeclared (first use in this function)
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pj@sgi.com>
[PATCH] sparc32 cpumask bitop build fix
With the following changes, I was able to compile the "sparc" (32 bit)
arch, using defconfig and crosstool. There were still plenty of warnings,
but nothing else relating to bitops or cpumasks that I noticed. This is
working with 2.6.7-mm5.
I have no way to boot test this, but these changes seem obvious enough that
I'd recommend including them.
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] force O_LARGEFILE in sys_swapon() and sys_swapoff()
For 32-bit, one quickly discovers that swapon() is not given an fd already
opened with O_LARGEFILE to act upon and the forcing of O_LARGEFILE for
64-bit is irrelevant, as the system call's argument is a path. So this
patch manually forces it for swapon() and swapoff().
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] gcc 3.5 fixes
gcc 3.5 is warning about static vs non static function declarations. The
following patch removes function prototypes in .h files where possible and
changes prototypes to be static elsewhere.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] gcc 3.5 fixes #2
gcc 3.5 is warning about unused static variables, add __attribute_unused__
to the 2 places to silence it.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@infradead.org>
[PATCH] __bdevname leak fix
The __bdevname library function is leaking module references due to
__bdevname
->get_gendisk
->kobj_lookup
->ata_probe
->get_disk
->try_module_get
What we're trying to do in there is too ambitious. Change it to just print
the major and minor.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] spurious remap_file_pages() -EINVAL
As ->vm_private_data is used as a cursor for swapout of VM_NONLINEAR vmas,
the check for NULL ->vm_private_data or VM_RESERVED is too strict, and
should allow VM_NONLINEAR vmas with non-NULL ->vm_private_data.
This fixes an issue on 2.6.7-mm5 where system calls to remap_file_pages()
spuriously failed while under memory pressure.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] remove allowdma0 documentation
allowdma0 is gone in 2.6, the patch below removes the mentionings of this
option in the documentation.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] kyrofb warning fix
drivers/video/kyro/fbdev.c: In function `kyrofb_probe':
drivers/video/kyro/fbdev.c:736: warning: passing arg 1 of `memset' makes pointer from integer without a cast
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<linux@de.rmk.(none)>
[PCMCIA] check for proper registration with device core
Patch from Dominik Brodowski
Fail if registration of socket with driver core failed. This is
necessary so that socket-related sysfs entries will appear always
if a socket thread is up and running.
<hadi@znyx.com>
[PKT_SCHED]: Pass NET_XMIT_* status properly back through classifiers.
<davem@nuts.davemloft.net>
[PKT_SCHED]: Rip out requeue stat addition, user ABI breaker.
<jaap.keuter@xs4all.nl>
[IPV4]: Calculate default broadcast even when using SIOCSIGNETMASK.
While getting hands-on with netkit (www.netkit.org), a networking
simulation environment based on UML, it struck me that ifconfig wasn't
capable of calculating the proper broadcast address for a subnetted
interface. Some browsing through newsgroups and on the Debian package
site (nettools), showed that this leads to misconfigured interfaces and
a couple of bugreports on ifconfig.
Digging a bit deeper revealed that it actually is an issue with
SIOIFNETMASK. Once you bring up an interface with SIOIFADDR, a classfull
netmask and broadcast address is set (if applicable for the type of
interface), in order to get a properly configured interface. But if you
subnet the network using SIOIFNETMASK no proper broadcast address is
set. So you always have to calculate it yourself, obviously leading to
configuration errors.
This patch takes care of this. First of all it doesn't change
existing functionality, eg. a command like 'ifconfig eth0 192.168.1.1
netmask 255.255.255.240 broadcast 192.168.1.0' still works. But if you
omit the broadcast address, a proper 'all ones' broadcast address for the
subnet is set. 'ifconfig eth0 192.168.1.1 netmask 255.255.255.240' gives
you 'eth0 inet addr:192.168.1.1 Bcast:192.168.1.15 Mask:255.255.255.240'
and this should solve some real life problems.
Signed-off-by: Jaap Keuter <jaap.keuter@xs4all.nl>
Signed-off-by: David S. Miller <davem@redhat.com>
<herbert@gondor.apana.org.au>
[NETLINK]: Check connect address.
<herbert@gondor.apana.org.au>
[NETLINK]: Return err in netlink_connect.
This patch makes netlink_connect() return the value of err instead of 0.
It doesn't actually make any difference since the current implementation
of netlink_autobind() never fails. But since we went to all this trouble
to check the return status of autobind, might as well return the correct
value :)
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@redhat.com>
<shemminger@osdl.org>
[NET]: Allow large MTU on dummy net device.
It is useful for testing to allow larger MTU value to be set on
the dummy network device. The current code limits it to valid Ether mtu's.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<herbert@gondor.apana.org.au>
[ESP4]: Merge NAT-T code in esp_output().
<akpm@osdl.org>
[ROSE]: rose_route locking fix
Fix deadlock in rose_del_loopback_node(). Found by the Stanford locking
checker.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[AX25]: ax25_ds_idletimer_expiry() locking fix.
Fix deadlock identified by the Stanford locking checker.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[LAPB]: lapb_unregister() locking fix.
Fix deadlock identified by the Stanford locking checker.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[AX25]: ax25_rt_add() locking fix.
Fix deadlock identified by the Stanford locking checker.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<herbert@gondor.apana.org.au>
[AH4]: Harmonization of output function.
This is another step towards the union of the tunnel mode encapsulation
between transforms. As there are significant differences between the
tunnel encapsulation of IPv4 and IPv6, I'll be dealing with IPv4 only
for now.
This particular patch rearranges the code in ah_output to isolate the
tunnel mode encapsulation.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@redhat.com>
<yoshfuji@linux-ipv6.org>
[IPV6] Bring lo up before setting other interface up.
IPv6 was not configured appropriately without lo.
Noticed by / tested by Russell King <rmk+lkml@arm.linux.org.uk>.
Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[SPARC64]: Kill silo_args bogus .globl
<vandrove@vc.cvut.cz>
[VLAN]: Do not access released memory.
<yoshfuji@linux-ipv6.org>
[IPV6]: Fix flags for ndisc dst.
Because RTF_LOCAL is for local unicast address,
it was wrong to set RTF_LOCAL to ndisc dst.
This patch also adds some comment on other fields.
Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<yoshfuji@linux-ipv6.org>
[TCP]: Inline message.
D: [TCP] Diet using unknown
<yoshfuji@linux-ipv6.org>
[NET]: Save space for dst underflow message.
Save space for 'dst underflow' message.
Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<herbert@gondor.apana.org.au>
[XFRM]: Convert XFRM_MSG_* macros to an enum.
This way we will not forget to update XFRM_MSG_MAX in
the future.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
[PKT_SCHED]: Do not embed spinlock in tc_stats structure.
This makes it not get sized/copied around to/from
userspace correctly. The real crux of the problem
comes from the rtnetlink attribute copying line which
read:
RTA_PUT(skb, TCA_STATS, (char*)&st->lock - (char*)st, st);
which is not necessarily sizeof(struct tc_stats) due
to alignment issues.
<davem@nuts.davemloft.net>
[NETFILTER]: Fix initializer of ip6table.c:initial_table
Just because gcc accepts [index] bar as
[index] = bar is no reason to make use of
that gross construct.
Also fully C99ify
<rmk@flint.arm.linux.org.uk>
[ARM] Use platform_get_resource/platform_get_irq in sa1111.c
<rmk@flint.arm.linux.org.uk>
[ARM] Usual mach-types update.
<icampbell@com.rmk.(none)>
[ARM PATCH] 1954/2: Make pxa platform device names more sensible
Patch from Ian Campbell
Update 1954/1 to use pxa2xx- as the platform device prefix
instead of pxa2xx_. This changes pxamci to pxa2xx-mci, pxa2xx_udc
to pxa2xx-udc and pxafb to pxa2xx-fb. pxa2xx-uart doesn't need changing.
<linux@de.rmk.(none)>
[PCMCIA] core socket sysfs support, export card type
Patch from Dominik Brodowski
Add a first socket-related sysfs entry; and to keep things ordered,
do so in a new file drivers/pcmcia/socket_sysfs.c. To keep things
easy, all files will be present all the time, even if no card is in
the socket at a specific moment -- however, accessing the file will
result in -ENODEV then, so that
# cat /sys/class/pcmcia_socket/pcmcia_socket1/card_type
will cause an error message like
"cat: card_type: No such device"
which is quite self-explanatory.
The attribute "card_type" will return either "16-bit" or "32-bit",
depending on whether the PCCard is a 16-bit PCMCIA card or a 32-bit
CardBus card. The result "invalid" should not happen, and if it
happens, something strange is going on.
<linux@de.rmk.(none)>
[PCMCIA] card voltage
Patch from Dominik Brodowski
Add an attribute "card_voltage" which returns the card's voltage
requirements:
"5.0V", "3.3V" or "X.XV".
<linux@de.rmk.(none)>
[PCMCIA] card vpp / vcc
Patch from Dominik Brodowski
Add attributes "card_vpp" and "card_vcc" which return these voltages,
like "3.3V"
<linux@de.rmk.(none)>
[PCMCIA] card insert / eject
Patch from Dominik Brodowski
Add two further attributes, "card_insert" and "card_eject". Reading
these files will fail; but writing _anything_ non-empty to these
files will execute an user insert/ejection request -- equivalent
to "cardctl insert", "cardctl eject".
To ensure proper error values to userspace, transform the return
values from CS_ error codes to -E error codes.
<sebek64@post.cz>
[NETFILTER]: ip6t_LOG and packets with hop-by-hop options.
Packet with IPPROTO_HOPOPTS extended header isn't logged properly by
ip6t_LOG.c. It only prints PROTO=0 and nothing more, because
IPPROTO_HOPOPTS=0 and in this file 0 is used to indicate last header.
This patch fix it by using IPPROTO_NONE to indicate last header.
Signed-off-by: Marcel Sebek <sebek64@post.cz>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<shemminger@osdl.org>
[PKT_SCHED]: Update to network emulation QOS scheduler.
This patch updates the network emulation packet scheduler.
* name changed from delay to netem since it does more than just delay
* Catalin's merged code to do packet reordering
* uses a socket queue's directly rather than layering on qdisc(fifo)
because this is used in performance tests.
* adds placeholder in API for future enhancements (rate and duplicate).
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<herbert@gondor.apana.org.au>
[IPCOMP]: Exclude IPCOMP header from props.header_len
This is another patch on the way towards a unified XFRM tunnel
encapsulation function.
This patch changes the value of props.header_len for IPCOMP to
exclude the IPCOMP header. The reason is that the IPCOMP header
is added only if the packet is compressible. That is, if the
size of the compressed payload plus the size of the IPCOMP header
is less than that of the original payload.
This means that the IPCOMP encapsulation does not impose any
overhead at all as far as the MTU is concerned. The current
code incorrectly reduces the MTU by the size of the IPCOMP
header.
As a side-effect, this means that we don't have to move the
IP header around when IPCOMP is used.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
[PKT_SCHED]: Fix some missing qdisc_copy_stats() conversions.
<shemminger@osdl.org>
[PKT_SCHED]: Two small netem fixes.
- rtnetlink.h needs including
- optimize loss test so that net_random() call is not done
when no-loss is indicated
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
[PKT_SCHED]: Another missed qdisc_copy_stats() conversion.
<hadi@znyx.com>
[PKT_SCHED]: New version of u32 classifier hashing workaround.
This version does not change user visible structures.
Signed-off-by: Jamal Hadi Salim <hadi@znyx.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
[PKT_SCHED]: Kill CONFIG_CLS_U32_PERF2 cruft code.
<davem@nuts.davemloft.net>
[PKT_SCHED]: Kill fix_u32_bug ifdef tests in cls_u32.c
<davem@nuts.davemloft.net>
[IPV4]: Set UDP accept back to sock_no_accept.
Setting it to inet_accept causes UDP accept attempts
to OOPS. In particular, accept01 from LTP tries this.
Signed-off-by: David S. Miller <davem@redhat.com>
<schwidefsky@de.ibm.com>
[PATCH] s390: dasd driver changes
From: Horst Hummel <horst.hummel@de.ibm.com>
dasd device driver changes:
- Set and check the retry counter in start_IO for all requests.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: common i/o layer
From: Arnd Bergmann <arndb@de.ibm.com>
Common i/o layer changes:
- Reorder checking and setting of the ccw device id.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: ctc driver changes
From: Peter Tiedemann <ptiedem@de.ibm.com>
ctc driver changes:
- Make use of the debug feature to ease debugging.
- ctctty: use dev_alloc_name to allocate a network device name.
- ctctty: avoid deadlock of ctc_tty_close vs ctc_tty_flush_buffer.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: cpu-idle notifier
This patch introduces a notifier chain for cpu idle. There are two events
CPU_IDLE and CPU_NOT_IDLE that are called just before the cpu goes to sleep
and right after the cpu woke up again. The notifier is used to simplify the
no-hz-timer-in-idle feature and the virtual cpu timers. In addition the
virtual cpu timer functions have been moved to arch/s390/kernel/vtime.c, which
gives a nice separation between the timer functions related to real time and
the timer functions related to virtual cpu time.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: cpu hotplug support
From: Ursula Braun-Krahl <braunu@de.ibm.com>
From: Heiko Carstens <heiko.carstens@de.ibm.com>
From: Gerald Schaefer <geraldsc@de.ibm.com>
From: Martin Schwidefsky <schwidefsky@de.ibm.com>
Add s390 architecture support for cpu hotplug.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] fbcon mode switching fix
Ugly workaround. When switching from KD_GRAPHICS to KD_TEXT, the event is
captured at fbcon_blank() allowing fbcon to reinitialize the hardware.
However, some hardware requires the reinitialization to be done
immediately, others require it to be done later. Others may need it to be
done immediately and later, this is the worst case.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] fbcon: refinements for fbcon
1. From Petr Vandrovec <vandrove@vc.cvut.cz>.
Begin quote
yesterday I finally found why 2.6.x has problems with taking
over vgacon. Problem is that take_over_console does:
if (IS_VISIBLE)
save_screen(i);
...
visual_init(i, 0);
...
so code nicely saves screen contents, and calls visual_init,
which calls fbcon's init, which in turn can issue vc_resize. And this
vc_resize will trigger read from vc->vc_origin. But vc_origin still
points to videomemory, not to the buffer where save_screen() copied
its data.
End quote
So updating vc->vc_origin to point to screenbuf after the previous console
deinitializes allows fbcon to correctly update the screen from the screen
buffer. This change makes the clearing of vram (using fillrect) unnecessary.
2. If FBINFO_MISC_MODESWITCH flag is set in info, do the set_par() in
fbcon_switch() instead of piggy-backing the set_par() on fbcon_resize(). This
preserves the current var, skipping the unnecessary fb_find_mode() step.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] fbcon: new scrolling mode: YPAN + REDRAW
Added a new scrolling mode (SCROLL_PAN_REDRAW) to fbcon that should greatly
benefit unaccelerated drivers such as VESA fbdev. An increase of 3-10 times
in scrolling speed can be expected.
Currently, fbcon has 4 different scrolling methods (1-4). Potentially, we can
have 6. This patch implements SCROLL_PAN_REDRAW (5). SCROLL_WRAP_REDRAW (6)
is still unimplemented.
Scroll Mode Operation YPan YWrap
+++++++++++++++++++++++++++++++++++++++++++++++++++++
1. SCROLL_ACCEL copyarea No No
2. SCROLL_REDRAW imageblit No No
3. SCROLL_PAN copyarea Yes No
4. SCROLL_WRAP copyarea No Yes
5. SCROLL_PAN_REDRAW imageblit Yes No
6. SCROLL_WRAP_REDRAW imageblit No Yes
+++++++++++++++++++++++++++++++++++++++++++++++++++++
Note 1: I've changed the nomenclature to increase clarity:
SCROLL_ACCEL = SCROLL_MOVE
SCROLL_REDRAW = SCROLL_REDRAW
SCROLL_PAN = SCROLL_PAN_MOVE
SCROLL_WRAP = SCROLL_WRAP_MOVE
To demonstrate the effect of each of the scrolling methods on
an unaccelerated PCI/AGP-based driver (vesafb), I used a simple
benchmark (time cat linux/MAINTAINERS - a 50K text file). The
framebuffer is set at:
1024x768-8bpp, 8x16 font, yres_virtual = 2*yres
1. SCROLL_MOVE:
real 5m50.277s
user 0m0.001s
sys 5m50.227s
Almost 6 minutes for a 50K text file. Using soft copyarea on a
PCI-based card is just too slow (because copyarea has to
read from the framebuffer memory).
2. SCROLL_PAN_MOVE
scrollmode: SCROLL_PAN
real 0m8.592s
user 0m0.000s
sys 0m8.586s
Using ypan with copyarea dramatically improves the scrolling. However, the
scrolling action is jerky (fast during the panning stages, slows down during
the copyarea stages).
3. SCROLL_REDRAW (this is the default scrolling mode)
real 0m3.189s
user 0m0.000s
sys 0m3.170s
Simply eliminating the copyarea, even without ypanning, makes it faster than
SCROLL_PAN_MOvE. Plus, the scrolling action is smoother.
So, if we combine YPanning with imageblit (PAN_REDRAW), we get this:
4. SCROLL_PAN_REDRAW
real 0m0.520s
user 0m0.000s
sys 0m0.518s
That's almost 6x faster than SCROLL_REDRAW. Increasing the amount of video
RAM still increases the speed, but not very dramatically. Higher than 16 MB,
the increase is negligible.
Using an accelerated driver, we see almost the same effect but not as
dramatically:
1. SCROLL_MOVE - accel
real 0m3.112s
user 0m0.000s
sys 0m3.112s
2. SCROLL_REDRAW - accel
real 0m2.604s
user 0m0.000s
sys 0m2.603s
Redraw is still faster than move, but not much.
3. SCROLL_PAN_MOVE - accel
real 0m0.203s
user 0m0.000s
sys 0m0.202s
4. SCROLL_PAN_REDRAW - accel
real 0m0.326s
user 0m0.002s
sys 0m0.323s
This is one exception. If panning is enabled, move is actually faster than
redraw. As to why, I don't know.
So based on the above, fbcon will choose the scrolling method based on the
following preference:
Ypan/Ywrap > accel imageblit > accel copyarea >
soft imageblit > (soft copyarea)
Note 2: Exception: accel copyarea > accel imageblit if Pan/Wrap is enabled.
Note 3: soft copyarea will be avoided by fbcon as much as possible unless
there is a specific override, ie., FBINFO_READS_FAST flag is set. If this
flag is set, fbcon will prefer copyarea over imageblit, accel or soft.
As a final note, in order for fbcon to use the best scrolling method, the
low-level drivers must provide the correct hinting by setting the
FBINFO_HWACCEL_* flags.
To vesafb users: boot vesafb like this for fastest scrolling action:
video=vesafb:ypan,vram:16
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] fbdev: set capabilities flag for vesafb and vga16fb
This patch sets the correct capabilities flag for vesafb and vga16fb to
provide fbcon with the correct hints as to the best scrolling mode.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ak@muc.de>
[PATCH] NUMA API: fix use-after-free bug
Move the memory policy freeing to later in exit to make sure the last
memory allocations don't use an uninitialized policy.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] sparse: fix remaining three non-ANSI warnings
CHECK fs/smbfs/smbiod.c
fs/smbfs/smbiod.c:68:25: warning: non-ANSI parameter list
CHECK drivers/isdn/tpam/tpam_crcpc.c
drivers/isdn/tpam/tpam_crcpc.c:57:15: warning: non-ANSI parameter list
CHECK drivers/scsi/aic7xxx/aic79xx_reg_print.c
drivers/scsi/aic7xxx/aic79xx_osm.h:791:19: warning: non-ANSI parameter list
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] saa5246a Videotext driver update
From: Michael Geng <linux@MichaelGeng.de>
The patch updates docs, comments + strings to also mention the SAA5281 chip
(which is compatible to the SAA5246A) as supported.
Signed-off-by: Michael Geng <linux@MichaelGeng.de>
Signed-off-by: Gerd Knorr <kraxel@bytesex.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trivial@rustcorp.com.au>
[PATCH] Remove include/{asm-i386,linux}/upd4990a.h
From: Alexey Dobriyan <adobriyan@mail.ru>
drivers/char/upd4990a.c was removed from 2.6.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<js189202@zodiac.mimuw.edu.pl>
[PATCH] Fix memory leak in epoll
There was a memory leak in epoll.
The reference count (d_count) of the struct dentry of a new epoll-fd was
set to TWO. (new_inode() assigned ONE, than ep_getfd() incremented it by
dget()). There was only ONE reference to this dentry, so struct dentry and
struct inode were never freed.
Signed-off-by: Davide Libenzi <davidel@xmailserver.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jesse@cola.voip.idv.tw>
[PATCH] snd_ctl_read() fix fix
hm, I had a brainfart here. The recent "fix" to snd_ctl_read() actually
unfixed it. Revert that, and fix the real bug.
Cc: Jaroslav Kysela <perex@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torvalds@ppc970.osdl.org>
sparse: annotate signal handler and ss_sp as user pointers
<jelenz@edu.rmk.(none)>
[ARM PATCH] 1937/1: LoCoMo common device
Patch from John Lenz
Cleanup and forward port of patch 1849.
This patch provides support for the SHARP LoCoMo device,
a companion chip similar to the sa1111 device. It is present
in many of the SHARP Zaurus line of PDAs.
<rmk@flint.arm.linux.org.uk>
Back out smc91x late collision "performance" hack.
Apparantly, the reason for this change is that it gives "much less
NFS stalls with a SMC91C96 on a 10/100MB switch."
Alan Cox's comments on this is:
"spec says 16 collision retries max _ever_. I bet his 'broken
switch' is a case of half v full duplex" and a recommendation to
remove it.
Also, since the change does not limit the number of times we may
retry to send the packet, I think this code opens a potential DoS
attack against network which has a machine connected running this
code.
<rmk@flint.arm.linux.org.uk>
[ARM] Remove asm/hardware.h from SMC91x ethernet driver.
This include isn't required for ARM builds either.
<rmk@flint.arm.linux.org.uk>
[ARM] Fix allocation of 8390 ethernet device structure in etherh.
<rmk@flint.arm.linux.org.uk>
[ARM] Fix two bugs in Acorn expansion card subsystem
- Setup synchronous expansion card resource.
- Fix order of IRQ and FIQ mask/offsets.
<linux@de.rmk.(none)>
[PCMCIA] Use a class interface to provide sysfs attributes.
Patch from Dominik Brodowski
<rmk@flint.arm.linux.org.uk>
[PCMCIA] Clean up class device attribute registration and fix build error
<jack@ucw.cz>
[PATCH] quota: inode->i_flags locking fixes
The patch fixes locking of i_flags. It removes S_QUOTA flag from i_flags
because it was almost unused and updating it on some places correctly
(under i_sem) would be tricky. Note that accessing of S_NOQUOTA flag is
serialized by dqptr_sem and so we can reliably tested without i_sem.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<olh@suse.de>
[PATCH] ppc32: serial console autodetection
We have something like this in our kernel since many months. It sets the
console device to what OF uses. ppc64 does the same, and it works ok.
serial is found on CHRP, ch-a is used on all powermacs.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<galak@somerset.sps.mot.com>
[PATCH] ppc32: CPM UART fixes
Here is a patch to fix some bugs with the current CPM UART code, Tom Rini
has seen this and ok'd it.
* Fixes need to config both SMC1 & SCC1
* Fixes buffer descriptor wrapping issue in set_termios
* Fixes confusion in Kconfig regarding CPM1 vs CPM2
Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
Signed-off-by: Pantelis Antoniou <panto@intracom.gr>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: uninline some user copy routines
gcc 3.5 is complaining about the size of copy_from_user. It turns out it
is rather large and putting it out of line saves us about 30kB on a default
kernel build.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: fix unbalanced dev_get/put calls in EEH code
This patch fixes some unbalanced usage of pci_dev_get()/pci_dev_put() calls
in the eeh code. The old code had too many calls to dev_put, which could
cause memory structs to be freed prematurely, possibly leading to bad bad
pointer derefs in certain cases.
Signed-off-by: Linas Vepstas <linas@linas.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: enable EEH on PCI host bridges
On recent pSeries systems, EEH needs to be enabled even on PCI Host Bridges
(PHB's). If not enabled, then ordinary PCI probing (config-space
reads/writes to the bridges) will generate firmware error messages,
possibly a very large number of messages for systems with large numbers of
pci slots.
Signed-off-by: Linas Vepstas <linas@linas.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: update lparcfg to use seq_file
From: Will Schmidt <willschm@us.ibm.com>
This patch includes updates and cleanup for the PPC64 proc/lparcfg interface.
- use seq_file's seq_printf for output
- remove redundant e2a function. (use viopath.c's instead)
- change to Kconfig to allow building as a module.
- export required symbols from LparData.c
Pass # 2 updates..
- Per Pauls request I've removed the vpurr references, and left
just a stub function get_purr().
- this should apply clean to latest linus tree. (test-applied against
2.6.7-rc3).
Pass # 3 updates...
- Correcting my previously incorrect description of the
lparcfg_count_active_processors() function..
This is for the cases where we have some number of virtual
processors that are different than the total number of threads
in the system. (i.e. systemcfg->processorcount isnt the desired
value for partition_active_processors)
- moved e2a function into its own file in arch/ppc64/lib.
- changed lparcfg_count_active_processors() to use a while loop
instead of a for loop.
- removed redundant of_node_put in lparcfg_count_active_processors().
- removed unneeded parms from get-system-parameter rtas_call.
Signed-off-by: Will Schmidt <willschm@us.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bgerst@didntduck.org>
[PATCH] kbuild: clean up module install rules
Consolidate rules for installing internal and external modules.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bgerst@didntduck.org>
[PATCH] kbuild: sort modules for modpost and modinst
Process modules in sorted order during modpost and modules install.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<dhowells@redhat.com>
[PATCH] intrinsic automount and mountpoint degradation support
Here's a patch that I worked out with Al Viro that adds support for a
filesystem (such as kAFS) to perform automounting intrinsically without the
need for a userspace daemon. It also adds support for such mountpoints to be
degraded at the filesystem's behest until they've been untouched long enough
that they'll be removed.
I've a patch (to follow) that removes some #ifdef's from fs/afs/* thus
allowing it to make use of this facility.
There are five pieces to this:
(1) Any interested filesystem needs to have at least one list to which
expirable mountpoints can be added.
Access to this list is governed by the vfsmount_lock.
(2) When a filesystem wants to create an expirable mount, it calls
do_kern_mount() to get a handle on the filesystem it wants mounting, and
then calls do_add_mount() to mount that filesystem on the designated
mountpoint, supplying the list mentioned in (1) to which the vfsmount
will be added.
In kAFS's case, the mountpoint is a directory with a follow_link() method
defined (fs/afs/mntpt.c). This uses the struct nameidata supplied as an
argument as a determination of where the new filesystem should be
mounted.
(3) When something using a vfsmount finishes dealing with it, it calls
mntput(). This unmarks the vfsmount for immediate expiry.
There are two criteria for determining if a vfsmount may be expired - it
mustn't be marked as in use for anything other than being a child of
another vfsmount, and it must have an expiry mark against it already.
(4) The filesystem then determines the policy on expiring the mounts created
in (2). When it feels the need to, it passes the list mentioned in (1) to
mark_mounts_for_expiry() to request everything on the list be expired.
This function examines each mount listed. If the vfsmount meets the
criteria mentioned in (3), then the vfsmount is deleted from the
namespace and disposed of as for unmounting; otherwise the vfsmount is
left untouched apart from now bearing an expiration mark if it didn't
before.
kAFS's expiration policy is simply to invoke this process at regular
intervals for all the mounts on its list.
(5) An expiration facility is also provided to userspace: by calling umount()
with a MNT_EXPIRE flag, it can make a request to unmount only if the
mountpoint hasn't been used since the last request and isn't in use now.
This allows expiration to be driven by userspace instead of by the
kernel if that is desirable.
This also means that do_umount() has to use a different version of
path_release() to everyone else... it can't call mntput() as that clears
the expiration flag, thus rendering this unachievable; so it's version of
path_release() calls _mntput(), which doesn't do the clear.
My original idea was to give the kernel more knowledge of automounted
things. This avoids a certain problem with stat() on a mountpoint causing it
to mount (for example, do "ls -l /afs" on a machine with kAFS), but Al wanted
it done this way.
> Why is autofs unsuitable?
Because:
(1) Autofs is flat; AFS requires a tree - mounts on mounts on mounts on
mounts...
(2) AFS holds the data as to what the mountpoints are and where they go, and
these may be cross-links to subtrees beyond your control. It's also not
trivial to extract a list of mountpoints as is required for autofs.
(3) Autofs is not namespace safe.
(4) Ducking back to userspace to get that to do the mount is pretty tricky if
namespaces are involved.
In fact, autofs may well want to make use of this facility.
Signed-Off-By: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<dhowells@redhat.com>
[PATCH] kAFS automount support
Here's a patch to allow the kAFS filesystem to use the automount facility
patch presented in a previous email.
It allows me to mount an AFS root volume on /afs and then just walk through
the directory structure causing referenced volumes to be automounted and
autoumounted.
For instance, if I do:
[root@andromeda root]# mount -t afs \#root.afs. /afs
[root@andromeda root]# ls /afs
asd cambridge cambridge.redhat.com grand.central.org
[root@andromeda root]# ls /afs/cambridge
afsdoc
[root@andromeda root]# ls /afs/cambridge/afsdoc/
ChangeLog html LICENSE pdf RELNOTES-1.2.2
And then look in the mountpoint catalogue, I see:
[root@andromeda root]# cat /proc/mounts
...
#root.afs. /afs afs rw 0 0
#root.cell. /afs/cambridge.redhat.com afs rw 0 0
#afsdoc. /afs/cambridge.redhat.com/afsdoc afs rw 0 0
Then after waiting a few minutes:
[root@andromeda root]# cat /proc/mounts
...
#root.afs. /afs afs rw 0 0
Is all that remains.
Signed-Off-By: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] Fix MCA_LEGACY dependencies
The patch below against 2.6.7-mm5 fixes more compile errors with
MCA_LEGACY=n.
Cc: Jeff Garzik <jgarzik@pobox.com>
Cc: James Bottomley <James.Bottomley@steeleye.com>
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] Use llseek instead of f_pos= for directory seeking
nfsd currently just sets f_pos when seeking in a directory. This bypasses
any checking and other handling that a filesystem might want to do.
So instead, we define "vfs_llseek" to be an exported "llseek", and use
that, both to seek at the start, and the find the new position at the end.
Thanks to
"Derrick Schommer" <dschommer@acopia.com>
"Trond Myklebust" <trond.myklebust@fys.uio.no>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] remove dead isdn pcmcia code
The <driver>_config function called just before clear DEV_CONFIG, and
DEV_STALE_LINK isn't set anywhere else. This is a copy & paste thing found
in all old pcmcia drivers.
The patch has been sent to the isdn list ages ago but I didn't get any
response.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kaos@sgi.com>
[PATCH] kallsyms ppc32 fix
PPC small data area base symbols shift between kallsyms phases 1 and 2, which
makes the kallsyms data unstable. Exclude them from the kallsyms list.
Signed-off-by: Keith Owens <kaos@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] update kernel-parameters.txt for the noexec option
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<axboe@suse.de>
[PATCH] cfq: bad allocation
Arjan (sensibly) put a might_sleep() in mempool_alloc() and it caught a bad
cfq usage.
Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hirofumi@mail.parknet.co.jp>
[PATCH] FAT: update document
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] Use NULL instead of integer 0 in security/selinux/
Fixup another round of sparse warnings of the type:
warning: Using plain integer as NULL pointer
Acked by Stephen.
From: Mika Kukkonen <mika@osdl.org>
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] int return to unsigned in smb_proc_readdir_long() in fs/smbfs/proc.c
CC [M] fs/smbfs/proc.o
fs/smbfs/proc.c: In function `smb_proc_readdir_long':
fs/smbfs/proc.c:2313: warning: comparison of unsigned expression < 0 is always false
fs/smbfs/proc.c:2467: warning: comparison of unsigned expression < 0 is always false
The first one is pretty dangerous looking, as smb_proc_readdir_long() can
return several negative error values and all those are converted to
unsigned and then erronously pass the test on line 2313. Chris Wright gave
it a quick look and we did not see immediately if this can be remotely
exploited, but it looks pretty scary.
The second warning on line 2467 is just extra so I just removed it.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trivial@rustcorp.com.au>
[PATCH] trivial: scripts_kernel-doc: ignoring embedded structs shouldn't be
From: <adobriyan@mail.ru>
Imagine you have a code similar to
struct foo {
union {
struct tcphdr *th;
} h;
union {
struct iphdr *iph;
} nh;
};
kernel-doc in it's current state will happily eat everything from first '{' to
last '}' and nobody will see parameter 'h' in documentation (look at
include/linux/skbuff.h:struct sk_buff for real world example).
So, fix the greedy regexp.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trivial@rustcorp.com.au>
[PATCH] trivial: scripts_kernel-doc: missing bracket.
From: <adobriyan@mail.ru>
Fix missing bracket when parameter to be documented is a pointer to function.
int (* resume (struct usb_interface *intf);
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trivial@rustcorp.com.au>
[PATCH] trivial: little arch_i386_kernel_timers_timer_none.c fix
fixes a cut'n'paste error...
Signed-off-by: Rusty Trivial Russell <trivial@rustcorp.com.au>
Signed-off-by: Adam Lackorzynski <adam@os.inf.tu-dresden.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trivial@rustcorp.com.au>
[PATCH] trivial: RCS___IGNORE quilt backup files
From: David Gibson <david@gibson.dropbear.id.au>
This patch excludes the .pc directory from the same things that
SCCS/BitKeeper/.svn/CVS files are excluded from. The .pc directory is used
for backup/reference files by quilt, a patch mangling system conceptually
derived from akpm's patch scripts. Excluding the .pc directory is handy,
because otherwise old versions of files found in there tend to end up at the
front of the TAGS index.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trivial@rustcorp.com.au>
[PATCH] trivial: remove warning in ftape
From: Chris Heath <chris@heathens.co.nz>
Here's a trivial patch that removes an unused-variable warning in ftape.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trivial@rustcorp.com.au>
[PATCH] trivial: arch_i386_kernel_scx200.c: kill duplicate #include
From: <a.othieno@bluewin.ch> (Arthur Othieno)
via scripts/checkincludes.pl:
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trivial@rustcorp.com.au>
[PATCH] trivial: kill off CONFIG_PCI_CONSOLE
(OK from maintainer Geert Uytterhoeven <geert@linux-m68k.org>)
From: a.othieno@bluewin.ch (Arthur Othieno)
AFAICS, CONFIG_PCI_CONSOLE isn't used elsewhere:
hubb@mars:linux-2.6.2$ grep -r PCI_CONSOLE * | grep -v defconfig
drivers/video/console/Kconfig:config PCI_CONSOLE
hubb@mars:linux-2.6.2$
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<apw@shadowen.org>
[PATCH] convert uses of ZONE_HIGHMEM to is_highmem
As the comments in mmzone.h indicate is_highmem() is designed to reduce the
proliferation of the constant ZONE_HIGHMEM. This patch updates references
to ZONE_HIGHMEM to use is_highmem(). None appear to be on critical paths.
Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rddunlap@osdl.org>
[PATCH] smbfs compilation warning fix
Use %Zd to eliminate a compiler warning in printk.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] Remove always false check in mm/slab.c
CC mm/slab.o
mm/slab.c: In function `kmem_cache_create':
mm/slab.c:1129: warning: comparison of unsigned expression < 0 is always false
This comes from the fact that 'align' is size_t and so unsigned. Just to be
sure, I did
$ grep __kernel_size_t include/*/posix_types.h
and yes, every arch defines that to be unsigned.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] Correct return type of hashfn() in fs/dquot.c
CC fs/dquot.o
fs/dquot.c:208: warning: type qualifiers ignored on function return type
Once again with extra gcc warnings enabled. Every user of the function is
expecting unsigned value, not int in first place, and I think the const is
just misplaced.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] Fix misplaced 'inline' in include/linux/iso_fs.h
CC [M] fs/isofs/namei.o
In file included from fs/isofs/namei.c:10:
include/linux/iso_fs.h:280: warning: `inline' is not at beginning of declaration
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] pagefault readaround fix
Mika Kukkonen <mika@osdl.org> says:
CC mm/filemap.o
mm/filemap.c: In function `filemap_nopage':
mm/filemap.c:1161: warning: comparison of unsigned expression < 0 is always false
The pagefault readaround code is currently doing purely readahead.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] slab: fix get_user inside spinlock
This little debugging __get_user is in fact happening inside a spinlock. It
was never very useful, and has caused problems for some architectures in the
past. Let's just remove it.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<aneesh.kumar@gmail.com>
[PATCH] alpha: print the symbol name in Oops
Cc: Richard Henderson <rth@twiddle.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] port ACPI sleep workaround to new DMI probing
This patch moves Toshiba ACPI sleep workaround out of dmi_scan.c
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] DMI isn't broken anymore
This patch removes dmi_broken global variable which is not used anymore.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] fix CRC16 misnaming
As pointed by Thomas Sailer, crc16.c module contains CRC16-CCITT (x^16 + x^12
+ x^5 + 1) implementation, not IBM CRC16 (x^16 + x^15 + x^2 + 1) one. Looks
like we need to rename it accordingly and this patchset does exactly this.
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] crc16 kconfig touchups
drivers/net/hamradio/Kconfig:116:warning: 'select' used by config symbol 'BAYCOM_SER_FDX' refer to undefined symbol 'CRC16'
drivers/net/hamradio/Kconfig:136:warning: 'select' used by config symbol 'BAYCOM_SER_HDX' refer to undefined symbol 'CRC16'
drivers/net/hamradio/Kconfig:154:warning: 'select' used by config symbol 'BAYCOM_PAR' refer to undefined symbol 'CRC16'
drivers/net/hamradio/Kconfig:169:warning: 'select' used by config symbol 'BAYCOM_EPP' refer to undefined symbol 'CRC16'
net/irda/Kconfig:8:warning: 'select' used by config symbol 'IRDA' refer to undefined symbol 'CRC16'
drivers/net/Kconfig:1749:warning: 'select' used by config symbol 'VIA_VELOCITY' refer to undefined symbol 'CRC16'
drivers/net/Kconfig:2465:warning: 'select' used by config symbol 'PPP_ASYNC' refer to undefined symbol 'CRC16'
drivers/isdn/hisax/Kconfig:403:warning: 'select' used by config symbol 'HISAX_ST5481' refer to undefined symbol 'CRC16'
drivers/isdn/hisax/Kconfig:7:warning: 'select' used by config symbol 'ISDN_DRV_HISAX' refer to undefined symbol 'CRC16'
drivers/isdn/tpam/Kconfig:7:warning: 'select' used by config symbol 'ISDN_DRV_TPAM' refer to undefined symbol 'CRC16'
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] CRC16 renaming in AX25 drivers
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] CRC16 renaming in IRDA drivers
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] CRC16 renaming in ISDN drivers
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pazke@donpac.ru>
[PATCH] CRC16 renaming in PPP driver
Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lethal@Linux-SH.ORG>
[PATCH] sh64: cpumask cleanup.
With the recent cpumask changes, some things ended up being broken on sh64.
This fixes them..
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lethal@Linux-SH.ORG>
[PATCH] sh64: Fix init_task.c build.
resource.h was falling a bit behind, so we use the asm-sh version instead.
This exposed another compile issue with init_task.c, which in turn needed
linux/mqueue.h.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lethal@Linux-SH.ORG>
[PATCH] sh64: Add asm-sh64/setup.h
With the recent changes to init/main.c, we need an asm-sh64/setup.h. This
pulls out the definitions from arch/sh64/kernel/setup.c and moves them to
setup.h instead.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lethal@Linux-SH.ORG>
[PATCH] sh64: defconfig update.
This just updates the defconfig against current BK.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hugh@veritas.com>
[PATCH] tmpfs: scheduling-while-atomic fix
Nick has tracked scheduling-while-atomic errors to shmem's fragile kmap
avoidance: the root error appears to lie deeper, but rework that fragility.
Plus I've been indicted for war crimes at the end of shmem_swp_entry: my
apologia scorned, so now hide the evidence.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pluto@pld-linux.org>
[PATCH] ad1889 warning fix
CC [M] sound/oss/ad1889.o
sound/oss/ad1889.c: In function `ad1889_ac97_init':
sound/oss/ad1889.c:854: warning: comparison is always false
due to limited range of data type
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<andrea@suse.de>
[PATCH] writepage fs corruption fix
Fix a data loss bug in mpage_writepages(), triggerable under extreme memory
pressure on ext2, JFS, hfs and hfsplus:
The bug is the marking of the bh clean despite we could still run into the
"confused" path. After that the confused path really becomes confused and it
writes nothing and fs corruption triggers silenty (the reugular writepage only
writes bh that are marked dirty, it never attempts to submit_bh anything
marked clean). The mpage-writepage code must never mark the bh clean as far
as it wants to still fallback in the regular writepage which depends on the bh
to be dirty (i.e. the "goto confused" path). This could only triggers with
memory pressure (it also needs buffer_heads_over_limit == 0, and that is
frequent under mm pressure).
Thanks a lot to Chris for his fine debugging that localized the problem in the
writepage code.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<andrea@suse.de>
[PATCH] __block_write_full_page() comment fixups
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<andrea@suse.de>
[PATCH] mpage_writepages() i_size reading fix
I believe reading the i_size from memory multiple times can generate fs
corruption. The "offset" and the "end_index" were not coherent. this is
writepages and it runs w/o the i_sem, so the i_size can change from under
us anytime. If a parallel write happens while writepages run, the i_size
could advance from 4095 to 4100. With the current 2.6 code that could
translate in end_index = 0 and offset = 4. That's broken because end_index
and offset could be not coherent. Either end_index=1 and offset =4, or
end_index = 0 and offset = 4095. When they lose coherency the memset can
zeroout actual data. The below patch fixes that (it's at least a
theoretical bug).
I don't really expect this tiny race to fix the bug in practice after the
more serious bugs we covered yesterday didn't fix it (more likely the
compiler will get involved into the equation soon ;).
This is also an optimization for 32bit archs that needs special locking to
read 64bit i_size coherenty.
This patch also arranges for mpage_writepages() to always zero out the file's
final page between i_size and the end of the file's final block. This is a
best-effort correctness thing to deal with errant applications which write
into the mmapped page beyond the underlying file's EOF.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: signals & exceptions
From: Martin Schwidefsky <schwidefsky@de.ibm.com>
From: Ulrich Weigand <uweigand@de.ibm.com>
s390 core changes:
- Add signo between signal frame and the signal return instruction on the
user stack for backtrace over signal handlers.
- Add hfp floating point exceptions.
- Use a single function for region, segment and page translation exceptions.
- Discard SIGTRAP for single stepped instructions if the trapping instruction
is repeated (normal memory faults) or if another signal is delivered anyway.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: cpu hotplug bugs
[PATCH] s390: cpu hotplug bugs.
From: Ursula Braun-Krahl <braunu@de.ibm.com>
From: Martin Schwidefsky <schwidefsky@de.ibm.com>
iucv driver changes:
- Fix iucv declare/retrieve buffer which the cpu hotplug patch has broken.
- Make smp_call_function_on call func(info) in non-smp kernels.
- Use a spinlock to get smp_get_cpu/smp_put_cpu race free.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] fix (UDF_FS=y && NLS=m) compile error
The patch below fixes Bugzilla #3030 ((UDF_FS=y && NLS=m) results in a
compile error).
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] remove outdated ext2 help text parts
The patch below solves Bugzilla #3014 by removing much outdated information
from the ext2 help text.
The help text is now very short, but few correct information is better than
outdated information - and if you think it's too short, feel free to send a
patch that adds more current information.
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] remove drivers/char/h8.{c,h}
CONFIG_H8 in drivers/char/ depends in both 2.4 and 2.6 on
CONFIG_OBSOLETE which is never enabled.
To remove this driver, the following is required additionally to the
patch below:
rm drivers/char/h8.c
rm drivers/char/h8.h
This patch was already ACK'ed by Richard Henderson.
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] kill IKCONFIG_VERSION
The patch below (already ACK'ed by Randy Dunlap) kills the unused
IKCONFIG_VERSION from kernel/configs.c .
This patch is based on a previous patch by Anton Blanchard and an idea of
Bartlomiej Zolnierkiewicz. (I hope I haven't forgotten anyone who contributed
to this patch. ;-) )
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torvalds@ppc970.osdl.org>
ppc64: export the user copy functions.
When Anton uninlined them, he didn't remember to export them
to modules..
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: removal of iovec use in mtd
mtd, jffs and jffs2 switched from iovec to kvec
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: NULL noise is mtd
0->NULL conversions in mtd
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: NULL noise in jffs
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] sparse: NULL noise in jfs
<torvalds@ppc970.osdl.org>
Linux 2.6.8-rc1
(
Log in to post comments)