Summary of changes from v2.6.5 to v2.6.6
============================================
<stevef@linux.local>
Can not mount from cifs vfs client built with gcc 3.3.1 due to compiler
optimization of unsafe global variable. Remove unsafe global variable.
<stevef@linux.local>
Fix problem reconnecting additional mounts to the same server after
session failure.
<stevef@stevef95.austin.ibm.com>
Fix invalid dentry when race in mkdir between two clients
<stevef@linux.local>
fix oops in send_sig on unmount of cifs vfs due to sending signal to
demultiplex thread after it has exited.
Do not treat invalid handle warning in response to oplock break (of file
that is now closed) as an error.
<stevef@linux.local>
Fix EIO caused by network timeouts on changing file size.
To avoid spurious oplock breaks from server, in the case
of inodes that we already have open, avoid doing path
based setting of file size if we can do it by handle.
This keeps our caching token (oplock) and avoids
timeouts when the local oplock break takes longer to flush
writebehind data than the SMB timeout for the SetPathInfo
request would allow
<stevef@stevef95.austin.ibm.com>
fix to not retime out the same session twice since it can invalidate the
newly reestablished session unnecessarily
<stevef@smfhome.smfdom>
Do not return buffer if request has already timed out.
<stevef@stevef95.austin.ibm.com>
move bad smb session retry to correct location, up one level in cifs vfs code
<stevef@steveft21.austin.ibm.com>
fix endian bug in lockingX and add retry on EAGAIN
<stevef@stevef95.austin.ibm.com>
have to reconnect open files safely, one at a time, as needed
<stevef@stevef95.austin.ibm.com>
finish off move from reopening all files on reconnection (which takes too
long under heavy stress) to reopen file as needed after reconnection to
server.
<stevef@stevef95.austin.ibm.com>
correct retry on remaining handles based calls
<stevef@steveft21.austin.ibm.com>
Fix compile error
<stevef@stevef95.austin.ibm.com>
Missing soft vs. hard retry mount option
<stevef@stevef95.austin.ibm.com>
Do not grab i_sem (already taken in filemap.c across commit write calls)
during reopen of invalidated file handle.
<stevef@linux-udp14619769uds.austin.ibm.com>
Fix oops in mount error path when unload_nls called with bad pointer.
<stevef@stevef95.austin.ibm.com>
Avoid smb data corruption under heavy stress
<stevef@stevef95.austin.ibm.com>
missing message on timed out requests
<stevef@stevef95.austin.ibm.com>
rcvtimeout set improperly for some cifs servers
<stevef@steveft21.ltcsamba>
invalidate locally cached pages when server breaks oplock. Do not loop
reconnecting for servers that drop tcp session rather than sending smb
negprot response
<stevef@steveft21.ltcsamba>
Oops on reopen files when dentry already freed
<stevef@steveft21.ltcsamba>
invalidate cached pages when last local instance closed so we do
not use stale data while someone may be modifying the file on the
server.
<stevef@steveft21.ltcsamba>
fix double incrementing of transaction counter
<stevef@steveft21.ltcsamba>
Fix check of filldir return code during readdir to avoid incomplete search
results displayed on very large directories. Fix cleanup of proc entries.
Add config parm to allow disabling negotiating Linux extensions
<stevef@steveft21.ltcsamba>
allow disabling cifs Linux extensions via proc
<stevef@steveft21.ltcsamba>
Fix an incorrect mapping of open flags to cifs open disposition. Fix
blocking byte range locks. These fix breakages that were notice running lock
tests 1 and 7 of the connectathon posix file api tests
<stevef@steveft21.ltcsamba>
set byte range locktimeouts properly
<stevef@steveft21.ltcsamba>
fix cifs readme
<stevef@stevef95.austin.ibm.com>
gracefully exit on failed mounts to win98 (which closes tcp session rather
than erroring on smb protocol negotiation)
<stevef@stevef95.austin.ibm.com>
fix failed mounts to win98 part II
<stevef@stevef95.austin.ibm.com>
Fix global kernel name space pollution
<romieu@fr.zoreil.com>
[netdrvr r8169] Conversion of Rx/Tx descriptors to consistent DMA:
- use pci_alloc_consistent() for Rx/Tx descriptors in rtl8169_open()
(balanced by pci_free_consistent() on error path as well as in
rtl8169_close());
- removal of the fields {Rx/Tx}DescArrays in struct rtl8169_private
as there is no need to store a non-256 bytes aligned address any more;
- fix for rtl8169_open() leak when RxBufferRings allocation fails.
Said allocation is pushed to rtl8169_init_ring() as part of an evil
cunning plan.
<romieu@fr.zoreil.com>
[netdrvr r8169] Conversion of Rx data buffers to PCI DMA
- endianness is kept in a fscked state as it is in the original code
(will be adressed in a later patch);
- rtl8169_rx_clear() walks the buffer ring and releases the allocated
data buffers. It needs to be used in two places:
- rtl8169_init_ring() failure path;
- normal device release (i.e. rtl8169_close);
- rtl8169_free_rx_skb() releases a Rx data buffer. Mostly an helper
for rtl8169_rx_clear(). As such it must:
- unmap the memory area;
- release the skb;
- prevent the ring descriptor from being used again;
- rtl8169_alloc_rx_skb() prepares a Rx data buffer for use.
As such it must:
- allocate an skb;
- map the memory area;
- reflect the changes in the ring descriptor.
This function is balanced by rtl8169_free_rx_skb().
- rtl8169_unmap_rx() simply helps with the 80-columns limit.
- rtl8169_rx_fill() walks a given range of the buffer ring and
try to turn any descriptor into a ready to use one. It returns the
count of modified descriptors and exits if an allocation fails.
It can be seen as balanced by rtl8169_rx_clear(). Motivation:
- partially abstract the (usually big) piece of code for the refill
logic at the end of the Rx interrupt;
- factorize the refill logic and the initial ring setup.
- simple conversion of rtl8169_rx_interrupt() without rx_copybreak
(will be adressed in a later patch).
<romieu@fr.zoreil.com>
[netdrvr r8169] rtl8169_start_xmit fixes:
- it forgot to update stats if the skb couldn't be expanded;
- it didn't free it either if the descriptor was not available;
- move the spin_unlock nearer of the exit point instead of duplicating
it in the new branch.
<romieu@fr.zoreil.com>
[netdrvr r8169] Conversion of Tx data buffers to PCI DMA:
- endianness is kept in a fscked state as it is in the original code
(will be adressed in a later patch);
- buf_addr of an unmapped descriptor is always set to the same value
(cf rtl8169_unmap_tx_skb);
- nothing fancy, really.
<romieu@fr.zoreil.com>
[netdrvr r8169] Rx copybreak for small packets.
- removal of rtl8169_unmap_rx() (unneeded as for now).
<romieu@fr.zoreil.com>
[netdrvr r8169] Add {mac/phy}_version.
- change of identification logic in rtl8169_init_board();
- {chip/rtl_chip}_info are merged in rtl_chip_info;
- misc style nits (lazy braces, SHOUTING MACROS from realtek converted to
functions).
<romieu@fr.zoreil.com>
[netdrvr r8169] Merge of changes done by Realtek to rtl8169_init_one():
- phy capability settings allows lower or equal capability as suggested
in Realtek's changes;
- I/O voodoo;
- no need to s/mdio_write/RTL8169_WRITE_GMII_REG/;
- s/rtl8169_hw_PHY_config/rtl8169_hw_phy_config/;
- rtl8169_hw_phy_config(): ad-hoc struct "phy_magic" to limit duplication
of code (yep, the u16 -> int conversions should work as expected);
- variable renames and whitepace changes ignored.
<romieu@fr.zoreil.com>
[netdrvr r8169] Merge of timer related changes from Realtek:
- changed their timeout value from 100 to HZ to trigger rtl8169_phy_timer();
- s/TX_TIMEOUT/RTL8169_TX_TIMEOUT/ to have RTL8169_{TX/PHY}_TIMEOUT.
<romieu@fr.zoreil.com>
[netdrvr r8169] Merge of changes from Realtek:
- register voodoo in rtl8169_hw_start().
<romieu@fr.zoreil.com>
[netdrvr r8169] Driver forgot to update the transmitted bytes counter.
Originally done in rtl8169_start_xmit() by Realtek.
<romieu@fr.zoreil.com>
[netdrvr r8169] Modification of the interrupt mask (RealTek).
<romieu@fr.zoreil.com>
[netdrvr r8169] Suspend/resume code (Fernando Alencar MarĂ³tica).
<romieu@fr.zoreil.com>
[netdrvr r8169] fix RX
Brown paper bag time: the Rx descriptors are contiguous and EORbit only
marks the last descriptor in the array. OWNbit implicitly marks the end
of the Rx descriptors segment which is owned by the nic.
<romieu@fr.zoreil.com>
[netdrvr r8169] Endianness update (original idea from Alexandra N.
Kossovsky):
- descriptors status (bitfields enumerated as _DescStatusBit);
- address of buffers stored in Rx/Tx descriptors.
<romieu@fr.zoreil.com>
[netdrvr r8169] Stats fix (Fernando Alencar MarĂ³tica <famarost@unimep.br>).
<romieu@fr.zoreil.com>
[PATCH] 2.6.1-rc1-mm1 - typo of death in the r8169 driver
silly bug in the r8169 driver.
<romieu@fr.zoreil.com>
[netdrvr r8169] fix oops by removing __devinitdata marker
<romieu@fr.zoreil.com>
[netdrvr r8169] fix rx counter masking bug
<romieu@fr.zoreil.com>
[netdrvr r8169] fix phy initialization loop init
<stevef@smfhome.smfdom>
Check return on failed dentry allocation. Suggested by Randy Dunlap
<stevef@steveft21.ltcsamba>
Allow null password string pointer and passwords longer than 16 bytes
<stevef@steveft21.ltcsamba>
finish handling commas in passwords
<romieu@fr.zoreil.com>
[netdrvr r8169] fix TX race
- possible tx descriptor index overflow (assume tp->dirty_tx = NUM_TX_DESC/2,
tp->cur_tx = NUM_TX_DESC - 1 and watch TxDescArray for example);
- the status of an inadequate descriptor is checked.
NB: the bug will not necessarily noticed when tx_left == 1.
<stevef@steveft21.ltcsamba>
finish off mount parm sep override
<stevef@stevef95.austin.ibm.com>
Fix caching problem with multiply open files from different clients
<stevef@stevef95.austin.ibm.com>
Relax requested CIFS permissions on open to simply request GENERIC_READ and
GENERIC_WRITE (instead of GENERIC_ALL which
can unnecessarily conflict with share permissions by asking implicitly for
take ownership and other unneeded flags)
<stevef@stevef95.austin.ibm.com>
fix remoting caching part 2
<stevef@stevef95.austin.ibm.com>
remove spurious debug messages
<stevef@stevef95.austin.ibm.com>
fix problem not connecting to server when port not specified explicitly and
port field unitialized
<stevef@stevef95.austin.ibm.com>
reset searches properly when filldir fails
<stevef@steveft21.ltcsamba>
ipv6 enablement for cifs vfs fixes
<stevef@smfhome.smfdom>
Spurious white space and duplicated line cleanup
<aia21@cantab.net>
NTFS: Set i_generation in VFS inode from seq_no in NTFS inode.
<aia21@cantab.net>
NTFS: Make ntfs_lookup() NFS export safe, i.e. use d_splice_alias(), etc.
<aia21@cantab.net>
NTFS: Make it compile...
<stevef@steveft21.ltcsamba>
improve resume key resetting logic when filldir returns error and filename
is in unicode
<stevef@smfhome.smfdom>
allow nosuid mounts
<aia21@cantab.net>
NTFS: Release 2.1.7 - Enable NFS exporting of mounted NTFS volumes.
- Implement ntfs_get_parent() and ntfs_get_dentry() as the NTFS specific
export operations ->get_parent() and ->get_dentry() respectively.
<aia21@cantab.net>
NTFS: Add missing return -EOPNOTSUPP; in
fs/ntfs/aops.c::ntfs_commit_nonresident_write().
<stevef@stevef95.austin.ibm.com>
fix problem with inode revalidation and cache page invalidation
<stevef@stevef95.austin.ibm.com>
Fix the exec, suid, dev mount parms to not log warnings when specified
<romieu@fr.zoreil.com>
[netdrvr r8169] Rx wrap bug:
- rtl8169_rx_interrupt() can wrap and process an Rx descriptor that it has
invalidated a few iterations before. The patch limits the number of
allowed descriptors between two invocations of the Rx refill function;
- rtl8169_rx_interrupt() now looks similar to rtl8169_tx_interrupt to
highlight the issue.
<stevef@steveft21.ltcsamba>
fix caching data integrity problem
<stevef@stevef95.austin.ibm.com>
use safer i_size_write mechanism to update i_size
<aia21@cantab.net>
NTFS: Fix off by one error in ntfs_get_parent().
<kberg@linux1394.org>
[IEEE1394/OHCI]: Deal with some OHCI implementations that have an invalid
max_rec field.
<weihs@linux1394.org>
IEEE1394/Lynx(r1182): Explicitly set LCtrl bit in phy register set.
<aia21@cantab.net>
NTFS: Enforce no atime and no dir atime updates at mount/remount time
as they are not implemented yet anyway.
<trini@kernel.crashing.org>
PPC32: Add CONFIG_MPC10X_BRIDGE.
From: Adrian Cox <adrian@humboldt.co.uk>.
<trini@kernel.crashing.org>
PPC32: In some cases we need to make all pages _PAGE_COHERENT.
Controll this via the cpu_table flags since it's a requirement
in some CPU and host bridge combinations.
From: Adrian Cox <adrian@humboldt.co.uk>
<andrew.vasquez@qlogic.com>
[PATCH] PATCH [1/15] qla2xxx: Update copyright banner
Update copyright banner for all source files.
<andrew.vasquez@qlogic.com>
[PATCH] PATCH [2/15] qla2xxx: Track DSDs used by an SRB
Track the number of DSDs and request entries required for an
SRB in case of a request-entry or command-slot shortage.
<andrew.vasquez@qlogic.com>
[PATCH] PATCH [3/15] qla2xxx: Increase MBX IOXB timeout
Fix a problem where during heavy I/O the driver would
improperly timeout an outstanding MBX IOCB before the
firmware itself had a chance to issue and wait for the
command to timeout.
<andrew.vasquez@qlogic.com>
[PATCH] PATCH [4/15] qla2xxx: Endianess fix while reading stats
Return firmware statistics retrieved from
qla2x00_get_link_status() in host-endian form.
<andrew.vasquez@qlogic.com>
[PATCH] RE: PATCH [5/15] qla2xxx: request entries update
For now, I'd say keep everything in the original patch except the
hunk that changes SG_ALL -> 32, revised patch attached.
<andrew.vasquez@qlogic.com>
[PATCH] PATCH [6/15] qla2xxx: Track error-state of SBRs
Consistenly track the error-state of a failed SRB.
<andrew.vasquez@qlogic.com>
[PATCH] PATCH [7/15] qla2xxx: Misc. updates with FO resync
Misc. updates due to resync with non-embedded (failover-aware) driver.
o Add ancillary support definitions.
o Remove extraneous *_IOCTL #ifs.
o Make qla2x00_cmd_timeout() and its support routines visible to the
non-embedded driver.
<andrew.vasquez@qlogic.com>
[PATCH] PATCH [8/15] qla2xxx: Use proper HA references
Fix issue where the driver would reference the incorrect HA
during loop state check.
<andrew.vasquez@qlogic.com>
[PATCH] PATCH [9/15] qla2xxx: NVRAM id-list updates
Resync with latest NVRAM subsystem ID list.
<andrew.vasquez@qlogic.com>
[PATCH] PATCH [10/15] qla2xxx: Use fcports list for targets
Consistently use the fcports list of an HA to iterate through the
known target devices.
<andrew.vasquez@qlogic.com>
[PATCH] PATCH [11/15] qla2xxx: Add login-retry-count override
Add a module parameter to override the NVRAM's login retry count
value.
<andrew.vasquez@qlogic.com>
[PATCH] PATCH [12/15] qla2xxx: Restore update state during resync
Restore the UPDATE state of the HA if a resync event occurs during
a device (re)discovery.
<andrew.vasquez@qlogic.com>
[PATCH] PATCH [13/15] qla2xxx: Device reset fix
During a back-door device reset call, hold off execution of
commands until the reset is complete.
<jejb@mulgrave.(none)>
PATCH [14/15] qla2xxx: 23xx/63xx firmware updates
Andrew Vasquez <andrew.vasquez@qlogic.com>
Resync with latest released firmware -- 3.02.26.
<andrew.vasquez@qlogic.com>
[PATCH] PATCH [15/15] qla2xxx: Update driver version
Update version number to 8.00.00b11-k (to indicate embedded driver).
<davej@redhat.com>
[PATCH] USB multi-card reader blacklist updates
Here's a couple more blacklist entries.
Seems everyone suddenly rushed out and bought one of these multi-card
readers.
Dave
<James.Bottomley@steeleye.com>
[PATCH] Fix error handler offline behaviour
No-one seems to have noticed, but there's a bug in our offline handling
which can cause the eh to loop forever when it tries to offline a device
(basically offline I/O rejections are done in prep, which doesn't work
for already prepped commands).
The attached fixes this, and also sweeps offline up into a fairly fully
fledged scsi state model.
With this applied I can now offline my root device under load without
causing a SCSI hang (ext2 BUG()s rather unhappily but at least that's
not a SCSI problem).
<markh@osdl.org>
[PATCH] aacraid reset handler update
This is an update from the Adaptec version of the driver to the aacraid
reset handler. The current code has a logic error that is fixed by this
version. This builds against 2.6.5-rc1.
<patmans@us.ibm.com>
[PATCH] Replace scsi_host flags with scsi_device sdev_bflags
Replace the scsi_host flags with scsi_device sdev_bflags. Change USB to
set sdev_bflags in its new slave_alloc function.
<patmans@us.ibm.com>
[PATCH] Add 192 byte MODE SENSE flag
Add a BLIST_MS_192_BYTES_FOR_3F flag. If it is set, sends a 192 byte MODE
SENSE in sd.c.
<jejb@mulgrave.(none)>
SCSI: correct blacklist entry
<mchan@broadcom.com>
[TG3]: Jumbo frames and FTQ reset patch.
1. Set extended packet length bit in phy register 0x18 shadow register 0
on all chips that support jumbo frames (i.e. all chips except 5705 and
its variants). Jumbo frame reception is less reliable (more CRC errors)
if this bit is not set. This bit can be set regardless of the current
MTU setting.
2. Remove FTQ reset during chip init. This is the best fix for the ASF
race condition problem that I mentioned a few months ago. The FTQ reset
is redundant as it is already reset during GRC reset.
<davem@nuts.davemloft.net>
[TG3]: Just completely delete the disabled FTQ reset code.
<davej@redhat.com>
[CPUFREQ] If ->init fails, unregister cpufreq driver.
Some cpufreq drivers can only tell whether they work while the per-CPU
->init() function is executed [e.g. the acpi driver]. So that cpufreq_driver
isn't blocked by such stale drivers, unload them unless the driver sets a
special flag.
<davej@redhat.com>
[CPUFREQ] Use KERN_WARNING for warning.
<davej@redhat.com>
[CPUFREQ] Move the centrino table matching into an own function
Only the FEATURE_EST bit for CPU 0 is checked in module_init() directly.
As cpufreq drivers aren't sticky any longer (see previous patch),
this will not change user-visible behaviour.
<davej@redhat.com>
[CPUFREQ] Merge ACPI perflib.
Use ACPI _PSS data to determine valid frequency and voltage pairs on Enhanced
SpeedStep-capable processors. An original form of such ACPI-PentiumM-cpufreq
interaction was sent to the cpufreq list by David Moore in June last year;
the
attached patch utilizes his code to set _PDC.
The new ACPI "P-States library" is utilized to obtain the correct frequency
and MSR value pairs for the speedstep-centrino driver. Only if no such proper
table exists (!CONFIG_ACPI, broken ACPI tables, etc.), fall back to the
existing hard-coded table.
If anyone has a better idea for the Kconfig section, please tell me so.
This version of this patch has proper acpi_state setting included, and also
has a hint in the banner of the centrino_cpu_init_acpi() function, as Jeremey
Fitzhardinge suggested.
<davej@redhat.com>
[CPUFREQ] Export an array of available frequency settings of the centrino
driver.
<davej@redhat.com>
[CPUFREQ] Fix up centrino initcall level
centrino_init needs to be late_initcall so that the ACPI processor module
is completely up and running.
<davej@redhat.com>
[CPUFREQ] SPEEDSTEP_RELAXED_CAP_CHECK option.
A few SpeedStep-capable systems don't perform according to specification: the
CPUID and/or some MSRs don't tell us the CPU is SpeedStep capable even though
it definitely is. Allow a relaxed checking for one such issue by a module
parameter only available if a config option is turned on. This is done to
avoid the risk of doing invalid speedstep instructions on systems which do
not support it, and which might even lead to (hardware) failure.
Patch originally from Andres Aeriksson (?) aeriksson at fastmail (dot) fm
<davej@redhat.com>
[CPUFREQ] Fix an off-by-10 value in the detection of the Pentium M processor
frequency.
<davej@redhat.com>
[CPUFREQ] Extra __init section function for longrun driver.
From Luiz Fernando Capitulino
<davej@redhat.com>
[CPUFREQ] Extra __init section function for longhaul driver.
From Luiz Fernando Capitulino
<greg@kroah.com>
Driver Core: fix spaces instead of tabs problem in the Kconfig file.
<greg@kroah.com>
add sysfs support for vc devices.
<greg@kroah.com>
VC: fix bug in vty_init() where vcs_init() was not called early enough.
It was being used before initialized, not nice :(
<khali@linux-fr.org>
[PATCH] I2C: w83781d fan_div code refactoring
Quoting myself:
> This tends to increase the size of the three set_store_regs_fan_div
> functions, and I am considering refactoring them at some point. Later
> though.
Here is the promised refactoring. Tested on my AS99127F rev.1, seems to
work. As for the previous patch, there is a part that I cannot test with
the AS99127F, so additional testing is welcome.
I agree this makes the code slightly less readable, but this saves 60
lines of code (1754 bytes, around 3% of the driver total), and is
actually far less complex that I first feared.
<aurelien@aurel32.net>
[PATCH] I2C: add new chip driver: pcf8574
Please find below a patch against kernel 2.6.5-rc1 to add the pcf8574
driver (an I/O expander for the I2C bus). I have ported it from the 2.4
version, and it includes some fixes and simplifications.
It has been reviewed by Jean Delvare on IRC.
<greg@kroah.com>
Driver class: remove possible oops
This happens when the device associated with a class device goes away before
the class does.
<hannal@us.ibm.com>
[PATCH] QIC-02 tape drive hookup to classes in sysfs
Here is a patch to hook up the qic02 tape device to have class
support in sysfs. I have verified it compiles. I do not have access to
the hardware to test. Could someone who does please verify?
From the file:
* This is a driver for the Wangtek 5150 tape drive with
* a QIC-02 controller for ISA-PC type computers.
* Hopefully it will work with other QIC-02 tape drives as well.
<hannal@us.ibm.com>
[PATCH] add class support to floppy tape driver zftape-init.c
Here is a patch to add class support to zftape-init.c:
MODULE_DESCRIPTION(ZFTAPE_VERSION " - "
"VFS interface for the Linux floppy tape driver. "
"Support for QIC-113 compatible volume table "
"and builtin compression (lzrw3 algorithm)");
I have verified it compiles but do not have the hardware to test it.
<akpm@osdl.org>
[PATCH] Fix scsi_transport_spi.c for gcc-2.95.3
Work around the gcc-2.95 token pasting bug.
<uwe.koziolek@gmx.net>
[libata] Add driver for SiS 964/180 SATA.
<jgarzik@redhat.com>
[libata sata_sis] minor cleanups
<James.Bottomley@steeleye.com>
[PATCH] More domain validation fixes and additions
Following testing in more extreme situations, the following problems
turned up:
- The error handler can offline the device during DV (most particularly
true when transport parameters are undetectably mismatched). Fixed by
modifying the state model to allow this and then having DV set the
device back online for the retry.
- DV needs to be serialised. Fixed by introducing a per device
semaphore.
- Cosmetically, it's nice to trigger DV from userland, so added a
revalidate sysfs entry.
<kronos@kronoz.cjb.net>
[PATCH] Sysfs for framebuffer
the following patch (against 2.6.5-rc2) teaches fb to use class_simple.
With this patch udev will automagically create device nodes for each
framebuffer registered. Once all drivers are converted to
framebuffer_{alloc,release} we can switch to our own class.
This is what sysfs dir looks like:
notebook:~# tree /sys/class/graphics/
/sys/class/graphics/
`-- fb0
`-- dev
<jgarzik@redhat.com>
Remove mention of non-existent tulip.txt from Doc/netwrk/00-INDEX
<jgarzik@redhat.com>
[BK] ignore build-generated files in scripts/basic/ and drivers/md/
<jgarzik@redhat.com>
[MAINTAINERS] remove mention of defunct linux-via mailing list
Noticed by Adrian Bunk.
<jgarzik@redhat.com>
[libata] use new pci_dma_error() to check for pci_map_single() failure
<jgarzik@redhat.com>
[libata] use kmap_atomic() rather than kmap()
<jgarzik@redhat.com>
[libata ata_piix] do not disable SATA port on module unload
We were disabling the SATA port, but not enabling it on module load.
So, modprobe+rmmod+modprobe would fail.
<jgarzik@redhat.com>
[libata ata_piix] clean up combined mode handling
<jgarzik@redhat.com>
[libata ata_piix] fix combined mode device detection
SATA port detection should not have assumed that a single SATA port
mapped to a single struct ata_port. Combined mode breaks this
assumption.
Change code to simply detect if one or more devices are present
on the struct ata_port, which is what we really wanted to do.
<jgarzik@redhat.com>
[libata sata_promise] check for PATA port on PDC20375
We don't handle it yet, but this prints out a message in its presence,
permitting verification of the check and informing users why their
PATA device is not recognized.
<jgarzik@redhat.com>
[libata] set up some of the per-command data beforehand
The data transfer mode and the set of read/write commands we generate
during normal operation remains constant until we change the data
transfer mode.
This removes a series of branches in the read/write fast path,
and in general cleans up that particular spot of code.
<jgarzik@redhat.com>
[libata] consolidate data transfer mode handling
The various ways you can send data to/from your ATA device is
known as the ATA taskfile protocol: PIO single sector, PIO
multiple sector, DMA, DMA TCQ, DMA NCQ, ...
Prior to this change, the data direction (read/write) was encoded
implicitly into the ATA_PROT_xxx value itself. This increased
complexity in some areas, and inhibited flexibility in others.
This change separates data direction from taskfile protocol, and also
moves the data direction flag (ATA_QCFLAG_WRITE) down to a lower
level (ATA_TFLAG_WRITE).
<jgarzik@redhat.com>
[ata] move some generic stuff linux/libata.h -> linux/ata.h
struct ata_taskfile is generic, and so far its flags (ATA_TFLAG_xxx)
Also, move ATA_PROT_xxx definitions into their own enum.
<hannal@us.ibm.com>
[PATCH] added class support to stallion.c
Here is a patch to add class support to the Stallion multiport
serial driver.
<hannal@us.ibm.com>
[PATCH] added class support to istallion.c
Here is a patch to add class support to the Stallion Intelligent multiport
serial driver.
<khali@linux-fr.org>
[PATCH] I2C: Discard out-of-date comment in adm1021 driver
This simple patch discards an out-of-date comment in the adm1021 driver.
I've done the same in our CVS repository where many more drivers were
affected.
I agree it's not very important, but I prefer it to be done before any
driver with the error is used as a base to port a new driver, and the
misinformation spreads.
<khali@linux-fr.org>
[PATCH] I2C: initialize fan_mins in w83781d, asb100 and lm78
Quoting myself:
> While testing, I found a corner case that isn't handled properly. It
> doesn't seem to be handled by the lm78 and the asb100 either. Setting
> fanN_div before ever reading from the chip or setting fanN_min will
> make use of fanN_min while it was never initialized.
The following patch addesses the issue. Tested to work on my AS99127F
rev.1 (which means that only the changes to the w83781d driver were
actually tested). Testers welcome.
<mail@gude.info>
[PATCH] USB: FTDI 232BM "USB-RS232 OptoBridge"
we (the german company Gude Analog und Digitalsysteme GmbH,
http://www.gude.info) have manufactored a USB<->RS232 adapter with
galvanic isolated RS232 Interface. Data is transmitted by optical
signals only.
The Product's name is "USB-RS232 OptoBridge".
We used the FTDI 233BM Chip with PID 0xE889 (VID 0x0403).
The Product will be released this Cebit 2004.
Could you please extend the ftdi_sio code with this PID.
You find a .diff file attached which I have tested with kernel 2.6.4
At http://ftdi-usb-sio.sourceforge.net/ I saw that you provide a patch
for 2.4.x kernels. Will our PID also find it's way in this back-ported
driver patch?
In the future (in the next 10 month), our company will have some more
Products using the FTDI Chip. The PID's FTDI already allocated for us
are: E888 to E88F and E808 to E80F
Thank you very much,
Martin Bachem
<mikal@stillhq.com>
[PATCH] USB: kernel-doc comment tweak
Correct kernel-doc comment with incorrect parameters documented
<david-b@pacbell.net>
[PATCH] USB: gadget zero does endpoint autoconfig
Here's where all those preceding autoconfig patches start
to fit together: one gadget driver gets rid of almost all
the controller-specific #ifdeffery.
Two of the other gadget drivers can do the same thing,
and just as easily: file storage, and serial. (I'll
hope their maintainers do those changes though.)
The "ether.c" gadget driver is a lot more complicated to
do this way since it has to cope with some differences
by switching to alternate protocols (CDC Ethernet vs
a subset) and soon be able to handle RNDIS. So that'll
be a while yet.
Gadget Zero learns to autoconfigure.
- Gets rid of remaining controller-specific #ifdeffery. Now
hardware choices can be made at run time too (not just
compile time).
- Simplifies its use of the "DEBUG" CPP symbol.
- Force device to report itself consistently as self-powered.
<petkan@nucleusys.com>
[PATCH] USB: rtl8150 update
adds two more vid/did and better packet error statistics. Link
detection also has been added.
<jgarzik@redhat.com>
[libata] pci_dma_error() was renamed to pci_dma_mapping_error()
<jgarzik@redhat.com>
[libata] reduce diff with 2.4 libata backport
<jgarzik@redhat.com>
[libata] use scsi host lock
In 2.4 we release io_request_lock and take our own per-host lock,
in the ->queuecommand() hook. In 2.6, the SCSI layer provides a
useful to simply use the lock we already have, via scsi_assign_lock().
<erik@rigtorp.com>
[PATCH] USB: new cypress thermometer driver
<greg@kroah.com>
[PATCH] USB: add cytherm driver to the build
<david-b@pacbell.net>
[PATCH] USB: USB gadgets can autoconfigure endpoints
This adds some code that gadget drivers can call from
driver initialization, to simplify the "configure against
this hardware" step.
Add endpoint autoconfiguration for gadget drivers.
Endpoint selection is currently being done with conditional compilation.
That doesn't look nice, but more importantly it doesn't work well with
the model that some distributions won't be custom-matched to hardware.
Say, a PDA distro running on iPaq (pxa2xx_udc) or Axim (mq11xx_udc).
This code just makes it easier for drivers to match to hardware at
run-time. It's a convenience function for something they could have
been doing already, but weren't.
<jgarzik@redhat.com>
[libata] documentation, and a couple tiny cleanups
Add more per-function source code documentation. Some of this stuff
is esoteric ATA crapola, and definitely needed to be documented.
Also, two tiny cleanups spotted while documenting:
* kill unused arg from internal function ata_dev_try_classify()
* kill unused return value from ata_dev_id_string()
<stern@rowland.harvard.edu>
[PATCH] USB: Improve core/config.c error messages
This patch improves error reporting in the configuration parsing routines.
It also adds a few extra minor tweaks.
#include linux/config.h and make the usual DEBUG settings
available.
Use the driver-model dev_xxx() macros for log output.
Be much more explicit about the nature of errors, including
configuration, interface, and altsetting numbers where
appropriate.
Log fatal problems as errors, non-fatal ones as warnings.
Remove a #define'd constant that is already set in linux/usb.h.
Fix some variables declared as pointer to char that really
should be pointers to unsigned char.
Replace a whole bunch of "out-of-memory" error messages with
a single message.
Wrap source lines that are longer than 80 columns (but not
log output lines!).
Clean up the logic for detecting errors when retrieving a
configuration descriptor.
Apart from the log messages themselves, this introduces no functional
changes.
<stern@rowland.harvard.edu>
[PATCH] USB: Code improvements for core/config.c
This patch makes some improvements to the code in config.c.
Create a subroutine to handle the repeated task of skipping
forward to the next descriptor of a certain type.
Remove some fairly useless debugging messages (they could
never even have been enabled in the pre-as221 code).
Verify that endpoint descriptors don't have an address
equal to 0 (as well as not being above 15).
Rename some local variables so they are a little more
consistent and meaningful.
Despite all the changes, the functionality should remain the same.
Please apply.
<david-b@pacbell.net>
[PATCH] USB: fix osdl bugid 481 (USB boot messages)
Some boot-time messages were obnoxiously long because
they used "old-style" diagnostics.
OSDL bugid 481
Get rid of most remaining "old style" diagnostics from usbcore.
Most messages use driver model style diagnostics. Messages that
don't have an associated device use the standard kernel printk
wrappers and label themselves as from "usbcore". (Except that
there's no such wrapper for KERN_ERR.)
This doesn't touch usbfs, "config.c" (Alan's patches do this), or
usb_reset_device() (needs a more substantial overhaul). Or any
other USB drivers (notably HID).
<david-b@pacbell.net>
[PATCH] USB: fix osdl bugid 2006 (timer init and fault paths)
Need to initialize timers a bit earlier to handle
certain initialization faults.
OSDL bug 2006
Need to initialize some timers a bit earlier to clean up safely
after very early init HCD failures.
Those early init faults were needlessly mysterious since they
didn't emit diagnostics except at HCD discretion.
<stern@rowland.harvard.edu>
[PATCH] USB: Unusual_devs update
On Tue, 16 Mar 2004, John Katzmaier wrote:
> Hi,
>
> Just wanted to let you know that when using my Panasonic PV-SD4090 digital
> camera with kernel 2.6.3, I found this entry in my logs:
>
> Mar 16 21:43:27 rocket kernel: usb-storage: Vendor: Panasonic
> Mar 16 21:43:27 rocket kernel: usb-storage: Product: LS-120 Camera
> Mar 16 21:43:27 rocket kernel: usb-storage: This device (04da,0901,0109 S
00 P
> 00) has an unneeded Protocol entry in unusual_devs.h
> Mar 16 21:43:27 rocket kernel: Please send a copy of this message to
> <linux-usb-devel@lists.sourceforge.net>
>
> I thought it might be best to follow its instructions and so I did.
>
> Thanks.
>
> -John Katzmaier
Thank you for sending this in. An update will appear in a forthcoming
kernel.
Greg, here's the patch.
<stern@rowland.harvard.edu>
[PATCH] USB: Regularize unusual_devs entries for Genesys Logic
I saw that you just added another unusual_devs.h entry submitted by
Henning Schild, for vendor ID 0x05e3. It turns out this is our old friend
Genesys Logic.
A recent message from Brad Campbell included a Windows driver file by
Genesys, and it included these lines:
USB\VID_05E3&PID_0700.DeviceDesc="USB Card Reader"
USB\VID_05E3&PID_0701.DeviceDesc="USB Optical Device"
USB\VID_05E3&PID_0702.DeviceDesc="USB Mass Storage Device"
Based on this information, we can clean up the 0x05e3 entries in
unusual_devs.h. This patch puts all three entries into a regularized
form.
<mikal@stillhq.com>
[PATCH] USB: kernel-doc comment tweak in vicam.c
Correct kernel-doc comment with incorrect parameters documented
<stevef@stevef95.austin.ibm.com>
fixes for fsx truncate/readahead/writebehind bug
<thoffman@arnor.net>
[PATCH] USB: fix race in ati_remote and small cleanup
On Thu, 2004-03-18 at 07:44, Oliver Neukum wrote:
> Hi,
>
> you must use set_current_state() only after usb_submit_urb() with
GFP_KERNEL
> as second argument, because it may sleep to allocate memory and is woken up
> resetting the state to TASK_RUNNING. In that case you had a busy polling
loop.
> Furthermore, always use wake_up unconditionally. It checkes anyway.
Thanks for reviewing this code, I'm new to Linux driver development and
more eyes on my work is a good thing. I've actually been working on
some more cleanups to the driver to fix the race between open and
disconnect, and was just about to send it in...
So, the attached patch against 2.6.5-rc1-mm1 includes a mutex to lock
the open/disconnect paths, modelled after the usb-skeleton driver. It
includes Oliver Neukum's fixes and other cleanups as well.
<stern@rowland.harvard.edu>
[PATCH] USB: Unusual_devs.h update
On Thu, 18 Mar 2004, Urban Borstnik wrote:
> The 2.6.4 and 2.6.3 (and possibly some earlier) kernels log the
> following message when I plug in a Lexar CompactFlash Reader:
>
> usb-storage: This device (05dc,b002,0113 S 06 P 50) has unneeded
> SubClass and Protocol entries in unusual_devs.h
> Please send a copy of this message to
<linux-usb-devel@lists.sourceforge.net>
>
> Otherwise it has been working very well with the devepment kernels on at
> least 4 machines ever since a trivial fix was introduced for this device
> to unusual_devs.c over a year ago.
>
> Best regards,
> Urban.
Thank you for sending this in. An update will appear soon.
<oliver@neukum.org>
[PATCH] USB: race condition in open of w9968cf
there's a race in how open handles multiple openers.
You implement exclusive opening and wait for close
in case of further openers. However if there are more than one
waiter, only one of them must be allowed to proceed.
<stern@rowland.harvard.edu>
[PATCH] USB: Don't trust raw descriptor length in devioc.
This is a very minor point, unlikely ever to come up. But just in case...
It's conceivable that a device might transmit different values for a
configuration descriptor's wTotalLength the first time we ask for it (in
order to get the length) and the second time (to get the entire
descriptor). Should that improbable event occur, the rawdescriptor buffer
could be allocated using a size that's smaller than the length recorded in
the rawdescriptor itself. This patch protects devio.c against such a
problem.
If you feel this sequence of events is too unlikely to worry about, then
don't bother to apply the patch.
<stern@rowland.harvard.edu>
[PATCH] USB: UHCI: Do short packet detection correctly
This patch makes some simple changes to the way the UHCI driver does short
packet detection. The current implementation is incorrect in several
ways:
The Short-Packet-Detect flag is set for OUT transfers, which
yields undefined behavior according to the UHCI spec.
It's not set for URBs with URB_SHORT_NOT_OK, which is just the
opposite of what we want! Those are the ones where short packets
do matter.
It is set for the last packet in a transfer, which causes an
unnecessary pause in the data flow (except of course that the
pause _is_ necessary when URB_SHORT_NOT_OK is set).
The patch also implements the URB_NO_INTERRUPT flag for bulk transfers,
which can help improve system performance by reducing interrupt overhead.
<stern@rowland.harvard.edu>
[PATCH] USB: UHCI: Improved handling of short control transfers
This patch simplies the way the UHCI driver handles short control
transfers. When a transfer is short the HC will stop handling that
endpoint, and it's necessary to get it going again so that the status
stage of the control transfer can take place. Currently the driver does
this by allocating a new QH for the transfer and setting its element
pointer to point at the final status TD. The old QH is recycled. But
it's not necessary to go to all that trouble; the element pointer in the
original QH can be updated directly.
Normally the element pointer is supposed to be owned by the HC, and it's
not safe to just change its value since the HC may overwrite it at any
time. But when a transfer is stopped because of a short packet, the
current TD is marked inactive and the HC will not update the element
pointer. To write an unchanged pointer value back to memory would be a
waste of PCI bus cycles. Now the UHCI spec doesn't say explicitly that an
HC _can't_ do this, but I've tested both Intel and VIA hardware and
neither of them does.
As a side effect of this change, some of the code for removing QHs can be
eliminated.
<stern@rowland.harvard.edu>
[PATCH] USB: UHCI: Get rid of excessive spinlocks
This patch introduces a major simplification into the UHCI driver by
replacing its multiple spinlocks with a single one. The protected area of
code is slightly larger and there's more possibilities for contention on
an SMP system, but I think that shouldn't be a problem. Stephen Hemminger
has been kind enough to test this on his SMP computer and he hasn't
encountered any difficulties.
<oliver@neukum.org>
[PATCH] USB: fix error paths in kobil_sct
some error codes are incorrect and there's an URB leak in an error path.
<arjanv@redhat.com>
[PATCH] USB: usb hiddev stack usage patch
Patch below fixes some obscenely high stack uage;
struct hiddev_usage_ref_multi is well over 4Kb in size so really doesn't
belong on the stack.
<davidm@tiger.hpl.hp.com>
ia64: Patch by Stephane Eranian: remove irq_stat from cpuinfo_ia64.
irq_stat isn't needed anymore since its members got rolled into
thread_info.preempt_count.
<jgarzik@redhat.com>
[libata sata_promise] minor initialization updates
* remove incorrect PATA port check
* enable undocumented bit 13 in flash control register,
because the Promise driver does so.
* wait 10 ms after setting TBG mode, for the same reason.
<jgarzik@redhat.com>
[libata] clean up command queue/submit path a bit
This change is part of a series that compartmentalizes and consolidates
ATA taskfile submission.
Here, the device-location-related checks are moved out of the
->queuecommand()
hook and into an inline helper function.
<jgarzik@redhat.com>
[libata] more command queue path cleanup
A new helper ata_scsi_xlat_possible(), and the command queue path
gets a bit more compact.
As side effects we kill the 'cmd_size' argument from two functions,
and mark ata_scsi_rw_queue() as static, as its only needed
in libata-scsi.c.
<jgarzik@redhat.com>
[libata] more cmd queue path cleanups
Final part in tonight's series of changes to clean up the
command queueing path.
The simulate-ATA-over-SCSI code is moved to a new function,
ata_scsi_simulate(), and ata_scsi_rw_queue() is renamed to
ata_scsi_translate(). With the SCSI CDB debugging dump function
also moved into its own function, the queue-command path is now
nice, compact, and readable.
<patrick.boettcher@desy.de>
[PATCH] USB: fix bug in usb-skeleton.c
<oliver@neukum.org>
[PATCH] USB: fix DMA to stack in ftdi driver
this driver is doing DMA to the stack. Here's the obvious fix.
<oliver@neukum.org>
[PATCH] USB: cleanup of st5481
you are using __devinit which must not be used with USB drivers,
in addition you are using some false GFP values and fail to check
some error codes.
- check for unlink due to removal of controller
- correct GFP values
- no __devinit in USB
<oliver@neukum.org>
[PATCH] USB: fix typo in previous patch
I screwed up. This corrects it.
<oliver@neukum.org>
[PATCH] USB: fix hfc_usb sleeping in irq
you are using GFP_KERNEL in irq and __devinit with hotpluggable code.
- use proper GFP flags
- kill __devinit
<mochel@digitalimplant.org>
[PATCH] USB: Fix drivers/usb/net/Kconfig
This allows the pegasus driver to actually be seen as a config option.
Apparently it's not that popular, though I have confirmed that it still
works on at least the netgear fv101.
<arjanv@redhat.com>
[PATCH] USB: fix race in whiteheat serial driver
Patch below fixes an obvious race in the whiteheat usb serial driver...
<david-b@pacbell.net>
[PATCH] USB: define USB feature bit indices
This patch provides standard symbols for the various USB
device and endpoint feature bits, so that drivers can
use symbolic names for them. It also changes the code
relating to endpoint halts so it uses those symbols.
<david-b@pacbell.net>
[PATCH] USB: usbnet, minor probe() fault fix
Some hardware had the poor taste to misbehave during probe(),
which turned up a minor bug. This fixes it: don't try to
free a network device that hasn't been registerd.
<david-b@pacbell.net>
[PATCH] USB: g_ether does endpoint autoconfig too
Here's an update for the Ethernet gadget that corresponds
to the earlier one for Gadget Zero ... it gets rid of almost
all the remaining controller-specific #ifdefs in this driver.
(And also lets the driver initialize using "dummy_hcd".)
This is a significant step towards doing hardware-specific
configuration at run time (or at least init-time) rather
than compile time, but other patches will be needed to take
it the rest of the way there. (Especially considering the
RNDIS support...) The runtime footprint of the driver shrank
a bit, mostly because things moved into the init section.
<mroos@linux.ee>
[PATCH] USB: fix whiteheat USB serial compile failure on PPC
> Bah, looks like PPC doesn't ever define CMSPAR :(
>
> How about adding something like:
> #ifndef CMSPAR
> #define CMSPAR 0
> #endif
> To the beginning of the driver like the cdc-acm.c driver does? If that
> works, care to send me a patch?
Yes, it compiles.
<greg@kroah.com>
USB: mark pwc driver as broken, as it is.
And the maintainer doesn't seem to want to fix it :(
<stern@rowland.harvard.edu>
[PATCH] USB: Add dummy_hcd to the main kernel
This is a resubmission of as225, together with appropriate changes for the
g_serial driver. David Brownell's latest g_ether update makes it
unnecessary to change that file or gadget_chips.h.
dummy_hcd is simultaneously a host controller driver and a device
controller driver. It creates a simulated HC together with a simulated
UDC plugged into it. Gadget drivers can run under the simulated UDC and
will appear as regular USB devices on the simulated HC. The simulation is
reasonably (although not totally) realistic.
It's a wonderful tool for testing and developing gadget drivers without
the need for lots of additional hardware: Both the host driver and the
gadget driver can run on the same computer. It's been available for quite
some time in David's gadget-2.6 tree and it works well. I couldn't have
gotten the file-storage gadget running in any reasonable length of time
without it.
<info@gudeads.com>
[PATCH] USB: more ftdi_sio ids
<greg@kroah.com>
USB: ftdi_sio merge fixups.
<coreyed@linxtechnologies.com>
[PATCH] USB: add ftdi_sio product ids
<greg@kroah.com>
USB: fix compiler warning in whiteheat driver.
<khali@linux-fr.org>
[PATCH] I2C: adm1021 (probably) does something VERY,VERY BAD
Quoting myself:
> 3* Drop adm1021's limit init. This was already done in the 2.4 driver
> and should have been done in 2.6 as well.
Here is a patch that does that. It also prevents bit 7 (and unused bits)
of configuration register from being reset, as was discussed before:
http://archives.andrew.net.au/lm-sensors/msg04593.html
That second part needs to be backported to the 2.4 driver, and I will do
so.
Additionally, we get rid of a useless label.
The patch is untested (I don't own any supported chip) but quite
straightforward IMHO.
<khali@linux-fr.org>
[PATCH] I2C: Setting w83627hf fan_div preserves fan_min
Here is a patch that updates the w83627hf driver in the exact same way I
did recently for the w83781d driver. There were two problems:
1* Fan divisor storing code was ugly, badly ripped from the 2.4 w83627hf
driver and/or the 2.6 w83781d driver.
2* Setting fan divisors wouldn't preserve fan mins.
Exactly the same as w83781d:
http://archives.andrew.net.au/lm-sensors/msg06952.html
http://archives.andrew.net.au/lm-sensors/msg07008.html
No surprise since the w83627hf driver is a fork of the w83781d driver.
Since the two drivers are strongly similar, I took the code directly
from the updated w83781d driver. I cannot test the w83627hf driver
(testers welcome BTW) but this makes me feel confident that the code is
correct.
To make it clear, this single patch is the w83627f equivalent of the
three patches I submitted for the w83781d:
* Cleanup
* Refactoring
* Setting fan_div preserves fan_min
All in one (much better looking BTW).
<romain@lievin.net>
[PATCH] tipar char driver (divide by zero)
A patch about the tipar.c char driver has been sent on lkml by Sebastien
Bourdeau. It fixes a divide-by-zero error when we try to read/write data
after setting the timeout to 0.
<dsaxena@plexity.net>
[PATCH] IXP425 -> IXP4XX conversion for USB-gadget
The 2.6 code for Intel's IXP4xx NPU line has been updated to
remove all references to IXP42x or IXP425 and replace it
with IXP4XX, including config options and file names. This
patch updates the USB-gadget pxa-udc driver with these changes.
<david-b@pacbell.net>
[PATCH] USB: ohci misc updates
Mostly from Benjamin Herrenschmidt:
- prevent usbcore from asking the HCD root hub code
to read registers on one more suspend path (some
hardware gets upset in those cases);
- try handling a "device died" cleanup case better
- add some wmb() calls in spots that could matter
on some hardware
<stevef@stevef95.austin.ibm.com>
clean up compiler warnings
<stern@rowland.harvard.edu>
[PATCH] USB: Altsetting update for USB input drivers
This patch continues the update process for the cur_altsetting change.
The drivers in usb/input were all in good shape and needed only minimal
changes.
<trini@kernel.crashing.org>
PPC32: Remove an unneeded include in arch/ppc/boot/
<trini@kernel.crashing.org>
PPC32: Add more useful information to the oops output.
<trini@kernel.crashing.org>
PPC32: Fix two typos in arch/ppc/boot/
From: Arthur Othieno <a.othieno@bluewin.ch>
<jgarzik@redhat.com>
[libata] more documentation
libata-scsi.c should now be fully documented.
<greg@kroah.com>
PCI: add ability to access pci extended config space for PCI Express devices
Patch originally written by Intel, cleaned up and made sane by
Matthew Wilcox <willy@debian.org> and then tweaked a bit more by me.
From Matt's original email:
- Add cfg_size to struct pci_dev.
- Use it in sysfs and procfs.
- Introduce pci_find_ext_capability() for finding extended capabilities.
- Change the PCI_X_STATUS defines to match the spec (mea culpa there).
- Add defines for the extended capabilities.
<dlsy@snoqualmie.dp.intel.com>
[PATCH] PCI: Updates for PCI Express hot-plug driver
<willy@debian.org>
[PATCH] PCI Hotplug: Don't up() twice in acpiphp
On the error path, we currently try to up() a semaphore twice.
There was also a typo in an error message.
<willy@debian.org>
[PATCH] PCI Hotplug: Rewrite acpiphp detect_used_resource
There are two unrelated problems in acpiphp that are fixed by this patch.
First, acpiphp can be a module, so it is unsafe to probe the BARs of each
device while it initialises -- the device may be active at the time.
Second, it does not know about PCI-PCI bridge registers and so it reads
garbage for the last 4 registers of the PCI-PCI bridge card and doesn't
take into account the ranges that are forwarded by the bridge.
This patch avoids all that by using the struct resources embedded in
the pci_dev. Note that we no longer need to recurse as all the devices
on the other side of a PCI-PCI bridge have their resources entirely
contained within the PCI-PCI bridge's ranges.
<jgarzik@redhat.com>
[libata sata_promise] better locking and error handling
* Prefer spin_lock() to spin_lock_irq() in interrupt handler
* Reset each port, before probing the SATA phy
* Reset port when every time an error occurs
<jgarzik@redhat.com>
[libata] fix bug with READ(6) and WRITE(6) SCSI commands
Must set the LBA bit on all transfers, not just {read,write}{10,16}
scsi commands.
<jgarzik@redhat.com>
[libata] remove synchronize-cache dead code
Just a placeholder, and now that a better way to do this is coming,
we don't even need the [unused] placeholder anymore.
<jbarnes@sgi.com>
[PATCH] ia64: implement SN2 version of dma_mapping_error()
On sn2, dma_mapping_error is trivial. pci_map_single was already returning
0
in case of failure (0 is an invalid DMA address on sn2), so make
dma_mapping_error check for that.
<jbarnes@sgi.com>
[PATCH] ia64: only scan SN2 PCI busses that exist
sn_pci_init was unconditionally scanning 255 PCI busses, even though
only a few are actually present on most systems. This patch adds a
check to make sure a given bus exists before doing the scan, which
saves a little memory and also makes /sys/devices reflect reality a
bit more closely.
<akpm@osdl.org>
[PATCH] stack reduction: aic7xxx_old
From: Arjan van de Ven <arjanv@redhat.com>
aic7xxx_old: constant array of PCI ID's can be static since it's read only
<mort@wildopensource.com>
[PATCH] Update FC transport attributes API
This patch brings the FC transport attributes up to date with the SPI
attributes API.
The only major change I made was to separate read-only attributes
from read-write attributes.
<mort@wildopensource.com>
[PATCH] Add FC transport attributes support to qla2xxx
Here is a patch that adds FC transport attributes to the qla2xxx driver.
The patch should apply cleanly to a recent 2.6 kernel with the FC
attributes update that I just sent to linux-scsi.
<jejb@mulgrave.(none)>
MPT Fusion driver 3.01.03 update
From: "Moore, Eric Dean" <Emoore@lsil.com>
Changelog for mpt version 3.01.03:
(1) Fix fifo memory allocation under 64bit systems
by merging 3 seperate memory allocations into one call.
Before this fix, it was possible that these seperate
pci_alloc_consistent() calls were crossing the 4GB
hardware boundary.
Delete the MPTBASE_MEM_ALLOC_FIFO_FIX logic.
Backout recent ak@muc.de workaround.
(2) Replace wrappers for CHIPREG_XXX with defines;
per request from Jeff Garzik [jgarzik@pobox.com]
(3) Remove support for FC909.
(4) Remove PortIo modules parameter.
(5) Move procmpt_destroy function before pci_unregister_driver,
as the memory allocated for the proc was not being deallocated.
(6) Remove mptscshi_reset_timeouts function. The timer was
already expired when mod_timer is called.
(7) Fix small bug in slave_destroy, which could prevent domain
validation on hidden drive in a RAID volume.
----------------------------------------------------------------------
Changelog for mpt version 3.01.02:
(1) Andi Kleen[ak@suse.de]
put warning "Device (0:0:0) reported QUEUE_FULL!" into debug messages
(2) Alexander Stohr[Alexander.Stohr@gmx.de]
fix warnings from mptscsih_setup when driver isn't compiled as module
(3) Randy.Dunlap[rddunlap@osdl.org]
Remove unnecessary min/max macros and change calls to
use kernel.h macros instead.
<jejb@mulgrave.(none)>
ServeRAID ( ips ) 7.00.15
ith the completion of testing at Adaptec and IBM, the latest version of
the ServeRAID Linux device driver ( ips Version 7.00.15 )is now
available. Attached is the patches against the previous ServeRAID
releases. Basically, this is a convergence to a common ips driver code
base for the 2.4 and 2.6 kernels.
This driver is based on the driver currently in 2.6, so you while there
appears to be lots of changes to the 2.4 driver, the changes to the
current 2.6 driver are trivial ( the only changes are version number
changes and the addition of some new adapter ID's ). For 2.4, this was
primarily a testing effort to ensure that the 2.6 driver code was stable
when built for a 2.4 kernel.
<mort@wildopensource.com>
[PATCH] Fix template size calculation in transport attributes
This small patch fixes the template size calculation in
{spi,fc}_attach_transport().
<davem@nuts.davemloft.net>
[TG3]: Kill 'force' arg to tg3_phy_reset, it is always set.
<davem@nuts.davemloft.net>
[TG3]: At start of tg3_phy_copper_begin, force phy out of loopback mode.
<davem@nuts.davemloft.net>
[TG3]: Do not allow illegal ethtool advertisement bits.
<jgarzik@redhat.com>
[libata] back out duplicated upstream fix
We already fixed this bug locally, so fix up the automerge
by removing the upstream change.
<laforge@netfilter.org>
[NETFILTER]: Optimization of ip_conntrack_proto_tcp:tcp_packet()
A: Pablo Neira
D: This patch cleans up tcp_packet(). No semantical change, just juggling
D: code pieces.
<laforge@netfilter.org>
[NETFILTER]: Locking optimization in ip_conntrack_core
A: Pablo Neira
D: This patch puts tightens up a lock protected section in
D: ip_ct_refresh()
<laforge@netfilter.org>
[NETFILTER]: Cleanup conntrack helper API
A: Pablo Neira
D: This patch changes the conntrack helper API. Rather than having the
D: helper allocate an expect on the stack and then have the core
D: kmalloc and memcpy, it is now the job of a helper to call
D: ip_conntrack_expect_alloc()
<laforge@netfilter.org>
[NETFILTER]: Add nf_log handler, from Jozsef Kadlecsik.
<davem@nuts.davemloft.net>
[NETFILTER]: Missed these files in nf_log commit.
<laforge@netfilter.org>
[NETFILTER]: Add 'raw' table, from Jozsef Kadlecsik.
<david-b@pacbell.net>
[PATCH] USB; minor usbfs locking updates
These are "obvious" locking fixes: using the right lock
to protect interface claim/release (should be the driver
model bus lock, not BKL).
<david-b@pacbell.net>
[PATCH] USB: usb/core/config.c null pointers after kfree
Prevents an oops with some other patchsets.
Clear some pointers after the memory is kfreed, to avoid
making some other patch combinations oops.
<david-b@pacbell.net>
[PATCH] USB: ohci unlink tweaks
Minor unlink tweaks, including a case where SMP could oops
if it were abused, as if from 'usbtest' or 'stir4200'.
<david-b@pacbell.net>
[PATCH] USB Gadget: RNDIS/Ethernet Gadget Driver (1/2)
This patch adds the RNDIS message engine and kbuild/kconfig
support for it. This is currently labeled EXPERIMENTAL.
Patch contributed by Robert Schwebel, and developed with
support from Auerswald GmbH.
<david-b@pacbell.net>
[PATCH] USB Gadget: RNDIS/Ethernet Gadget Driver (2/2)
This updates the existing Ethernet gadget driver to
support an additional RNDIS configuration on all
current USB controllers that can support one.
It also includes a bit more work to address the complex
autoconfiguration of this driver. Needs testing on PXA.
Patch (mostly) contributed by Robert Schwebel, and developed
with support from Auerswald GmbH.
<david-b@pacbell.net>
[PATCH] USB: set_configuration locking cleanups
I've posted all these before, the only notable change is
treating that one gphoto2 case as warn-and-continue rather
than return-with-failure.
usb_set_configuration() cleanup
* Remove it from the USB kernel driver API. No drivers need it now,
and the sysadmin can change bConfigurationValue using sysfs (say,
when hotplugging an otherwise problematic device).
* Simpler/cleaner locking: caller must own dev->serialize.
* Access from usbfs now uses usb_reset_configuration() sometimes,
preventing sysfs thrash, and warns about some dangerous usage
(which gphoto2 and other programs may be relying on). (This is
from Alan Stern, but I morphed an error return into a warning.)
* Prevent a couple potential "no configuration" oopses. (Alan's?)
* Remove one broken call from usbcore, in the "device morphed" path
of usb_reset_device(). This should be more polite now, hanging
that one device rather than khubd.
<jgarzik@redhat.com>
[libata] fix broken delay
Due to rounding and HZ==100, sometimes delays would not occur for
the desired length of time, or even at all.
Fix call to schedule_timeout() to ensure we delay -at least- for
the correct amount of time.
<akpm@osdl.org>
[PATCH] USB: drivers/usb/gadget/epautoconf.c gcc-3.5 build fix
drivers/usb/gadget/epautoconf.c: In function `ep_matches':
drivers/usb/gadget/epautoconf.c:175: error: `typeof' applied to a bit-field
<pmarques@grupopie.com>
[PATCH] USB: ftdi_sio.c: not unlinking urb on ftdi_close
This patch fixes a bug in ftdi_sio.c where the driver wouldn't unlink the
read urb if the user application cleared the HUPCL flag on termios->c_cflag.
<Andries.Brouwer@cwi.nl>
[PATCH] USB Storage: datafab fix and unusual devices
datafab.c has an often-seen bug: the SCSI READ_CAPACITY command
does not need the number of sectors but the last sector.
I just tried the CF and SM parts of a 5-in-1 card reader.
The CF part works with US_PR_DATAFAB when the bug mentioned is fixed.
The SM part works with US_PR_SDDR55.
(Revision Number is 17.08 - that in case the 0000-ffff
should prove to be too optimistic.)
We still must discuss what setup to use for readers like this -
I have several of them - that require different drivers for
different LUNs. As it is now one has to compile usb-storage
twice, once with CONFIG_USB_STORAGE_DATAFAB defined and once
without, and remove one usb-storage.ko and insert the other
to go from CF to SM. (And that hangs with 2.6.4 so a reboot
is required..)
<davej@redhat.com>
[PATCH] USB: kill off CONFIG_USB_BRLVGER detritus.
This died a while ago, but lingers on in defconfigs.
<david-b@pacbell.net>
[PATCH] USB: RNDIS/Ethernet Gadget Driver comment changes
Whoops, I missed something. You should apply this patch too.
The RNDIS spec license agreement does NOT require tacking any
GPL-incompatible restrictions on the results of _using_ the
spec:
"... may be used solely for the purpose of implementing
the RNDIS protocol message set to interface with ..."
(the two cases identified in the text)
And that's all the implementation does -- end of story.
<marcel@holtmann.org>
[PATCH] USB: Rename the USB HID driver
> > I like to see this rename as soon as possible. So if nobody minds I send
> > a patch to LKML and ask Linus for inclusion.
>
> Go ahead, but also please patch all relevant documentation in the
> kernel.
the attached patch should do the renaming everywhere hid or hid.o was
mentioned. It also removes all references to *.o module names.
<alessandro.zummo@towertech.it>
[PATCH] USB: omninet patch
here's a small patch for omninet.c .
<khali@linux-fr.org>
[PATCH] I2C: Prevent misdetections in adm1021 driver
Yet another patch for the adm1021 chip driver. I refined the detection
code a bit in order to prevent chip misdetection. Some chips handled
by the adm1021 driver are hard to detect and identify (LM84 and
MAX1617) so we tend to accept any chip it the valid I2C address range
as one of these. It has caused much, much trouble already. See these
threads for example:
http://archives.andrew.net.au/lm-sensors/msg04448.html
http://archives.andrew.net.au/lm-sensors/msg04624.html
http://archives.andrew.net.au/lm-sensors/msg05560.html
http://archives.andrew.net.au/lm-sensors/msg05871.html
http://archives.andrew.net.au/lm-sensors/msg06754.html
http://archives.andrew.net.au/lm-sensors/msg07181.html
And this ticket:
http://www2.lm-sensors.nu/~lm78/readticket.cgi?ticket=1434
So I thought it would be good to prevent this kind of problems if
possible, and read the 8 datasheets again in search for ways to refine
the detection method.
I changed it in sensors-detect already, and had positive feedback from
one user. I will also backport the changes to the driver to the 2.4
version we have in CVS.
What the patch does:
* Use unused bits of two more registers (configuration and conversion
rate) to reduce misdetections.
* Return with -ENODEV if the detection fails.
* Change the order in which we try to identify the chips. We better
finish with the LM84 and the MAX1617, in this order, because they are
harder to identify and are more likely to result in false positives.
* Refine LM84 detection. The LM84 has less features than the other
chips(chip cannot be stopped, conversion rate cannot be set, no low
limits) so it has extra unused bits.
* Do not intialize the chip if it was detected as an LM84. This one
cannot be stopped so why would we try to start it again? And as said
right before, conversion rate isn't changeable either.
Note that I couldn't test the changes on any supported chip since I
don't own any. Still I believe that they should be applied, since the
current code already broke one system and seriously harmed several
others. I believe it's not critical if it turns out that we reject
valid chips (which shouldn't happen if the datasheets are correct,
anyway). People will simply let us know and we'll be less restrictive.
In the meantime they can force the driver. That said, testers are
welcome, as usual.
<khali@linux-fr.org>
[PATCH] I2C: i2c documentation update (1/2)
Here is an update to my 2.4 to 2.6 i2c client porting guide. The changes
were inspired by the feedback I got with the drivers that have been
ported so far.
<khali@linux-fr.org>
[PATCH] I2C: i2c documentation update (2/2)
Here is a patch to Documentation/i2c/sysfs-interface. This is mostly my
intent to make the document more readable. There are also a few
incorrectnesses fixed, and some comments added.
<khali@linux-fr.org>
[PATCH] I2C: Incorrect memset in eeprom.c
Quoting Ralf Roesch:
> currently I'm only working with Linux MIPS 2.4 kernel,
> so it would be nice if you could forward the patch for 2.6.
OK, so here we are. Greg, this is the port to 2.6 of Ralf patch that
fixes an incorrect memset while initializing the eeprom driver. Please
apply.
<khali@linux-fr.org>
[PATCH] I2C: Discard pointless comment in via686a
The simple patch below discards a comment in via686a referencing a file
that doesn't belong to the Linux tree. Now that I tell people not to do
that in my porting guide, we better follow our own advice.
<jejb@mulgrave.(none)>
SCSI: Add noretry check to the error handler path
This still doesn't give us complete fast fail on
the eh path because we still get delayed to recover
the transport.
<davej@redhat.com>
[PATCH] USB: w9968cf driver misplaced ;
<david-b@pacbell.net>
[PATCH] USB: fix dvb-ttusb-budget driver due to set_configuration locking
cleanups
> Oops, you forgot to grep:
>
> CC [M] drivers/media/dvb/ttusb-dec/ttusb_dec.o
> drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c: In function
`ttusb_setup_interfaces':
> drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c:1011: warning: implicit
declaration of function `usb_set_configuration'
Well, when I did the grep that bug wasn't there; it
was just integrated on Feb 26!
> Care to send a patch to fix it up before Andrew gets grumpy with me for
> breaking his build? :)
The first part makes it use usb_reset_configuration() like
it did before ... I'm surprised this driver hasn't been
generating "it deadlocks during probe" reports.
The second part prints a diagnostic if the configuration
wasn't set right; the fix would use hotplug and sysfs.
<greg@kroah.com>
Cset exclude: jgarzik@redhat.com|ChangeSet|20040323051558|61282
<rddunlap@osdl.org>
[PATCH] PCI: add DMA_{64,32}BIT constants
On Tue, 23 Mar 2004 00:23:05 -0500 Jeff Garzik <jgarzik@pobox.com> wrote:
>>Yeah well... in the intervening time, somebody on IRC commented
>>
>>"so what is so PCI-specific about those constants?"
>>
>>They probably ought to be DMA_{32,64}BIT_MASK or somesuch.
Here's an updated patch, applies to 2.6.5-rc2-bk9.
I left the DMA_xxBIT_MASK defines in linux/pci.h, although
they aren't necessarily PCI-specific. Would we prefer to
have them in linux/dma-mapping.h ?
<jgarzik@redhat.com>
[libata sata_via] Fix detection of device 1
VIA hardware thinks port 1 (second port) is "SATA primary slave".
Since the hardware rarely configures SATA to present as slave devices,
we must pretend that the second hardware port (as the user sees it)
is the third port (as the VIA PCI config registers see it).
<stern@rowland.harvard.edu>
[PATCH] USB Gadget: Use configuration-buffer library in file-storage
This patch imports the config-buffer library into the file-storage gadget,
simplifying and decreasing the amount of code needed for assembling
configuration descriptors. It also changes the driver to remove any
pretense at bus-powered operation and to use the new DUALSPEED
configuration option. This is in line with recent changes made to other
gadget drivers.
<stern@rowland.harvard.edu>
[PATCH] USB Gadget: Use automatic endpoint selection in file-storage
This patch imports the endpoint auto-config library into the file-storage
gadget, simplifying the code needed for endpoint selection and removing
almost all dependencies on the controller type from the driver. It also
changes some log messages for reporting fatal problems from INFO to ERROR.
<stern@rowland.harvard.edu>
[PATCH] USB: Complete all URBs in UHCI when releasing the bus
This patch changes the UHCI driver's bus-release routine; now it will
correctly finish all pending but not-yet-completed URBs. This fixes a
reported bug, when trying to rmmod uhci-hcd while using a USB mouse under
X. Also, the patch changes a variable name from ...hs... to ...fs...
("high speed" -> "full speed") -- something I accidentally omitted in an
earlier patch.
<stern@rowland.harvard.edu>
[PATCH] USB Gadget: Rename the dummy_hcd's gadget
When David added an entry to the gadget_chips.h file for the dummy_hcd
driver, he mistakenly used the name "dummy_udc" rather than "dummy_hcd".
The mistake is understandable, since other controllers use "_udc" in their
names and it is illogical to put "_hcd" in a _device_ controller's name.
This patch updates the dummy_hcd driver and changes the gadget name to
agree with the gadget_chips.h entry.
<davem@nuts.davemloft.net>
[TG3]: Add missing 5704 BX workaround, and fix typo in autoneg fix.
<david-b@pacbell.net>
[PATCH] USB: RNDIS/Ethernet Gadget Driver .inf file
<david-b@pacbell.net>
[PATCH] USB: remove usb_interface.driver field
Remove usb_interface.driver, and along with it the "half bound" state
previously associated with drivers binding with claim() instead of probe().
This changes usb_driver_claim_interface() semantics slightly: drivers must
now be prepared to accept disconnect() callbacks.
Fixes more locking bugs, and a claim() oops that snuck in with a
recent patch.
<davem@nuts.davemloft.net>
[TG3]: Set GRC_MISC_CFG prescaler more safely.
<greg@kroah.com>
USB: remove "released" field from struct usb_interface as it is not needed.
<davem@nuts.davemloft.net>
[TG3]: Fix serdes cfg programming on 5704.
<davem@nuts.davemloft.net>
[TG3]: When link is down, set stats coalescing ticks to zero.
<davem@nuts.davemloft.net>
[TG3]: Wait a bit for BMSR/BMCR bits to settle in PHY setup.
<greg@kroah.com>
USB: clean up usb_get_dev() as it was written quite horribly.
<greg@kroah.com>
USB: add usb_get_intf() and usb_put_intf() functions as they will be needed.
<jejb@mulgrave.(none)>
SCSI: Updates to non-sector size completion calculations
From: Jens Axboe <axboe@suse.de>, Mike Christie <mikenc@us.ibm.com>
<rddunlap@osdl.org>
[PATCH] PCI: move DMA_nnBIT_MASK to linux/dma-mapping.h
<johnrose@austin.ibm.com>
[PATCH] PCI Hotplug: RPA PCI Hotplug - redundant free
Please commit the following patch, which removes a redundant call to a
cleanup function from an error path of the module init code.
<dsaxena@plexity.net>
[PATCH] PCI: Allow arch-specific pci_set_dma_mask and friends
The patch provides the ability for architectures to have custom
implementations of pci_set_dma_mask() and friends (dac_set_dma_mask
and set_consistent_dma_mask). The reason I need this is b/c I have
a chipset (Intel ARM IXP425) that has a broken PCI interface that
only allows PCI dma to/from the bottom 64MB of system memory. To get
around this limitation, I trap a custom dma-mapping implementation that
bounces buffers outside the 64MB window. At device discover time, my
custom platform_notify() function gets called and it sets the dma_mask
to (64MB-1) and in ARM's dma-mapping code, I check for dma_mask != 0xffffffff
and if that is true, I call the special bounce helpers. This works great
except that certain drivers (e100, ide-pci) call pci_set_dma_mask()
with 0xffffffff and the generic implementation only allows for the
architecture-defined pci_dma_supported() to return true or false. There
is no method for the architecture to tell the PCI layer "I can't set
the mask to 0xffffffff, but I can set it to this other value" and there
is no way to pass that back to the driver. What this means is that if
I have pci_set_dma_supported() return failure on full 32-bit DMA, the
driver will not initialize the card; however, if I return true,
pci_set_dma_mask() will set the dma mask to full 32-bits and I can no
longer trap and will have buffers that are not dma-able and cause
PCI master aborts. Both of those are not acceptable. IMHO, the
driver shouldn't care if the architecture has to bounce DMA outside of
64MB and since this is not something most architectures have to worry
about, the easiest way to get around the issue is by allowing custom
pci_set_dma_mask() for arches that need it but keeping the generic
implementation for those that do not. In my case, it simply returns
0 to the driver but keeps the device mask set to 64MB-1 so I can trap.
<lxiep@ltcfwd.linux.ibm.com>
[PATCH] kobject_set_name() doesn't allocate enough space
<ahaas@airmail.net>
[SPARC]: Add C99 initializers to Sparc frame buffer devices.
<rvinson@linuxbox.(none)>
Renaming pplus_common.c to hawk_common.c to match gt64260_common.c, etc,
plus minor
cleanups.
<shemminger@osdl.org>
[NET]: Mark lock_sock and release_sock as FASTCALL.
<davej@redhat.com>
[AGPGART] VIA GART driver can use the new generic AGPv3 masks.
<davej@redhat.com>
[AGPGART] Efficeon GART driver can use generic masking routine.
<davej@redhat.com>
[AGPGART] SiS 746 chipset also needs extra recovery time when changing mode.
<davej@redhat.com>
[AGPGART] Fix SiS workaround printk. This happens on multiple chipsets.
<mludvig@suse.cz>
[AF_KEY]: pfkey_send_new_mapping marks dest address incorrectly.
<davem@nuts.davemloft.net>
[TG3]: Verify link advertisement correctly on 10/100 only chips.
<jbarnes@sgi.com>
[PATCH] ia64: clean up pcibr_slot.c warnings
A few warnings crept into pcibr_slot.c that this patch takes care of.
- forward declare pcibr_slot_pwr so it can be used w/o warning
- fix argument passed to pcibr_slot_attach in pcibr_slot_enable
<jbarnes@sgi.com>
[PATCH] ia64: fix sn_serial warning
In my fixes to quiet the sn_serial driver, I made sn_debug_printf only
get used when the DEBUG define was turned on in the driver but forgot
to #ifdef out the function definition, causing an 'defined but not
used' warning. This patch fixes that.
<pfg@sgi.com>
[PATCH] ia64: small SN2 interface.c patch
Change the calls to link_path_walk() to path_walk(). link_path_walk()
doesn't initialze current->total_link_count and path_walk() does.
Without the initialization, path_walks start to fail when 40 sym links
have been followed.
<dlstevens@us.ibm.com>
[IPV4]: Fix IGMP version number and timer printing for procfs.
<davej@redhat.com>
[CPUFREQ] Various updates/fixes to the powernow-k8 comment header.
<shemminger@osdl.org>
[BRIDGE]: Allow non-root to inspect the status of a bridge.
<davem@nuts.davemloft.net>
[TG3]: All 5705 chips need PHY reset on link-down.
<shemminger@osdl.org>
[BRIDGE]: Lift ioctl limits on number of bridges/ports.
Get rid of some arbitrary API restrictions that limit the kernel
to 64 bridges and 256 ports.
Retain compatibility in GET_PORT_LIST, the existing bridge API
passes 0 for the third argument, and expects 256 entries.
Note: there still is limit of 256 ports due to STP, but this
shouldn't show up in the API, it needs to be handled by the
'add port to bridge ioctl'.
<shemminger@osdl.org>
[BRIDGE]: Correctly handle up to 256 ports per bridge.
Bridge code is limited to 256 ports per bridge because the Spanning
Tree Protocol has limit of one octet for port number. This code
fixes:
* bogus unlock in error path when port list is full.
* passes different error status for out of memory, vs
port list full.
* O(n) vs O(n^2) lookup for free port number
* since port and priority are both limited to one byte
don't store them as int's
* makes limit explicit in code
<davem@nuts.davemloft.net>
[TG3]: More PHY programming fixes.
- Break out advertisement register verification into
a function, tg3_copper_is_advertising_all.
- At device probe time, reset PHY if not Serdes
and ASF is not enabled.
- Add some missing necessary PHY init to PHY probe
code as well.
<davem@nuts.davemloft.net>
[TG3]: Bump driver version and reldate.
<davej@redhat.com>
[CPUFREQ] fix compilation of speedstep-lib with DEBUG set
<davej@redhat.com>
[CPUFREQ] powernow-k8 whitespace changes.
Trying to get the diffsize down between me & Pavel.
<stevef@stevef95.austin.ibm.com>
Add missing description about how to specify credentials file
<davej@redhat.com>
[AGPGART] Actually Call the SiS workaround on SiS 746 too.
<jbarnes@sgi.com>
[PATCH] ia64: bring ia64 nodes online properly
Andi's libnuma exposed the fact that we don't bring nodes online
properly as we discover them in ia64. Here's a quick patch to fix
that. Tested with Andi's numademo program; seems to work fine.
<davej@redhat.com>
[AGPGART] EM64T driver should only run when we have a supported CPU.
Otherwise we see strange things at boottime if we compile in all drivers,
like this..
agpgart: Unsupported Intel chipset (device id: 1a30)
agpgart: Detected an Intel i845 Chipset.
<davej@redhat.com>
[CPUFREQ] Step 1 of SMP support for powernow-k8.
Move lots of code to the cpu init routine from the detection routine.
Do some SMP sanity checks in the detection routine.
<davej@redhat.com>
[CPUFREQ] powernow-k8 SMP work part 2.
Introduce a per-cpu powernow_k8_data struct, and pass it around between all
the functions that need to know about it.
<david-b@pacbell.net>
[PATCH] USB: ehci updates: CONFIG_PCI, integrated TT
Generalize the driver a bit:
- PCI-specific handling is restricted to a small chunk of
init code. Non-PCI implementations are in the pipeline.
- Merge support from ARC International (Craig Nadler) for
their integrated root hub transaction translators (on PCI).
Other implementations should be similar.
<david-b@pacbell.net>
[PATCH] USB Gadget: ethernet/rndis gadget updates
This fixes an oops during "ifconfig usb0 down" after unplug
from a Windows box. It also shrinks the driver size to something
much more reasonable by leaving out debug messaging, and adds
a few missing newlines.
<mochel@digitalimplant.org>
[PATCH] I2C: Add ALi 1563 Device ID to pci_ids.h
<mochel@digitalimplant.org>
[PATCH] I2C: Add support for the ALi 1563 in the PCI IRQ routing code.
<mochel@digitalimplant.org>
[PATCH] I2C: Add ALi 1563 i2c driver
The i2c interface on the 1563 is totally different than on both the 1533
and the 1535. It supports i2c 2.0, and happens to be nearly identical to
the interface on the i810 chipsets.
<mochel@digitalimplant.org>
[PATCH] I2C: Fix check for DEBUG in i2c-ali1563
<david-b@pacbell.net>
[PATCH] USB: usbcore blinkenlights
The per-port LEDs on the most USB 2.0 hubs are programmable.
And the USB spec describes some ways to use them, blinking
to alert users about hardware (amber) or software (green)
problems.
This patch is the infrastructure for that blinking. And
if you should happen to "modprobe usbcore blinkenlights",
the LEDs will cycle through all the ports ... which is
not a USB-standard mode, but it can certainly handy be
handy as a system heartbeat visible across the room.
<stevef@stevef95.austin.ibm.com>
Invalidate readahead data properly when file closed, but other client
changed it on server
<rvinson@linuxbox.(none)>
Updating mcpn765 for 2.6
<James.Bottomley@steeleye.com>
[PATCH] sd_shutdown cannot be called when in state SDEV_DEL
sd_remove calls sd_shutdown to finish I/O to the disc. However, the
state model puts the device in SDEV_DEL before triggering the
sd_remove (which won't allow any further I/O at all).
Fix by making SDEV_CANCEL the intermediate state and only transitioning to
SDEV_DEL after calling device_del().
<wesolows@foobazco.org>
[SPARC32]: Fix wraparound bug in bitmap allocator
<davem@nuts.davemloft.net>
[TG3]: Print list of important probed capabilities at driver load.
<davem@nuts.davemloft.net>
[TG3]: Two PHY fixes.
- Do not probe PHY ID register if ASF firmware is running.
- Fix two errors in PCI subsys to PHY ID table.
<davem@nuts.davemloft.net>
[TG3]: Kill uninitialized var warning.
<davem@nuts.davemloft.net>
[TG3]: Reset fixes.
- Put more code into common area in tg3_chip_reset()
- Set GRC_MODE, even sanes host-stackup bit, after enabling
memory arbiter.
- After every core-clock reset, reprobe ASF enabling state.
<davem@nuts.davemloft.net>
[TG3]: Update driver version and release date.
<mashirle@us.ibm.com>
[IPV6]: Add MIBs counters in MLD.
<ebrower@usa.net>
[SPARC]: Add sysctl to control serial console power-off restrictions.
<davem@nuts.davemloft.net>
[SPARC64]: hugetlbpage.c needs module.h
<tony@com.rmk.(none)>
[ARM PATCH] 1777/1: Add TI OMAP support to ARM core files
Patch from Tony Lindgren
This patch updates the ARM Linux core files to add support for
Texas Instruments OMAP-1510, 1610, and 730 processors.
OMAP is an embedded ARM processor with integrated DSP.
OMAP-1610 has hardware support for USB OTG, which might be of interest
to Linux developers. OMAP-1610 could be easily be used as development
platform to add USB OTG support to Linux.
This patch is an updated version of an earlier patch 1767/1
with the dummy Kconfig added for OMAP as suggested by Russell King
here:
http://www.arm.linux.org.uk/developer/patches/viewpatch.php?id=1767/1
This patch is brought to you by various linux-omap developers.
<tony@com.rmk.(none)>
[ARM PATCH] 1780/1: Add TI OMAP support, include files
Patch from Tony Lindgren
This patch adds the include files for Texas Instruments OMAP-1510 and
1610 processors.
OMAP is an embedded ARM processor with integrated DSP.
OMAP-1610 has hardware support for USB OTG, which might be of interest
to Linux developers. OMAP-1610 could be easily be used as development
platform to add USB OTG support to Linux.
This patch is an updated version of patch 1768/1 with Russell King's
comments fixed. This patch requires patch 1777/1 applied.
This patch is brought to you by various linux-omap developers.
<tony@com.rmk.(none)>
[ARM PATCH] 1781/1: Add TI OMAP support, arch files
Patch from Tony Lindgren
This patch adds the arch files for Texas Instruments OMAP-1510 and
1610 processors.
OMAP is an embedded ARM processor with integrated DSP.
OMAP-1610 has hardware support for USB OTG, which might be of interest
to Linux developers. OMAP-1610 could be easily be used as development
platform to add USB OTG support to Linux.
This patch is an updated version of patch 1769/1 with Russell King's
comments fixed. This patch requires patch 1777/1 applied.
This patch is brought to you by various linux-omap developers.
<garloff@suse.de>
[PATCH] SCSI sense buffer size -> 96
some SCSI devices need more than 64bytes of sense buffer.
I know about one: The IBM MagStar tapes report the necessity to be
cleaned at bytes 70 and report 96 bytes in total.
Attached patch increases the sense buffer size to 96 bytes.
<jejb@mulgrave.(none)>
Fix scsi_device_get to allow NULL devices
Modification of patch from SLES-9
<willy@debian.org>
[PATCH] sym 2.1.18j
sym 2.1.18j:
- Add SPI transport attributes (James Bottomley)
- Use generic code to do Domain Validation (James Bottomley)
- Stop using scsi_to_pci_dma_dir() (Christoph Hellwig)
- Change some constants to their symbolic names (Grant Grundler)
- Handle a race between a postponed command completing and the EH retrying
it (James Bottomley)
- If the auto request sense fails, issue a device reset (James Bottomley)
<nico@org.rmk.(none)>
[ARM PATCH] 1782/1: discontigmem support for PXA chips
Patch from Nicolas Pitre
<nico@org.rmk.(none)>
[ARM PATCH] 1783/1: more PXA reg definitions
Patch from Nicolas Pitre
<marcel@holtmann.org>
[Bluetooth] Remove architecture specific compat ioctl's
The compat ioctl definitions are now maintained in a single place, so
it is no longer needed to keep the architecture specific defines. This
patch removes the leftover Bluetooth parts from x86_64 and sparc64.
<marcel@holtmann.org>
[Bluetooth] Fix broken HCI security filter
The HCI security filter is broken on 64-bit architectures and this patch
restores the version from 2.4, which is working perfect on 32-bit and
64-bit machines.
<marcel@holtmann.org>
[Bluetooth] Allocate hdev before device configuration
The hdev structure must be allocated before the device is configured and
before any interrupt is started.
<marcel@holtmann.org>
[Bluetooth] Add UART protocol id's for 3-Wire and H4DS
This patch adds the id's for the 3-Wire and H4DS UART transport protocols.
<ben-linux@org.rmk.(none)>
[ARM PATCH] 1788/1: SC2410 include/asm-arm/arch-s3c2410 [repost of 1778/1]
Patch from Ben Dooks
This patch is a repost of 1778/1 with the memory.h file fixed.
This patch contains all the necessary include files for
include/asm-arm/arch-s3c2410 for Samsing S3C2410 SoC CPU support.
The patch also includes the support headers for IPAQ H1940, Simtec BAST and
VR1000 board support.
<ben-linux@org.rmk.(none)>
[ARM PATCH] 1793/1: S3C2410 - arch/arm/mach-s3c2410 [ repost of 1790/1 ]
Patch from Ben Dooks
Core support for S3C2410 based machines
machine support for Simtec BAST, VR1000 and
IPAQ H1940
repost of 1790/1 with configuration definition fixed
<ben-linux@org.rmk.(none)>
[ARM PATCH] 1792/1: S3C2410 - arch/arm/boot [ fix for 1789/1 ]
Patch from Ben Dooks
arch/arm/boot support for S3C2410
support for boot (and debug) messages via EmbeddedICE (CP14)
comms registers.
fixed typos from 1789/1
<ben-linux@org.rmk.(none)>
[ARM PATCH] 1794/1: S3C2410 - arch/arm/kernel patches [ repost 1791/1 ]
Patch from Ben Dooks
arch/arm/kernel patch for S3C2410 support
- default configurations for S3C2410
- build changes for S3C2410
- IRQ support for kernel entry
- debug serial support
<rmk@flint.arm.linux.org.uk>
[ARM] Clean up formatting of s3c2410 help texts.
<davej@redhat.com>
[CPUFREQ] Transmeta longrun driver fix.
(From Stelian Pop)
Upon investigation, the reason is that trying to set the performance
to 80% in longrun_determine_freqs leaves the performance to 100%.
The performance level, at least on this particular model, can be lowered
only in 33% steps. And in order to put the performance to 66%, the
code should try to set the barrier to 70%.
The following patch does even more, it tries every value from 80%
to 10% in 10% steps, until it succeeds in lowering the performance.
I'm not sure this is the best way to do it but in any case,
it works for me (and should continue to work for everybody else).
<rmk@flint.arm.linux.org.uk>
[ARM] Fix silent build error caused by undefined symbol.
Current binutils silently ignores certain undefined symbols; this
cset fixes one such instance.
<davej@redhat.com>
[AGPGART] Previous AGPv3 SiS fixes broke AGPv2 users. Oops.
<schwab@suse.de>
[PATCH] ia64: Missing overflow check in mmap
Calling mmap with len == -1 was silently accepted. The test in the generic
code was fixed in July 2003, but the fix didn't make it into the ia64-
specific code.
<schwab@suse.de>
[PATCH] ia64: Missing include in hugetlbpage.c
This fixes a missing include file in arch/ia64/mm/hugetlbpage.c in 2.6.5.
module.h is needed for EXPORT_SYMBOL.
<rmk@flint.arm.linux.org.uk>
[ARM] Add ecard_(request|release)_resources().
<petri.koistinen@fi.rmk.(none)>
[PATCH] update Compaq Personal Server URL
Patch from Petri T. Koistinen
Update of Compaq Personal Server URL.
<alex.williamson@hp.com>
[PATCH] ia64: setup max dma addr earlier on hp boxes
sba_iommu was setting up MAX_DMA_ADDRESS way too late to do any
good. This patch makes it get setup via platform_setup, so it's ready
for paging_init(). All pages should show up in zone DMA now. Against
latest 2.6.
<hugh@com.rmk.(none)>
[PATCH] make_coherent pgoff
Patch from Hugh Dickins
In wandering through the Linus 2.6 tree preparing for changeover of
i_mmap and i_mmap_shared to Rajesh's prio tree for object-based rmap...
I noticed that pgoff in make_coherent doesn't add up (plus, I think
we need to mask out the word "don't" in the comment further down).
2.4.25 looks equally wrong.
<mashirle@us.ibm.com>
[IPV6]: Provide ipv6 multicast/anycast addresses through netlink.
<manfred@colorfullife.com>
[NETLINK]: Split up netlink_unicast.
<davej@redhat.com>
[CPUFREQ] Fix up docbook parameters on x86 drivers.
From Michael Still <mikal@stillhq.com>
<davej@redhat.com>
[CPUFREQ] Grammar fix in p4-clockmod.c
Noted by Viktor Radnai.
<davej@redhat.com>
[CPUFREQ] Remove useless goto.
(Pavel Machek)
<davej@redhat.com>
[CPUFREQ] Indentation fix.
<rddunlap@osdl.org>
[NET]: Update networking config menu (v3)
Networking support/options and Networking drivers have been, uhm,
messy to navigate for some time now. BenH mentioned this
and I was already looking into options to clean it up.
This is a cleanup of Networking support/options and Networking Drivers.
It presents a more consistent interface and lists similar driver
groups and protocol groups closer together.
It also moves the IBMVETH driver so that it no longer breaks the
dependency tree, allowing other drivers (nearby in Kconfig file)
to be presented in a more linear manner.
<rvinson@linuxbox.(none)>
Merge bk://linux.bkbits.net/linux-2.5
into linuxbox.(none):/src/linux/ppc/linux-2.5/linux
<stevef@steveft21.ltcsamba>
Send NTCreateX with ATTR_POSIX if Linux/Unix extensions negotiated
with server. This allows files that differ only in case and
improves performance of file creation and file open to such servers
<sri@us.ibm.com>
[SCTP] Fix typo in entry name of the remove_proc_entry() call.
<davej@redhat.com>
[CPUFREQ] Kill off inlines in powernow-k8 driver.
Gcc should be smart enough to do this itself.
<davej@redhat.com>
[CPUFREQ] make powernow-k8 use batps from powernow data struct instead of
static struct.
<davej@redhat.com>
[CPUFREQ] Merge a bunch of extra powernow-k8 helpers.
<davej@redhat.com>
[CPUFREQ] Serialise fid/vid changes in powernow-k8 driver.
<davej@redhat.com>
[CPUFREQ] SMP fixes for powernow-k8's check_supported_cpu()
<davej@redhat.com>
[CPUFREQ] printk cleanup in powernow-k8's check_pst_table()
<davej@redhat.com>
[CPUFREQ] Add missing MSR define to fix the powernow-k8 compile.
<bcollins@debian.org>
[IEEE-1394] Sync IEEE-1394 to r1203
<davej@redhat.com>
[CPUFREQ] powernow-k8 header cleanups
remove unused defines, introduce some new ones, and generally cleanup.
<davej@redhat.com>
[CPUFREQ] fill out the powernow_k8_data table.
<davej@redhat.com>
[CPUFREQ] Use the new fill_powernow_table() to fill struct instead of doing
it inline.
<brazilnut@us.ibm.com>
[PATCH] pcnet32.c add support for 79C976
Please include this patch to add support for the 79C976 device to the
pcnet32 driver.
<brazilnut@us.ibm.com>
[PATCH] pcnet32 all printk under netif_msg
Please apply the following patch to 2.6.5.
All printk's are now done under netif_msg debug level tests.
<brazilnut@us.ibm.com>
[PATCH] pcnet32 correct name display
This displays the device name (eth%d) instead of the device type
when registering the interrupt handler.
<brazilnut@us.ibm.com>
[PATCH] pcnet32 add led blink capability
Please apply this patch to 2.6.5 to include the capability of blinking
the LED's for device identification. Ethtool -p support.
<davej@redhat.com>
[CPUFREQ] More SMP/preempt fixes, this time powernowk8_target()
Also some changes to use some helpers.
<jgarzik@redhat.com>
Remove unused compatibility-defines include wan/lmc/lmc_ver.h.
Noticed by Adrian Bunk.
<davej@redhat.com>
[CPUFREQ] Change powernow-k8 over to use its new KHz frequency helpers
<davej@redhat.com>
[CPUFREQ] Extra debugging foo.
<davej@redhat.com>
[CPUFREQ] Stuck pending bit is now checked in the init routine.
<rddunlap@osdl.org>
[PATCH] dgrs: add missing iounmaps
[resend]
Insert missing iounmap's.
From: Leana Ogasawara <ogasawara@osdl.org>
<rddunlap@osdl.org>
[PATCH] lmc header file not needed
From: Domen Puncer <domen@coderock.org>
<davej@redhat.com>
[CPUFREQ] numerous powernow-k8 cpu_init() fixes/cleanups.
<romieu@fr.zoreil.com>
[netdrvr r8169] DMA api resync.
<romieu@fr.zoreil.com>
[netdrvr r8169] ethtool driver info
Author: Krishnakumar R. <krishnakumar@naturesoft.net>
<romieu@fr.zoreil.com>
[netdrvr r8169] Barrier against compiler optimization.
<romieu@fr.zoreil.com>
[netdrvr r8169] DAC changes:
- Rx and Tx descriptors rings handled on 64 bit;
- enable DAC through use of CPlusCmd register (reserved bits apart, this is
similar to the 8139cp driver);
- use the higher 32 bits of addresses for the Rx/Tx buffers.
<romieu@fr.zoreil.com>
[netdrvr r8169] TX irq handler looping fix
If a few packets have been scheduled for Tx, it is possible to keep looping
in the Tx irq handler as soon as the irq for the first packet has been
received until the descriptor of the last packet has been sent (with
interrupts disabled btw).
<rddunlap@osdl.org>
[PATCH] remove magic '31' for netdev priv. alignment
[resend/rediff]
// linux-2.6.5
// remove magic number of '31' from net_device and private alignment;
<davej@redhat.com>
[CPUFREQ] ACPI support for powernow-k8.
We fall back on the legacy PSB table if the ACPI tables don't work out.
<pavel@ucw.cz>
[PATCH] Support newer revisions of broadcoms in b44.c
This adds support for newer revisions of the chips. The
b44_disable_ints at the beggining actually kills machine with newer
revision, but its removal has no ill effects.
<davej@redhat.com>
[CPUFREQ] Bump powernow-k8 revision.
<davej@redhat.com>
[CPUFREQ] As we're using ACPI in powernow-k8 now, we need ACPI to initialise
first.
<davej@redhat.com>
[CPUFREQ] Fix %x printk's in powernow-k8.
These are hex values. Prefix them all with 0x
<jgarzik@redhat.com>
[netdrvr] Add S2IO 10gige network driver.
Contributed by Leonid Grossman @ S2IO
<jgarzik@redhat.com>
[netdrvr s2io] correct an incorrect cleanup I made
<muizelaar@rogers.com>
[PATCH] tc35815 cleanup
<daniel.ritz@gmx.ch>
[PATCH] netdev_priv for xirc2ps_cs, nmclan_cs
s/dev->priv/netdev_priv(dev)/ for xirc2ps_cs.c and nmclan_cs.c
xircom one is tested. against 2.6.4-bk
<jgarzik@redhat.com>
[net/fc iph5526] s/rx_dropped/tx_dropped/ in TX routines
Spotted by Denis Valesko(sp?).
Maybe one day we'll either kill this driver, or someone will fix it
up for the current SCSI API.
<jgarzik@redhat.com>
[netdrvr 8139cp] rearrange priv struct, add cacheline-align markers
suggested by Jes Sorensen.
<jgarzik@redhat.com>
[netdrvr s2io] NAPI build fixes
<jgarzik@redhat.com>
[netdrvr 8139cp] locking cleanups
* s/spin_lock_irq/spin_lock_irqsave/ where it was simple and
easy to verify.
* release spinlock earlier in interrupt routine.
<jgarzik@redhat.com>
[NET] define HAVE_NETDEV_PRIV back-compat hook
<jgarzik@redhat.com>
[netdrvr 8139cp] minor cleanups
* update version, copyright date
* remove unportable "pci_dev->irq < 2" check in ->probe
* don't use ioremap_nocache() without a real reason
<jgarzik@redhat.com>
[netdrvr 8139cp] use netdev_priv()
<jgarzik@redhat.com>
[netdrvr 8139cp] complete 64-bit DMA (PCI DAC) support
<jgarzik@redhat.com>
[netdrvr 8139cp] better dev->close() handling, and misc related stuff
* don't synchronize_irq() in cp_stop_hw(). when necessary, do so
in the callers.
* call synchronize_irq() in cp_close(), after releasing the spinlock.
* move netif_stop_queue() and netif_carrier_off() calls inside lock
* flush last interrupt status write, in cp_stop_hw()
* add unlikely() check for dev==NULL, first thing in the irq handler
<jgarzik@redhat.com>
[netdrvr natsemi] correct DP83816 IntrHoldoff register offset
Spotted by Manfred Spraul.
<scott.feldman@intel.com>
[PATCH] Update MAINTAINERS with new e100/e1000/ixgb maintainers
Jeff, Adding John/Ganesh/Ayyappan for e100/e100/ixgb in 2.6. Keeping
myself on for e100 for a couple more 2.6.x releases.
-scott
<akpm@osdl.org>
[PATCH] com20020-isa.c warning fix
From: "Luiz Fernando N. Capitulino" <lcapitulino@prefeitura.sp.gov.br>
drivers/net/arcnet/com20020-isa.c:188: warning: unused variable `dev'
drivers/net/arcnet/com20020-isa.c:189: warning: unused variable `lp'
<akpm@osdl.org>
[PATCH] s2io.h: gcc-3.5 build fix
In file included from drivers/net/s2io.c:68:
drivers/net/s2io.h: In function `readq':
drivers/net/s2io.h:757: error: invalid lvalue in assignment
drivers/net/s2io.h:758: error: invalid lvalue in assignment
<sri@us.ibm.com>
[SCTP] Update sctp_ulpevent structure to include assoc pointer and
only the receive specific fields of sctp_sndrcvinfo.
<sri@us.ibm.com>
[SCTP] Use id to ptr translation service in lib/idr.c to assign and
validate ids of associations.
This patch avoids the use of virt_addr_valid() to validate the address
of associations passed by the user. Currently the address of an
association is used as its id. virt_addr_valid doesn't work as
expected when PAGEALLOC debugging is enabled.
<davej@redhat.com>
[CPUFREQ] Stop preempt count from going negative.
Broken failure path spotted by Dominik Brodowski.
<marcel@holtmann.org>
[Bluetooth] Allocate the BCM203x URB buffer seperately
The buffer shares cachelines with other fields of the structure. On
architectures which require synchronisation before or after doing DMA
to or from a buffer, any access to such fields sharing cachelines can
corrupt the content of the buffer. The allocation primitives guarantee
that cachelines are not shared.
Noticed by Oliver Neukum <oliver@neukum.org>
<khawar.chaudhry@amd.com>
Update amd8111 net driver.
version 3.04 for 2.4 kernel:
+ 1. Added set_mac_address routine for bonding driver support.
+ 2. Tested the driver for bonding support
+ 3. Bug fix: Fixed mismach in actual receive buffer lenth and lenth
+ indicated to the h/w.
+ 4. Modified amd8111e_rx() routine to receive all the received packets
+ in the first interrupt.
+ 5. Bug fix: Corrected rx_errors reported in get_stats() function.
version 3.05 for 2.6 kernel:
+ 1. Added NAPI support
<jejb@mulgrave.(none)>
Fix SCSI cdrom disconnection race
This fixes
http://bugme.osdl.org/show_bug.cgi?id=2400
<davej@redhat.com>
[AGPGART] Fix SiS 746 again.
Turns out that this chipset won't work in AGPv3 mode with the generic AGPv3
routines.
*somehow*, it works in AGPv3 mode with AGPv2 aperture sizing etc. Very, very
strange.
Still, until we get some docs from SiS, some support is better than none.
<davej@redhat.com>
[AGPGART] Whitespace cleanup in sis-agp
use spaces instead of (borked) tabs.
<stevef@steveft21.ltcsamba>
Fix 20 second hang on some deletes of reopened file due to semaphore
conflict with vfs_delete on i_sem
<jejb@mulgrave.(none)>
Add missing header changes from SCSI cdrom disconnection fix
<trini@kernel.crashing.org>
PPC32: Change all #if FOO to #ifdef FOO
<trini@kernel.crashing.org>
PPC32: Two minor Carolina PReP fixes.
From Hollis Blanchard <hollisb@us.ibm.com>.
<dlsy@snoqualmie.dp.intel.com>
[PATCH] PCI Hotplug: Fix interpretation of 0/1 for MRL in SHPC & PCI-E
hot-plug
This patch contains fixes for interpretation of 0/1 for MRL
to match pcihpview, bus speed definition in shpchp_hpc.c etc.
<david-b@pacbell.net>
[PATCH] USB: retry some descriptor fetches
This helps Linux handle certain enumeration problems better,
by retrying most stalled descriptor fetches; on some devices,
those indicate temporary problems. This match makes at least
one such (old) device enumerate reliably.
<david-b@pacbell.net>
[PATCH] USB: fix xsane breakage, hangs on device scan at launch
Disable a usbfs disconnect() synchronization hack, which recently
started deadlocking because this routine is now called in a different
context.
It shouldn't be needed any longer now that usbcore shuts down endpoints
as part of driver unbinding. (Except maybe on UHCI, which will have
canceled but not necessarily completed all requests.)
<rml@ximian.com>
[PATCH] USB: add missing usb entries to sysfs
We have found in the course of hacking on HAL that some information that
is in /proc/bus/usb/devices is not in sysfs. It would be nice to rely
only on sysfs, so the attached patch adds three files to usb devices in
sysfs: devnum, maxChild, and version.
This patch is actually by David Zuethen, the HAL maintainer - I told him
I would clean it up and get it upstream.
<greg@kroah.com>
[PATCH] USB: fix up previous sysfs patch to actually compile...
<davej@redhat.com>
[CPUFREQ] Quieten powernow-k7 in the built-in case.
The other cpufreq drivers are quiet in the 'dont have hardware' case, so
this should follow suit.
<davej@redhat.com>
[CPUFREQ] Don't bother checking if we need workarounds if we don't support
powernow.
<khali@linux-fr.org>
[PATCH] I2C: Refactor swap_bytes in i2c chip drivers
> Ick, no, we should be using the proper kernel call for this, swab16(),
> right? Care to redo this patch to just fix the drivers and get rid of
> our duplicating of this function.
Oh, I didn't know such a function existed, sorry.
Here's a new patch, hope you like it. Tested to work on my as99127f, btw
(w83781d driver).
Documentation update follows (well, tomorrow it does).
<ben-linux@org.rmk.(none)>
[ARM PATCH] 1807/1: S3C2410 - onboard serial
Patch from Ben Dooks
Serial driver for S3C2410 on board UARTs. Re-post of 1796/1
Includes BAST driver to register on-board 16550s.
<trini@kernel.crashing.org>
PPC32: Assign an interrupt for the VME chip on PReP MVME* boards.
From Lutz Rossa <lrossa@web.de>.
<elf@com.rmk.(none)>
[ARM PATCH] 1806/1: Adding barrier() to show_stack () for proper backtracing
Patch from Marc Singer
As suggested by Russell, we add a barrier() before returning from
stack_trace(). This was helpful when diagnosing a problem with a
kernel transition to user-space where the problem was a lack of
floating point support in the kernel. Without this change, the
backtrace reported an error.
It is possible that this change has already been made. I don't see it
in any of the applied patches that I can read.
<rmk@flint.arm.linux.org.uk>
[ARM] Fix ordering of machine class selection.
The machine class should be in alphabetical order. Swap ordering
of the recently added TI and S3C2410 entries to return it to this
ordering.
<shemminger@osdl.org>
[NET]: Use const args in eth_copy_and_sum and is_valid_ether_addr.
<James.Bottomley@steeleye.com>
[PATCH] SCSI: make DV check device capabilities
the SPI transport class DV should check the data we derive from the
inquiry to see if the device is capable of supporting wide/sync before
trying to validate the settings.
<mochel@digitalimplant.org>
[PATCH] I2C: class fixup for the ali1563 driver
<akpm@osdl.org>
[PATCH] I2C: i2c-ali1563.c section fix
ali1563_shutdown() is called from __init ali1563_probe() and hence cannot be
marked __init.
<greg@kroah.com>
USB: fix pl2303 handling of status bits.
Patch originally from Kevin Watkins <kw@cmu.edu>
<greg@kroah.com>
USB: fix empty write issue in pl2303 driver.
Patch originally from Christian Groessler <cpg@aladdin.de> but cleaned up
by me.
<hannal@us.ibm.com>
[PATCH] add class support to dsp56k.c
Here is a patch that adds sysfs class support to /drivers/char/dsp56k.c
<rmk@flint.arm.linux.org.uk>
[ARM] Move definition of the kernel module space to asm-arm
Since all machine classes define module space the same way, we
move this into the common ARM code.
<hannal@us.ibm.com>
[PATCH] Add sysfs class support to fs/coda/psdev.c
Here is a patch to add class support to psdev.c.
I have verified it compiles and works.
<marcel@holtmann.org>
[Bluetooth] Fix URB unlink race in the USB drivers
The code in hci_usb_unlink_urbs() calls usb_unlink_urb() to perform a
synchronous unlink of each pending URB. It then moves each URB to the
completed list, and then frees everything on the completed list. By doing
this, the code implicitly assumes that when usb_unlink_urb() returns the
URB will have completed and be ready to be deallocated. That's not always
true. The same applies to the BlueFRITZ! USB driver.
Patch from Alan Stern <stern@rowland.harvard.edu>
<marcel@holtmann.org>
[Bluetooth] Make use of request_firmware() for the 3Com driver
The 3Com Bluetooth PCMCIA cards need a firmware download every time they
are inserted. With request_firmware() the file BT3CPCC.bin is now loaded
directly from the userspace and the external firmware loader program is
no longer needed.
<marcel@holtmann.org>
[Bluetooth] Improve NULL pointer handling
This small patch adds more checks for NULL pointers.
<marcel@holtmann.org>
[Bluetooth] Add support for Anycom CF-300
The Anycom CF-300 compact flash card contains a new Bluetooth chip and
thus it needs some special handling for the faster UART baud rate. This
patch detects this new card and does the different initialization.
<petri.koistinen@iki.fi>
[PATCH] ia64: put URLs in documentation files inside angle-brackets
Patch by Petri T. Koistinen.
<bjorn.helgaas@hp.com>
[PATCH] ia64: ACPI IRQ cleanup (arch part)
Here's the ia64 part of the ACPI IRQ cleanup I proposed here:
http://www.gelato.unsw.edu.au/linux-ia64/0403/8979.html
After the arch bits are in, I'll post the corresponding ACPI changes.
I removed the "Found IRQ" printk now because when the ACPI
change goes in, dev->irq won't be initialized until *after*
acpi_pci_irq_enable().
<bjorn.helgaas@hp.com>
[PATCH] ia64: allow simscsi to be a module
Requiring CONFIG_HP_SIMSCSI to be either "y" or "n" breaks
allmodconfig, because simscsi ends up built-in, while scsi itself
is a module. So allow simscsi to be a module also.
<eranian@hpl.hp.com>
[PATCH] ia64: perfmon update
Here is a new perfmon patch. It is important because it
fixes the problem of the close() when the file descriptor
is shared between two related processes. The good thing
is that it simplifies a lot the cleanup of the sampling
buffer.
Here is the ChangeLog:
- fix bug in pfm_close() when the descriptor is
shared between related processed. Introduce
a pfm_flush() called for each invocation of
close(). pfm_close() only called for the last
user.
- fix pfm_restore_monitoring() to also reload
the debug registers. They could be modified
while monitoring is masked.
- fix pfm_close() to clear ctx_fl_is_sampling.
- fix a bug in pfm_handle_work() which could cause
the wrong PMD to be reset.
- converted PROTECT_CTX/UNPROTECT_CTX into
local_irq_save/restore to keep context protection
but allow IPI to proceed.
- updated pfm_syswide_force_stop() to use
local_irq_save/restore now that the context
is protected from the caller side.
- updated pfm_mck_pmc_check() to check if context is
loaded before checking for special IBR/DBR combinations.
Clearing the debug registers is not needed when the context
is not yet loaded.
- updated perfmon.h to have to correct prototype definitions
for the pfm_mod_*() functions.
- got rid of the PFM_CTX_TERMINATED state.
- cleanup the DPRINT() statements to remove
explicit output of current->pid. This is done
systematically by the macros.
- added a systctl entry (expert_mode) to bypass
read/write checks on PMC/PMD. As its name indicates
this is for experts ONLY. Must be root to toggle
/proc/sys entry.
- corrected pfm_mod_*() to check against the current task.
- removed pfm_mod_fast_read_pmds(). It is never needed.
- added pfm_mod_write_ibrs() and pfm_mod_write_dbrs().
<davidm@tiger.hpl.hp.com>
ia64: Make acpi.c compile again: there was an implicit declaration
mismatch because the external declaration isn't in the arch-
independent ACPI bits yet.
<bcollins@debian.org>
[SBP2]: Fix compile for older gcc's
<bcollins@debian.org>
[Kconfig]: eth1394 requires INET
<bcollins@debian.org>
[SBP2]: Sync revision
<marcel@holtmann.org>
[Bluetooth] Allow normal users to release the previous created TTY
In the case the RFCOMM device node can't be found, the user must be able to
release the previous created TTY.
<marcel@holtmann.org>
[Bluetooth] Fix race in RX complete routine of the USB drivers
The test of the HCI_RUNNING flags bit in the RX complete routine should
be made while holding the completion lock. Otherwise there can be a race
on SMP systems in which RX complete finds the bit is set and on another
processor the close routine clears the bit, grabs and releases the lock
and then unlinks all the active URB's. Then the first processor acquires
the lock and resubmits the URB.
Patch from Alan Stern <stern@rowland.harvard.edu>
<rvinson@linuxbox.(none)>
Updating Force PCore to 2.6
<stern@rowland.harvard.edu>
[PATCH] USB: Updated unusual_dev.h entry
On Thu, 8 Apr 2004, Marcin Juszkiewicz wrote:
> usb-storage: This device (054c,0025,0100 S 04 P 01) has unneeded SubClass
and
> Protocol entries in unusual_devs.h
Thank you for sending this in.
<marcel@holtmann.org>
[PATCH] Add sysfs class support for CAPI
here is a patch that adds class support to the ISDN CAPI module. Without
it udev won't create the /dev/capi20 device node.
<hannal@us.ibm.com>
[PATCH] fix sysfs class support to fs/coda/psdev.c
--On Friday, April 09, 2004 12:02:19 AM +0200 Marcel Holtmann
<marcel@holtmann.org> wrote:
>> +static struct class_simple coda_psdev_class;
>
> I think coda_psdev_class must be a pointer.
>
> Regards
>
> Marcel
Doh! I tested on one system and fixed this there. Then accidentally mailed
out the
original. Sorry about that. Here is a patch to fix it:
<hannal@us.ibm.com>
[PATCH] Fix for patch to add class support to stallion.c
Oops. Realized I had a / in the file name in this patch too.
Please apply to correct it:
<hannal@us.ibm.com>
[PATCH] Fix class support to istallion.c
Realized I put a / in the filename of this device too.
Here is the fix:
<khali@linux-fr.org>
[PATCH] I2C: Enable changing fan_divs in lm80 driver
For some reason the original lm80 driver in 2.6 cannot set fan_divs
(while the 2.4 driver could). This patch brings support back. It was
lightly tested by one user.
This patch also suggests some code cleanups (fan code refactoring). I'll
send a different patch later for these.
<aurelien@aurel32.net>
[PATCH] I2C: New chip driver: pcf8591
Please find below a patch against kernel 2.6.5-rc2-mm4 to add the pcf8591
driver (a 8-bit A/D and D/A converter). I have ported it from the 2.4
version, and it includes some fixes, improvements and simplifications.
It has been reviewed by Jean Delvare on IRC.
Please also note that the patch also fixes a missing space in
drivers/i2c/chips/Kconfig, introduced by the previous patch I sent you
concerning the pcf8574.
<greg@kroah.com>
[PATCH] I2C: minor bugfixes for the pcf8591.c driver and formatting cleanups.
<greg@kroah.com>
[PATCH] I2C: clean up out of order bus Makefile and Kconfig entries.
<jgarzik@redhat.com>
[netdrvr tulip] remove ChangeLog file
It was out of date. BitKeeper logs are more recent and more accurate.
<tmattox@engr.uky.edu>
[netdrvr tulip] add MII support for Comet chips
Add MII support for ADMtek Comet (Linksys LNE100TX v4.1 & others):
* tulip_core.c: add HAS_MII flag to COMET entry in tulip_tbl[]
* timer.c (comet_timer): add missing call to tulip_check_duplex()
and replace inl() calls with tulip_mdio_read() calls
Changes modeled after Donald Becker's tulip.c:v0.98 1/8/2004
<rmk@flint.arm.linux.org.uk>
[SERIAL] Unuse old SERIAL_IO_xxx macros.
8250.c should be using the replacement UPIO_xxx macros instead.
<rmk@flint.arm.linux.org.uk>
[SERIAL] Remove some dead declarations.
<rmk@flint.arm.linux.org.uk>
[SERIAL] Correct minor debugging format string error.
<rmk@flint.arm.linux.org.uk>
[SERIAL] Don't try to free resources we didn't request.
<rmk@flint.arm.linux.org.uk>
[SERIAL] Pass device pointer through to tty_register_device.
This allows drivers to pass their struct device through to
tty_register_device, which in turn allows sysfs to show which
device and driver owns the UART.
<rmk@flint.arm.linux.org.uk>
[SERIAL] Pass sa11x0 struct device through to tty_register_device.
<rmk@flint.arm.linux.org.uk>
[SERIAL] Remove UPF_HUP_NOTIFY; this is no longer used.
<davem@nuts.davemloft.net>
[IPV6]: In ndisc_netdev_event, handle NETDEV_DOWN.
Based upon patches and commentary from Thomas Spatzier,
Stephen Hemminger, and Andi Kleen.
<agruen@suse.de>
[IPSEC]: Support draft-ietf-ipsec-udp-encaps-00/01, some ipec impls need it.
<davem@nuts.davemloft.net>
[ISDN]: Add missing IPPP_FILTER entry to Kconfig.
<kkeil@suse.de>
[ISDN]: Fix kernel PPP/IPPP active/passiv filter code.
<mashirle@us.ibm.com>
[IPV6]: Add missing MIB counter increments.
<weeve@gentoo.org>
[SOUND]: Proper deps for SND_BIT32_EMUL.
<weeve@gentoo.org>
[SOUND]: Add amd7930 to sndmagic.h
<rddunlap@osdl.org>
[NET]: Kill __FUNCTION__ string literal concatenation.
From Tony Breeds <tony@bakeyournoodle.com>
<laforge@netfilter.org>
[NETFILTER]: Add more debug info to TFTP helper.
From Vineet Mehta <extreme@zayanionline.com>
<chas@cmf.nrl.navy.mil>
[ATM]: get atm_guess_pdu2truesize() right
<chas@cmf.nrl.navy.mil>
[ATM]: [nicstar] using dev_alloc_skb() (reported by Johnston,
<jt@bougret.hpl.hp.com>
[IRDA]: Move IRDA device headers to more appropriate place.
<yoshfuji@linux-ipv6.org>
[IPV6]: Mark MLDv2 report as known.
Mark MLDv2 Report as known ICMPv6 type.
(We just ignore MLDv2 Reports on hosts as the spec says.)
<shemminger@osdl.org>
[NET]: Add random_ether_addr to ether_device.h
<shemminger@osdl.org>
[NET]: Use random address in dummy driver.
<shemminger@osdl.org>
[NET]: Use random address in usb gadget driver.
<shemminger@osdl.org>
[NET]: Use random address in usbnet driver.
<akpm@osdl.org>
[SCTP]: Fix printk warnings.
<akpm@osdl.org>
[ATM]: Fix printk warnings in ambassador driver.
<akpm@osdl.org>
[IRDA]: Fix warnings in sir_dev.c
<akpm@osdl.org>
[IRDA]: Fix 32-bit pointer bug in donauboe.c
<akpm@osdl.org>
[NET]: Fix printk warnings in wireless/strip.c
<akpm@osdl.org>
[NET]: Fix printk warnings in strip driver.
<bjorn.helgaas@com.rmk.(none)>
[SERIAL] HCDP IRQ fixup
Some pre-production firmware has incorrect GSI values in the
HCDP, which tells us where the serial console port is, so we
have to do the auto-IRQ thing after all.
<rmk@flint.arm.linux.org.uk>
[SERIAL] Add extra suspend/resume functionality to serial_cs.
This calls into the 8250 driver so that the serial port settings can
be saved and restored over a suspend/resume cycle. Previous kernels
have assumed that the port will be re-opened after such an event,
which may not be the case.
<jejb@mulgrave.(none)>
Convert sd to kref and fix sd_open/sd_remove race
We actually fix this race by mediating the object release/get race
(i.e. we destroy the scsi_disk object when its reference count goes
1->0, we use a semaphore to prevent something else trying to get a
reference after or during this).
The open/remove race is actually irrelevant because even if we open an
already removed object, all that will happen is that we get a
reference to a device that always returns EIO.
<jejb@mulgrave.(none)>
Convert sr to a kref and fix sr_open/sr_remove race
We actually fix this race by mediating the object release/get race
(i.e. we destroy the scsi_cd object when its reference count goes
1->0, we use a semaphore to prevent something else trying to get a
reference after or during this).
The open/remove race is actually irrelevant because even if we open an
already removed object, all that will happen is that we get a
reference to a device that always returns EIO.
<rmk@flint.arm.linux.org.uk>
[ARM] Reduce the number of unnecessary includes in decompressor.
This appears to work around the gcc problem where gcc adds extra
.globl directives into the assembly for misc.s for its internal
libgcc functions.
<rmk@flint.arm.linux.org.uk>
[PCMCIA] Fix resource handling for memory probe
Add claim_region and free_region to claim/free resource regions.
This ensures that we only attempt to probe memory regions which
are directly related to the socket in question, rather than any
memory region we happen to be able to request.
This also fixes a memory leak where we don't kfree the resources
we previously allocated.
<rmk@flint.arm.linux.org.uk>
[PCMCIA] Remove racy check_io_resource()
Convert do_io_probe() to use claim/free_region() rather than the
racy check_io_resource(). Remove check_io_resource() and the now
unused resource_parent() functions.
<rmk@flint.arm.linux.org.uk>
[PCMCIA] Use kernel resource core as primary resource allocator.
Turn the resource management on its head. Rather than using PCMCIA's
resource database as the primary object to allocate resources, use
Linux's standard resource allocation instead.
When we have a socket on a PCI bus, we always use the PCI resource
allocation functions rather than the kernels core resource allocation,
so that we can take account of any bridges.
<akpm@osdl.org>
[NET]: Fix memset args in sk_mca, noticed by Jean Delvare
<khali@linux-fr.org>
<rmk@flint.arm.linux.org.uk>
[ARM] Drop -traditional from assembler command line in decompressor.
<rmk@flint.arm.linux.org.uk>
[PCMCIA] Re-export pci_bus_alloc_resource() from PCI code.
Since PCMCIA now uses this, re-export it.
<rmk@flint.arm.linux.org.uk>
[PCMCIA] Fix warning about truncated integer.
<rmk@flint.arm.linux.org.uk>
[ARM] Fix spacing in arch/arm/boot/Makefile and arch/arm/mm/Kconfig.
<trond.myklebust@fys.uio.no>
NFSv2/v3/v4: Prepare the nfs_page struct to allow for short reads.
<rmk@flint.arm.linux.org.uk>
[SERIAL] Add support for TI16C750 hardware flow control.
<trond.myklebust@fys.uio.no>
NFSv2/v3/v4: Add support for asynchronous reads even if
rsize<PAGE_CACHE_SIZE.
<trond.myklebust@fys.uio.no>
NFSv2/v3/v4: Add support for asynchronous writes even if
wsize<PAGE_CACHE_SIZE.
<trond.myklebust@fys.uio.no>
NFSv2/v3/v4: When pdflush() is trying to free up memory by calling our
writepages() method, throttle all writes to that mountpoint.
<trond.myklebust@fys.uio.no>
RPC,NFS: remove instances of tests for waitqueue_active(). Those can be racy.
RPC: remove unnecessary support for sk->sk_sleep on those sockets that are
owned by the RPC client.
<trond.myklebust@fys.uio.no>
RPC: add fair queueing to the RPC scheduler.
If a wait queue is defined as a "priority queue" then requests are dequeued
in blocks of 16 in order to work well with write gathering + readahead on the
server.
There are 3 levels of priority. The high priority tasks get scheduled 16
times
for each time the default level gets scheduled. The lowest level gets
scheduled once every 4 times the normal level gets scheduled.
Original patch contributed by Shantanu Goel.
<trond.myklebust@fys.uio.no>
RPC: Close some potential scheduler races in rpciod.
<trond.myklebust@fys.uio.no>
NFSv2/v3/v4: Deal with the case where the server reads/writes fewer
bytes than we requested due to resource limitations etc.
<trond.myklebust@fys.uio.no>
RPCSEC_GSS: Fix integrity checksum bugs. Need to take into account the
starting offset when calculating the page length.
<trond.myklebust@fys.uio.no>
NFSv2/v3/v4: Fix a slowdown of O_SYNC and O_DIRECT writes that resulted
from over-aggressive attribute cache revalidation.
<trond.myklebust@fys.uio.no>
NFSROOT: clean up the parser routines (patch by Fabian Frederic)
<trond.myklebust@fys.uio.no>
RPCSEC_GSS: Fix RPC padding in two instances of RPCSEC_GSS code.
RPC: Clean up XDR encoding of opaque data.
<trond.myklebust@fys.uio.no>
NFSv4: attribute bitmap values need to be unsigned long integers.
<trond.myklebust@fys.uio.no>
NFSv4: use the (more efficient) NFSv2/v3-like XDR scheme for generating
ACCESS RPC calls.
<trond.myklebust@fys.uio.no>
NFSv4: use the (more efficient) NFSv2/v3-like XDR scheme for generating
GETATTR RPC calls.
<trond.myklebust@fys.uio.no>
NFSv4: Remove unnecessary post