Summary of changes from v2.6.9-rc1 to v2.6.9-rc2
============================================
<perex@suse.cz>
ALSA CVS update - Clemens Ladisch <clemens@ladisch.de>
ALSA sequencer,ALSA<-OSS sequencer
export snd_seq_set_queue_tempo() for OSS to prevent calling
snd_seq_kernel_client_ctl() (using copy_from_user()) in interrupt
context
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
ATIIXP driver
- continue to probe other codecs even if a codec returns error
(instead of breaking the probing).
this will fix some cases with both AC97 and MC97 codecs.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Documentation,ICE1712 driver,ICE1724 driver
- fixed the description of model module parameters for ice1712 and ice1724
drivers.
- added the support of VT1720-based mobo.
(still experimental and supporting AC97 only)
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Memalloc module
- added ifdef CONFIG_PCI around the enable module option to avoid the compile
warnings without PCI support.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
AC97 Codec Core
- added the global mutex for ac97_t (ad18xx mutex is removed).
used to protect paging and AD18xx multi-codecs.
- set PAGE_INT register explicitly before accessing (for STAC9758).
- moved ALC650 revision check to patch_alc650().
- support stereo Mic playback.
- moved STAC9708 quirk to patch_stac9708().
- don't clear PC_BEEP high bits (ac97 2.3 sets frequency there).
- avoid the unnecessary RESET-waiting for audio/modem codec.
- fixed the evaluation of modem codec to call mpatch callback properly.
- determine the SPDIF rate in the build path.
- added suffix argument to snd_ac97_rename|remove|swap_ctl().
- added snd_ac97_rename_vol_ctl().
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Digigram VX core
fixed sleep while atomic in the trigger callback.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
PARISC Harmony driver
- fixed the buffer handling without dma_alloc_coherent support.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Digigram VX core
fixed the compile warnings due to the last change.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Digigram VX core
added 'Clock Mode' control to choose the clock source.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
ICE1724 driver
avoid to change the AC97 rate registers. this seems conflicting
with the rate conversion on VT172x.
<perex@suse.cz>
ALSA CVS update - Clemens Ladisch <clemens@ladisch.de>
Wavefront drivers
fix possible buffer overflow in wavefront_download_firmware()
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
VIA82xx driver
added the DXS entry for Mitac/Vobis/Yakumo laptop.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
AC97 Codec Core
added ac97_can_spdif() for checking the SPDIF support.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
VIA82xx driver
- use snd_pcm_limit_hw_rates() and removed redundant codes.
- fixed the rate constraints when 'IEC958 Output Switch' is on.
- check the SPDIF support on AC97 and don't build IEC958 stuffs if not available.
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
AC97 Codec Core
Signed-off-by: Kevin Mack <kevmack@accesscomm.ca>
For Gateway M675 notebook - this will direct mixer
output to speaker, headphone and line-out instead
of just the front(DAC-A) signal.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
PARISC Harmony driver
fixed typos.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
AC97 Codec Core
Avoid warning message during codec probing in case SKIP_AUDIO flag is not set.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
AC97 Codec Core
- Added the single mixer control with AC97 2.3 paging.
- Handle the paging for some ALC655/658 registers.
- Added the experimental support for ALC850.
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ALSA Core
Fixed warnings for pci PM callbacks when not CONFIG_PCI
<perex@suse.cz>
ALSA 1.0.5
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
AC97 Codec Core
Fixed mutex deadlocks.
<perex@suse.cz>
ALSA CVS update
Documentation
Added snd-fm801 tuner parameter description
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
ICE1724 driver
SPDIF output fixes
- Fixed the encoding of SPDIF status bits in the consumer mode.
- Change the SPDIF status bits according to the current sample rate.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ATIIXP driver,VIA82xx driver
Added the missing RESUME info bits to pcm.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Intel8x0 driver
Added the PCI ID for nVidia CK8.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
PCM Midlevel,ALSA<-OSS emulation
Clean up and optimization of PCM format-specific functions.
- Use array indexing instead of huge swith/case.
- Removed superfluous handling of floats.
- Use memcpy for silencing to simplify the codes.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
USB generic driver
Quattro USB: handle the different endianness of playback and recording sample data
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
Opti9xx drivers
Fixed spin deadlocks.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
OPL4
add newline at end of file
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
OSS sequencer emulation
Use separate functions for some ioctls to reduce stack usage.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
CS46xx driver,MIXART driver
reduce stack usage
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
PCM Midlevel
Removed the obsoleted init for boot parameters.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ES1968 driver
Fix the crash at unloading the module due to the shared interrupt
with other devices.
Signed-off-by: Karsten Wiese <annabellesgarden@yahoo.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Generic drivers
Do the buffer allocation in hw_params callback instead of open callback.
This will prevent to use the allocation of excessive size.
Pre-allocation is called with the default size 0, ie. no buffer will be
pre-allocated as default.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
PCM Midlevel,ES1968 driver,EMU10K1/EMU10K2 driver,KORG1212 driver
Trident driver
Clean up the buffer management in the PCM runtime record.
The buffer-allocation record is hold in runtime instance, so that
it can be checked more cleanly.
dma_private is removed from runtime (it's used for SG-buffers).
The macro snd_pcm_substream_sgbuf() should be used instead of direct
access to the pointer, to retrieve the sgbuf struct from the PCM
substream instance.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Intel8x0 driver
Fixed the calculation of the current DMA position on some sloppy devices.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
VIA82xx driver
Fixed the calculation of the current DMA position at the period boundary.
In some cases, DMA residue returns the value 0 during the transition
at the DMA boundary. The patch handles it as the position 0.
This may prevent the flood of 'invalid last pointer' debug messages
on some devices.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
USB generic driver
handle devices that allow setting but not reading sample rate
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
PCM Midlevel,ALSA Core,RME32 driver,RME96 driver,NM256 driver
- Fix the mmap via io_remap_page_range() on nm256, rme32 and rme96.
Added SNDRV_PCM_INFO_MMAP_IOMEM to handle this case.
- Clean up the indirect accessing on RME32/RME96 drivers.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
EMU10K1/EMU10K2 driver
Merge EFX playback and capture streams to the single device (hw:0,2).
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
au88x0 driver
- Fixed the wrong pointer cast on 64bit architectures.
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
PCM Midlevel,ALSA<-OSS emulation,CMIPCI driver
reduce stack usage
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
CMIPCI driver
don't sleep in prepare callback
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
PCM Midlevel
Each of snd_pcm_hw_refine_old_user() and snd_pcm_hw_params_old_user()
consume 856 bytes of stack and can invoke deep calls via the page allocator.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
USB generic driver
new functions snd_usbmidi_input_stop() and snd_usbmidi_input_start()
needed by snd-usb-usx2y to be able to use usb_set_interface()
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
ALSA sequencer,Instrument layer,ISA,GUS drivers
Clean up Makefiles for the sequencer stuff using reverse selections.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<hch@lst.de>
[PATCH] qla1280: add ISP1040 register definitions
The old 1020/1040 has some registers where the newer controlers only
have reserved space, add that to qla1280.h
Signed-off-by: Jes Sorensen <jes@wildopensource.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] qla1280: add IS_ISP* helpers
The code is already messy due to the explicit pci id checks for
1280 vs 1x160, so add some nice helpers for that.
Signed-off-by: Jes Sorensen <jes@wildopensource.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] qla1280: cleanup firmware loading, add pio-based loading
The ISP1040 needs to load firmware by PIO, and while we're at it clean
the convoluted mess of firmware loading up by splitting it into
managable subroutines.
Signed-off-by: Jes Sorensen <jes@wildopensource.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] qla1280: cleanup qla1280_nvram_config
qla1280_nvram_config is a huge mess. Split it up into managable
subroutines and add suport for the ISP1040 to it. Add missing call
to set the age limit also on 1280/1x160.
Signed-off-by: Jes Sorensen <jes@wildopensource.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] qla1280: cleanup qla1280_initialize_adapter
no function changes, just some more gotos and less nested ifs to make
the code readable.
Signed-off-by: Jes Sorensen <jes@wildopensource.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] qla1280: update changelog and version
Signed-off-by: Jes Sorensen <jes@wildopensource.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
Add dma_declare_coherent_memory() API
This adds the description and a null prototype.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
Add memory region bitmap implementations
These APIs deal with bitmaps representing contiguous
memory regions. The idea is to set, free and find
a contiguous area.
For ease of implementation (as well as to conform
to the standard requirements), the bitmaps always
return n aligned n length regions. The implementation
is also limited to BITS_PER_LONG contiguous regions.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
Add vmalloc alignment constraints
vmalloc is used by ioremap() to get regions for
remapping I/O space. To feed these regions back
into a __get_free_pages() type memory allocator,
they are expected to have more alignment than
get_vm_area() proves. So add additional alignment
constraints for VM_IOREMAP.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
Add x86 implementation of dma_declare_coherent_memory
This actually implements the API (all except for
DMA_MEMORY_INCLUDES_CHILDREN).
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
Convert NCR_Q720 to use dma_declare_coherent_memory
This board makes an ideal example for using the API
since it consists of 4 SCSI I/O processors and a
0.5-2MB block of memory on a single MCA card.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<perex@suse.cz>
This patch introduces a kcalloc() in the kernel that is used to
replace the ALSA subsystem-specific snd_kcalloc() and snd_magic_kcalloc().
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
<perex@suse.cz>
ALSA CVS update
AC97 Codec Core
Fixed the detection of STAC9708/11 surround control.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
EMU10K1/EMU10K2 driver
Fix Audigy + FX8010 capture (hw:x,2)
This patch fixes capture problems from hw:x,2 on Audigy. It is same as
previous, because it can be applied cleanly against CVS (I tested
version from 23.06.2004) and hope it is still true for current CVS.
I tested 4 channel recrding and it was OK.
hw:x,2 records outputs from FX8010 (not FX buses)
Using 'EFX voices mask' you can set channels what you want record.
use alsactl store to store config
edit this config (set true for needed channel for 'EFX voices mask'
control) - I recorded channels 8,9,14,15 (front and rear output).
use alsactl restore to restore config
Looks like channel count must be power of 2 (1, 2, 4, 8, ...).
Signed-off-by: Peter Zubaj <pzad@pobox.sk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
EMU10K1/EMU10K2 driver
Audigy 2 ZS - side support
Added the support of side speakers on Audigy 2 ZS.
TODO - detection of audigy 2 zs. Now it will add side controls to
mixer for audigy 2 to. Maybe left or right slider can control volume
of back center on audigy 2 too.
Signed-off-by: Peter Zubaj <pzad@pobox.sk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ICE1712 driver,ICE1724 driver
Fixes for VT1720/VT1724
- Fixed the volume update on aureon.
- Removed the bogus master volume from aureon.
- Fixed the wrong number of ADCS (not used, though).
- Don't access GPIO high bits on VT1720.
- Fixed the buffer byte alignment for SPDIF and independen PCMs.
- Proper rate constraints according to the I2S/AC-link connection.
- Clean up the private data for PCM callbacks.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Control Midlevel,ALSA Core,PCM Midlevel,RawMidi Midlevel,Timer Midlevel
IOCTL32 emulation,ALSA<-OSS emulation,ALSA sequencer,Instrument layer
ALSA<-OSS sequencer,OPL3,EMU8000 driver,AC97 Codec Core,au88x0 driver
EMU10K1/EMU10K2 driver,ICE1712 driver,ICE1724 driver,Trident driver
Synth,Common EMU synth
Removal of snd_kcalloc()
This patch removes snd_kcalloc() from the kernel and updates callers to use
the new generic kcalloc().
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Control Midlevel,ALSA Core,HWDEP Midlevel,PCM Midlevel,RawMidi Midlevel
Timer Midlevel,IOCTL32 emulation,ALSA<-OSS emulation,ALSA sequencer
Removal and replacement of magic memory allocators and casts (core part)
This patch replaces snd_magic_kmalloc(), snd_magic_kcallc() and snd_magic_kfree()
with kmalloc(), kcalloc() and kfree(), respectively.
The cast via snd_magic_cast() is replaced with the standard cast, too.
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ALS4000 driver,ATIIXP driver,AZT3328 driver,BT87x driver,CMIPCI driver
CS4281 driver,ENS1370/1+ driver,ES1938 driver,ES1968 driver
FM801 driver,Intel8x0 driver,Intel8x0-modem driver,Maestro3 driver
RME32 driver,RME96 driver,SonicVibes driver,VIA82xx driver
AC97 Codec Core,AK4531 codec,ALI5451 driver,au88x0 driver,CS46xx driver
EMU10K1/EMU10K2 driver,ICE1712 driver,ICE1724 driver,KORG1212 driver
MIXART driver,NM256 driver,RME HDSP driver,RME9652 driver
Trident driver,Digigram VX222 driver,YMFPCI driver
Removal and replacement of magic memory allocators and casts (pci part)
This patch replaces snd_magic_kmalloc(), snd_magic_kcallc() and snd_magic_kfree()
with kmalloc(), kcalloc() and kfree(), respectively.
The cast via snd_magic_cast() is replaced with the standard cast, too.
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ES1688 driver,ALS100 driver,AZT2320 driver,CMI8330 driver,DT019x driver
ES18xx driver,OPL3SA2 driver,Sound Scape driver,AD1816A driver
AD1848 driver,CS4231 driver,CS4236+ driver,GUS Library,Opti9xx drivers
EMU8000 driver,ES968 driver,SB16/AWE driver,SB8 driver,SB drivers
Wavefront drivers
Removal and replacement of magic memory allocators and casts (isa part)
This patch replaces snd_magic_kmalloc(), snd_magic_kcallc() and snd_magic_kfree()
with kmalloc(), kcalloc() and kfree(), respectively.
The cast via snd_magic_cast() is replaced with the standard cast, too.
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Documentation,SA11xx UDA1341 driver,Generic drivers,MPU401 UART,OPL3
OPL4,Digigram VX core,I2C cs8427,I2C lib core,I2C tea6330t,L3 drivers
AK4117 receiver,Serial BUS drivers,PARISC Harmony driver
Sound Core PDAudioCF driver,Digigram VX Pocket driver,PPC AWACS driver
PPC Burgundy driver,PPC DACA driver,PPC PMAC driver,PPC Tumbler driver
SPARC AMD7930 driver,SPARC cs4231 driver,Common EMU synth
USB generic driver
Removal and replacement of magic memory allocators and casts (other parts)
This patch replaces snd_magic_kmalloc(), snd_magic_kcallc() and snd_magic_kfree()
with kmalloc(), kcalloc() and kfree(), respectively.
The cast via snd_magic_cast() is replaced with the standard cast, too.
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
AC97 Codec Core
Fixed STAC9758 output jack selection control
- fixed unbalnaced mutex.
- use ac97_update_bits_page() instead of snd_ac97_update_bits().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
CMIPCI driver
Fix the i/o port range of gameport on cmipci
Gameport use only 1 I/O port not 8.
Attached patch fix gameport on CMIPCI soundcards.
Signed-off-by: Artur Frysiak <wiget@pld-linux.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Documentation,PCM Midlevel,RawMidi Midlevel,ALSA Core,Timer Midlevel
ALSA<-OSS emulation,ALSA sequencer,Instrument layer,ALSA<-OSS sequencer
Clean up of obsolete MODULE_* stuff (core part)
Removed MODULE_CLASSES() and MODULE_SYNTAX().
Replaced MODULE_DEVICES() with MODULE_SUPPORTED_DEVICE()
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ALS100 driver,AZT2320 driver,CMI8330 driver,DT019x driver,ES18xx driver
OPL3SA2 driver,Sound Galaxy driver,Sound Scape driver,AD1816A driver
AD1848 driver,CS4231 driver,CS4236+ driver,ES1688 driver
GUS Classic driver,GUS Extreme driver,GUS MAX driver
AMD InterWave driver,Opti9xx drivers,EMU8000 driver,ES968 driver
SB16/AWE driver,SB8 driver,SB drivers,Wavefront drivers
Clean up of obsolete MODULE_* stuff (isa part)
Removed MODULE_CLASSES() and MODULE_SYNTAX().
Replaced MODULE_DEVICES() with MODULE_SUPPORTED_DEVICE()
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ALS4000 driver,ATIIXP driver,AZT3328 driver,BT87x driver,CMIPCI driver
CS4281 driver,ENS1370/1+ driver,ES1938 driver,ES1968 driver
FM801 driver,Intel8x0 driver,Intel8x0-modem driver,Maestro3 driver
RME32 driver,RME96 driver,SonicVibes driver,VIA82xx driver
AC97 Codec Core,ALI5451 driver,au88x0 driver,CS46xx driver
EMU10K1/EMU10K2 driver,ICE1712 driver,ICE1724 driver,KORG1212 driver
MIXART driver,NM256 driver,RME HDSP driver,RME9652 driver
Trident driver,Digigram VX222 driver,YMFPCI driver
Clean up of obsolete MODULE_* stuff (pci part)
Removed MODULE_CLASSES() and MODULE_SYNTAX().
Replaced MODULE_DEVICES() with MODULE_SUPPORTED_DEVICE()
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
SA11xx UDA1341 driver,Generic drivers,MPU401 UART,OPL3,OPL4,L3 drivers
PARISC Harmony driver,Sound Core PDAudioCF driver
Digigram VX Pocket driver,PPC PowerMac driver,SPARC AMD7930 driver
SPARC cs4231 driver,USB generic driver
Clean up of obsolete MODULE_* stuff (other part)
Removed MODULE_CLASSES() and MODULE_SYNTAX().
Replaced MODULE_DEVICES() with MODULE_SUPPORTED_DEVICE()
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
NM256 driver
Added AC97 CD register to the list of allowed registeres.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ALSA<-OSS sequencer
Suppress the error message when no device is found.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
AC97 Codec Core
Check the validity of registers before creating controls.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
CS46xx driver,EMU10K1/EMU10K2 driver,PCM Midlevel
Clean up of indirect PCM data transfer with helper functions.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
RME32 driver
Added the experimental fullduplex support.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
PCM Midlevel
snd_pcm_timer_resolution_change():
Right, that function doesn't work well for 44100/1024 in 32 bits -- it
ends up trying to calculate 1e7 * 1024 / 441 and having to divide
both numerator and denominator by 4 (thus losing the rather crucial 1
at the end of 441) before it can do the calculation without overflow.
Attached is a patch against 1.0.5a that gets better results in this
instance, by leaving the denominator alone and instead doubling the
result back up by the same number of times as the multiplier had to
be halved by.
Signed-off-by: Chris Cannam <cannam@all-day-breakfast.com>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
Instrument layer
LD .tmp_vmlinux1
sound/built-in.o(.text+0xfb4ae): In function nd_gus_synth_new_device':
: undefined reference to nd_seq_iwffff_init'
make: *** [.tmp_vmlinux1] Error 1
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
EMU10K1/EMU10K2 driver
Clean up the invalid (commented out) lines for emu10k1x.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
PCM Midlevel,RME32 driver
- Fixed the int types in indirect_pcm helpers.
- Added the missing initialization of fullduplex mode on rme32.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ES1938 driver
Playing Quake1 (quakeforge-flavor with ALSA-driver) I hear cracks and blibs.
Other apps (xine, mpg321) are fine. The OSS driver in 2.6.7 produces no
cracks (but reverses stereo BTW).
I fixed it, i.e. it works for me:
*No swapping of stereo channels
*no cracks
Signed-off-by: <maps4711@gmx.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
au88x0 driver
- asXtalkGainsAllChan -> vortex_asXtalkGainsAllChan
- fixed extern/static problem
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<jejb@raven.il.steeleye.com>
Fix incorrect prototype in the dma_declare_coherent_memory API
dma_mark_declared_memory_occupied() wasn't declared static inline in the NULL (default)
implementation leading to compile failures.
<jejb@raven.il.steeleye.com>
Fix bug in __get_vm_area() alignment code
If we are still above the vma start address on the last vma, we can use addr even if it is
inside the vma (i.e. addr < vma->addr + vma->size). Fix this by aligning addr past the
end of the vma in this case
<akpm@osdl.org>
[PATCH] Fix sparc compile error in dma-mapping.h
William Lee Irwin III <wli@holomorphy.com> wrote:
>
> SPLIT include/linux/autoconf.h -> include/config/*
> CHK include/linux/compile.h
> UPD include/linux/compile.h
> In file included from include/asm/sbus.h:10,
> from arch/sparc64/kernel/auxio.c:15:
It needs err.h.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@raven.il.steeleye.com>
Fix region sizing problem in dma_mark_declared_memory_occupied()
The current code reserves too few pages if addr isn't
page aligned and size just spans onto the last page.
Fix by increasing size by the addr misalignment amount.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@raven.il.steeleye.com>
dma_alloc_coherent() still needs to support a NULL device
Fix the part of the on-chip memory API that broke this.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<rddunlap@osdl.org>
[PATCH] fix JAZZ_ESP driver config depends
Use correct config symbol name for MACH_JAZZ in JAZZ_ESP driver config.
Acked by Ralf.
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<markh@osdl.org>
[PATCH] aacraid reset handler
This restores a fix to the aacraid reset handler. It makes sure that
there are no active commands on any attached device before exiting with
SUCCESS.
Signed-off-by: Mark Haverkamp <markh@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] fix scsi_remove_device locking
The following patch fixes an oops I was seeing on a machine with
misconfigured scsi cables, but could feasibly happen in other paths.
The oops was occurring because scsi_remove_device was getting
called for a device before scsi_add_device had fully completed.
This resulted in sysfs_remove_link being called with a NULL dentry.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
MPT Fusion driver 3.01.10 update
From: "Moore, Eric Dean" <Emoore@lsil.com>
This driver incorporates the patches from Christoph Hellwig
and Masao Fukuchi.
Changelog of this release:
* Patch provided by Masao Fukuchi [fukuchi.masao@jp.fujitsu.com]
- mptctl updates for hot plug
* Patch provided by Christoph Hellwig [hch@infradead.org]
- mptlan updates for hot plug
- remove CONFIG_LBD ifdefs from fusion { mptscsih.c}
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] mptbase.c warning fix
drivers/message/fusion/mptbase.c: In function `GetIocFacts':
drivers/message/fusion/mptbase.c:2420: warning: int format, different type arg (arg 4)
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<g.liakhovetski@gmx.de>
[PATCH] tmscsim: kernel bugzilla bug #2139
> Short: The attached patch fixes the bug-report #2139 from kernel bugzilla.
I wasn't quite convenient with the previous version of the patch, but I
just wanted to get it working at first and get some comments as to whether
the approach (put a workaround vs. blacklisting) is at all valid. Since no
objections arrived, I guess, nobody minds this small trick. So, I am
enclosing a reworked patch, which does essentially the same, but has some
more careful checking, and overall looks saner, than the previous one.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<bunk@fs.tum.de>
[PATCH] update contact address for SCSI megaraid.c
If you send an email to linux-megaraid-devel@dell.com, you get an
automated response to send the mail to linux-scsi@vger.kernel.org
instead.
The patch below updates megaraid.c accordingly.
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] warning fix to include/scsi/scsi_device.h
From: Mika Kukkonen <mika@osdl.org>
CC [M] drivers/block/cciss.o
In file included from drivers/scsi/scsi.h:27,
from drivers/block/cciss_scsi.c:31,
from drivers/block/cciss.c:188:
include/scsi/scsi_device.h:191: warning: `inline' is not at beginning of declaration
Another case of reordering the 'inline' and function return value.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<bunk@fs.tum.de>
[PATCH] SCSI ips: remove inlines
Trying to compile drivers/scsi/ips.c with gcc 3.4 and
# define inline __inline__ __attribute__((always_inline))
results in the following error:
<-- snip -->
...
CC drivers/scsi/ips.o
drivers/scsi/ips.c: In function `ips_eh_abort':
drivers/scsi/ips.c:490: sorry, unimplemented: inlining failed in call to
'ips_removeq_copp': function body not available
drivers/scsi/ips.c:843: sorry, unimplemented: called from here
drivers/scsi/ips.c:488: sorry, unimplemented: inlining failed in call to
'ips_removeq_wait': function body not available
drivers/scsi/ips.c:847: sorry, unimplemented: called from here
make[2]: *** [drivers/scsi/ips.o] Error 1
<-- snip -->
The patch below removes all inlines from ips.c. As a side effect, this
showed that 3 formerly inlined functions are completely unused which are
also removed in the patch.
An alternative approach to removing the inlines would be to keep all
inlines that are _really_ required and reorder the functions in the file
accordingly.
diffstat output:
drivers/scsi/ips.c | 130 ++++++---------------------------------------
1 files changed, 19 insertions(+), 111 deletions(-)
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<dsaxena@plexity.net>
[ADD] Add pci=firmware command line option
This change is specifically needed for the IXP2000 platform. IXP2000
platforms have various PCI devices with large memory space requirements
(~3.5 GB total sometimes) and a banked PCI window that allows for accessing
all 4GB of memory space. The FW configures the devices on the bus in such
a way that standard linux drivers (e100, e1000, ide) can work w/o any changes
and places devices specific to Intel's closed source IXA sdk in regions of
PCI memory space that require using special registers on the IXP. This can
be accomplished in the kernel using a board-specific enumerator or a
lot of fixups, but it is far easier to just accept what the FW has provided.
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<bunk@fs.tum.de>
[PATCH] another small advansys cleanup
The patch below does the following small cleanups for the advansys
driver:
- remove obsolete maintainer information
- remove kernel 2.2 code from advansys.h
diffstat output:
MAINTAINERS | 7
drivers/scsi/advansys.c | 342 +++++++---------------------------------
drivers/scsi/advansys.h | 26 ---
3 files changed, 60 insertions(+), 315 deletions(-)
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<perex@suse.cz>
ALSA CVS update
Intel8x0 driver
set msbits for 20-bit sample format
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
OPL4
reorganize locking;
optimize memory accesses
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
Generic drivers,AK4531 codec
One space at the end of a line is evil.
So how do we call it if a line has 300 of them? :)
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
USB generic driver
remove whitespace at end of lines
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
PCM Midlevel
fix memory leak
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
GUS Library,Wavefront drivers
reduce stack usage;
fix buffer overflow
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
AMD InterWave driver
reduce stack usage;
fix ROM checksum check
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
AC97 Codec Core
fix odd comment :)
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
USB generic driver
allow USB MIDI devices without audio control interface
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
Documentation,AC97 Codec Core,ATIIXP driver,CS4281 driver
ENS1370/1+ driver,ES1968 driver,FM801 driver,Intel8x0 driver
Intel8x0-modem driver,Maestro3 driver,VIA82xx driver,ALI5451 driver
au88x0 driver,CS46xx driver,EMU10K1/EMU10K2 driver,ICE1712 driver
ICE1724 driver,NM256 driver,Trident driver,YMFPCI driver
move AC'97 bus callbacks into seperate ops record;
remove ac97_bus_t template requirement from snd_ac97_bus()
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
Documentation
Removed obsolete sndmagic.h.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ALSA Core
Fixed compile warnings withoug CONFIG_PM.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Documentation
Fixed missing </section>.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Memalloc module
- Don't mark pages from dma_alloc_coherent as reserved.
The pages from __get_free_pages() are still marked as reserved, but this could
be also unnecessary.
- Fixed a typo in comment.
- Fixed the pre-allocated buffer size for rme9652 & hdsp.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
CS46xx driver
change codec index computation in snd_cs46xx_read/write;
replace ac97_t template with ac97_template_t
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
Documentation,AC97 Codec Core,ATIIXP driver,CS4281 driver
ENS1370/1+ driver,ES1968 driver,FM801 driver,Intel8x0 driver
Intel8x0-modem driver,Maestro3 driver,VIA82xx driver,ALI5451 driver
au88x0 driver,EMU10K1/EMU10K2 driver,ICE1712 driver,ICE1724 driver
NM256 driver,Trident driver,YMFPCI driver
replace ac97_t template with ac97_template_t
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
ALSA<-OSS emulation
fix missing semaphore release in snd_mixer_oss_build_input()
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
Documentation
fix typo
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
RME HDSP driver
ALSA rme9652/hdsp: remove inlines
The patch below removes all inlines from hdsp.c. As a side effect, it
showed that snd_hdsp_9652_disable_mixer() is completely unused, and it's
therefore also removed in the patch.
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ATIIXP driver
Fixed a typo in the check of buffer/period size configuration.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Documentation,PCI drivers,ATIIXP-modem driver
Added snd-atiixp driver for ATI IXP AC97 modem controllers.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Memalloc module
Mark the allocated DMA pages as reserved for certain architectures.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Control Midlevel
Fixed the unbalanced spinlock in the error path.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Intel8x0-modem driver
Added -MODEM suffix to the driver name string to distinguish from the
intel8x0 audio driver.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
CS46xx driver
Fixed a compile warning in the debug code.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Documentation,PCM Midlevel
Changed the atomicity of PCM prepare callback.
The PCM prepare callback is now non-atomic, so that the driver can
use the functions calling schedule (e.g. kmalloc with GFP_KERNEL).
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ALS4000 driver,ATIIXP driver,ATIIXP-modem driver,AZT3328 driver
BT87x driver,CMIPCI driver,CS4281 driver,ENS1370/1+ driver
ES1968 driver,FM801 driver,Intel8x0 driver,Maestro3 driver,RME32 driver
RME96 driver,SonicVibes driver,VIA82xx driver,ALI5451 driver
CS46xx driver,EMU10K1/EMU10K2 driver,ICE1712 driver,ICE1724 driver
KORG1212 driver,MIXART driver,NM256 driver,RME HDSP driver
RME9652 driver,Trident driver,YMFPCI driver,PPC PMAC driver
USB generic driver
Clean up spinlocks.
- Removed superfluous spinlocks.
- Replaced spin_lock_irqsave() with spin_lock_irq() in the obvious places.
- Make sure that prepare callback be non-atomic.
- Removed SNDRV_PCM_INFO_NONATOMIC_OPS flag (which is default now).
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
AC97 Codec Core,Intel8x0 driver,Intel8x0-modem driver
Fixed the detection of sample rates with no VRA support.
- Changed ac97bus->vra to ac97bus->no_vra to indicate the VRA is NOT
supported.
- In the case of no_vra=1, only 48k is set as the possible rates in
snd_ac97_pcm_assign().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
EMU10K1/EMU10K2 driver
Enable low latency EFX capture on emu10k1
The following patch fixes EFX capture on the emu10k1. The
capture_period_sizes table is in bytes, but the hardware constraint was
being set in frames.
Signed-off-by: Lee Revell <rlrevell@joe-job.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
VIA82xx driver
Added the ac97_quirk entry for ECS K7VTA3 v8.0 mobo.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ALSA sequencer
Fixed the bad check on copy_from_user() return value
Signed-off-by: Mika Kukkonen <mika@osdl.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
EMU10K1/EMU10K2 driver
Fixed the detection of Audigy 2 ZS.
Signed-off-by: Lee Revell <rlrevell@joe-job.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ALI5451 driver
Fixed the suspend/resume.
The suspend callback wasn't set the power state correctly, so
the resume process was skipped.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
EMU10K1/EMU10K2 driver,Trident driver,ALS4000 driver,ATIIXP driver
ATIIXP-modem driver,AZT3328 driver,BT87x driver,CMIPCI driver
CS4281 driver,ENS1370/1+ driver,ES1938 driver,ES1968 driver
FM801 driver,Intel8x0 driver,Intel8x0-modem driver,Maestro3 driver
RME32 driver,RME96 driver,SonicVibes driver,VIA82xx driver
ALI5451 driver,ICE1712 driver,ICE1724 driver,KORG1212 driver
MIXART driver,RME HDSP driver,RME9652 driver,Digigram VX222 driver
Clean up the PCI resource allocation.
Replaced the manual resource allocations with request_[mem_]region()
with pci_request_regions().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Documentation
Changed the description of PCI resource allocation to use pci_request_regions().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ALSA Core,ATIIXP driver,ATIIXP-modem driver,Intel8x0 driver
VIA82xx driver
Clean up the suspend/resume: save/restore of pci state
PCI status is restored in the common resume callback.
(Stored in the saved_config array of pci_dev struct.)
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ALI5451 driver
Added the missing snd_power_change_state() in the resume callback.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Documentation,SA11xx UDA1341 driver,PCM Midlevel,IOCTL32 emulation
ALSA<-OSS emulation,Generic drivers,I2C cs8427,I2C tea6330t,L3 drivers
OPL3SA2 driver,AD1816A driver,CS4231 driver,CS4236+ driver
ES1688 driver,GUS Library,AMD InterWave driver,Opti9xx drivers
EMU8000 driver,PARISC Harmony driver,AZT3328 driver,CMIPCI driver
CS4281 driver,FM801 driver,Intel8x0 driver,Maestro3 driver,RME32 driver
RME96 driver,SonicVibes driver,AK4531 codec,CS46xx driver
ICE1712 driver,KORG1212 driver,NM256 driver,RME HDSP driver
RME9652 driver,YMFPCI driver,PPC AWACS driver,PPC Burgundy driver
PPC DACA driver,SPARC AMD7930 driver,SPARC cs4231 driver
Common EMU synth
use ARRAY_SIZE() instead of sizeof() computations
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
BT87x driver
use exact values of analog clock rate
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
PPC
The alsa driver for powermacs requires i2c support.
Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
ALSA Core
use list_for_each() in core/memory.c
Signed-off-by: Domen Puncer <domen@coderock.org>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
PPC PMAC driver
Fixed typo.
Signed-off-by: Nicolas Kaiser <nikai@nikai.net>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
PPC PowerMac driver
Fixed typo.
Signed-off-by: Nicolas Kaiser <nikai@nikai.net>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
ALSA Core,MIXART driver
Removed the obsolete NONATOMIC_OPS flag.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ICE1712 driver
Added master volume control.
The master volume control is added again, this time with
the digital attenuation so that it works independently from
the DAC volumes.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ALSA Core
Added unlikely() to the debug check macros.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ALSA Core
Clean up: removed ifdefs and obsolete codes.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Control Midlevel,HWDEP Midlevel,ALSA Core,PCM Midlevel,RawMidi Midlevel
Timer Midlevel,ALSA<-OSS emulation,ALSA sequencer,ALSA<-OSS sequencer
Unlock BKL in ioctl callback to avoid the long preempt-disabling.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
PCM Midlevel
Fixed/improved XRUN detection
- don't print XRUN message in the case of draining.
- pointer callback can return SNDRV_PCM_POS_XRUN to notify the middle layer.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
PCM Midlevel
Notify PCM buffer overrun of the intermidate buffer on capture.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
RME32 driver
Fixed the fullduplex mode.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
RME32 driver
Fixed the address mask to get the correct DMA pointer value.
Signed-off-by: Pilo Chambert <pilo.c@wanadoo.fr>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ICE1712 driver
Added the (experimental) support of Terratec Phase 88.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
VIA82xx driver
Fixed the check of invalid DMA position.
The workaround for buggy mobo to correct the DMA position is fixed
so that it works properly on normal chips.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<andrew.vasquez@qlogic.com>
[PATCH] qla2xxx: EH host-reset fixes
Fix issue where host-reset would incorrectly return a
FAILED status.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] qla2xxx: Set firmware options fixes
Fix issue where firmware options were not properly being
set before firmware initialization.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] qla2xxx: TCQ fixes
Correct usage of tag-command-queueing methods:
o Properly call scsi_activate_tcq() rather than
scsi_adjust_queue_depth().
o Properly retrieve tag message from command via
scsi_populate_tag_msg().
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<andrew.vasquez@qlogic.com>
[PATCH] qla2xxx: Update version
Update version number to 8.00.00b15-k.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<bunk@fs.tum.de>
[PATCH] drivers/scsi/sg.c kill local jiffies functions
[patch] kill local sg_ms_to_jif/sg_jif_to_ms functions and use
msecs_to_jiffies/jiffies_to_msecs instead
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<bunk@fs.tum.de>
[PATCH] SCSI dc395x.c: fix inline compile errors
Trying to compile drivers/scsi/dc395x.c in 2.6.8-rc1-mm1 using gcc 3.4
results in compile errors starting with the following:
<-- snip -->
...
CC drivers/scsi/dc395x.o
drivers/scsi/dc395x.c: In function `dc395x_handle_interrupt':
drivers/scsi/dc395x.c:388: sorry, unimplemented: inlining failed in call
to 'enable_msgout_abort': function body not available
drivers/scsi/dc395x.c:1740: sorry, unimplemented: called from here
make[2]: *** [drivers/scsi/dc395x.o] Error 1
<-- snip -->
The patch below moves enable_msgout_abort above the place where it is
called the first time and removes the bogus inline from the prototype of
set_xfer_rate (the function itself isn't marked as inline).
An alternative approach would be to remove the inline from
enable_msgout_abort.
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<bunk@fs.tum.de>
[PATCH] SCSI nsp32.c: remove inlines
Trying to compile drivers/scsi/nsp32.c in 2.6.8-rc1-mm1 using gcc 3.4
results in compile errors starting with the following:
<-- snip -->
...
CC drivers/scsi/nsp32.o
drivers/scsi/nsp32.c: In function `nsp32_prom_start':
drivers/scsi/nsp32.c:270: sorry, unimplemented: inlining failed in call
to 'nsp32_prom_set': function body not available
drivers/scsi/nsp32.c:3348: sorry, unimplemented: called from here
drivers/scsi/nsp32.c:270: sorry, unimplemented: inlining failed in call
to 'nsp32_prom_set': function body not available
drivers/scsi/nsp32.c:3349: sorry, unimplemented: called from here
drivers/scsi/nsp32.c:270: sorry, unimplemented: inlining failed in call
to 'nsp32_prom_set': function body not available
drivers/scsi/nsp32.c:3350: sorry, unimplemented: called from here
drivers/scsi/nsp32.c:270: sorry, unimplemented: inlining failed in call
to 'nsp32_prom_set': function body not available
drivers/scsi/nsp32.c:3351: sorry, unimplemented: called from here
drivers/scsi/nsp32.c:270: sorry, unimplemented: inlining failed in call
to 'nsp32_prom_set': function body not available
drivers/scsi/nsp32.c:3353: sorry, unimplemented: called from here
make[2]: *** [drivers/scsi/nsp32.o] Error 1
<-- snip -->
The patch below removes the inlines from nsp32_prom_{get,set}.
An alternative approach would be to move the functions above the place
where they are called the first time.
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<g.liakhovetski@gmx.de>
[PATCH] tmscsim: MAINTAINERS
add new maintainer
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<g.liakhovetski@gmx.de>
[PATCH] SCSI tmscsim.c: fix inline compile errors
Original Patch From: Adrian Bunk <bunk@fs.tum.de>
I looked at those 3 functions. dc390_EnableMsgOut_Abort is called 5 times
in the code and is 0x30 bytes long (as compiled with 3.3.2), so,
uninlining it, probably, makes most sense. The other 2 functions are
called only ones each and from the interrupt, so, I applied the
"alternative approach" to them - moved above the calling functions.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<boutcher@us.ibm.com>
[PATCH] ibmvscsi driver v1.5.1
Based on comments from hch and jejb, an update to the ibmvscsi
driver patch. Primarily style issues, though the removal of
gratuitous casting lead to some significant refactoring
of functions.
- Moved #include <asm/...> after #include <linux/...>
- removed the map_direct_data and map_indirect_data and moved
the function inline
- Fixed function declaration style issues (static on a line by
itself)
- Removed bogus cast from dma_map_single
- Moved setting of data transfer direction to a single helper
function
- Fixed up some gratuitous casting of types
- Collapsed a couple of other functions inline
- Removed bogus check for NULL from remove
- Removed the "evt_struct_for" routine as being needlessly obfuscatory
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<Matt_Domsch@dell.com>
[PATCH] add MODULE_VERSION to drivers/scsi
Set MODULE_VERSION for drivers/scsi
for Adaptec SCSI, megaraid qla1280, qla2x00
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<Matt_Domsch@dell.com>
[PATCH] add MODULE_VERSION to drivers/scsi
On Thu, Jul 22, 2004 at 01:28:23PM +0100, Matthew Wilcox wrote:
> > +#define SYM_VERSION "2.1.18j"
> > +#define SYM_DRIVER_NAME "sym-" SYM_VERSION
>
> Umm. No. This is ridiculous. I'm not having a 51 line copyright message
> with 2 lines of #define. It's not even clear to me that these two lines
> have artisitic merit. How about putting these defines in sym_defs.h,
> at the top? It's already included in both sym_glue.c and sym_hipd.c by
> being included by sym_glue.h.
Indeed, point well taken. Done, they're now at the top of defines in
sym_defs.h, and I've updated my BK tree accordingly.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<nacc@us.ibm.com>
[PATCH] scsi/eata_pio: replace schedule_timeout() with msleep()
Use msleep() instead of schedule_timeout() to
guarantee the task delays for the desired time.
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<perex@suse.cz>
ALSA CVS update
ALSA<-OSS emulation
Fixed a typo in the last change, resulting in the infinite loop.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ICE1712 driver,ICE1724 driver
Added the support of Pontis MS300 to snd-ice1724 driver.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<akpm@osdl.org>
[PATCH] gcc-3.5 fixes to advansys
From: Andi Kleen <ak@muc.de>
Trivial gcc-3.5 build fixes.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] Fix double reset in aic7xxx driver
From: Joe Korty <joe.korty@ccur.com>
Fix occasional PCI bus parity errors on the Dell PowerEdge 4600 during
boot.
Symptoms: The LCD display would turn orange and display "PCI SYSTEM E13F5",
and the following message would appear in /var/log/dmesg: "Uhhuh. NMI
received. Dazed and confused, but trying to continue".
By inserting a PCI card with a PDC20268 IDE controller and attaching to
that a Sony DRU-510A DVD RW burner with an unloaded tray, the failure can
be made to happen on every boot.
Cause: The aic7xxx driver was resetting the onboard AIC7891 SCSI controller
while waiting for a previous reset to complete. This second reset confuses
the controller causing it to put bad data onto the PCI bus.
This is a backport of a RedHat 2.4.21-15.ELsmp fix. A letter discussing
this problem, or one very close to it, may be found at:
http://lists.us.dell.com/pipermail/linux-poweredge/2003-M...
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] fix aic driver build for db4
From: "J.A. Magallon" <jamagallon@able.es>
This allows to build aic with db4.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] sg.c: remove unused sg_jif_to_ms()
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<bunk@fs.tum.de>
[PATCH] let AIC7{9,X}XX_BUILD_FIRMWARE depend on
The patch below lets AIC7{9,X}XX_BUILD_FIRMWARE depend on
!PREVENT_FIRMWARE_BUILD.
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<perex@suse.cz>
ALSA CVS update
VIA82xx driver
Added the quirk entry for ECS L7VMM2 uATX.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Intel8x0 driver
Added the support of nVidia CK804.
Signed-off-by: Andrew Chew <achew@nvidia.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Intel8x0 driver
Added the support of MCP04.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
AC97 Codec Core,ATIIXP driver,ATIIXP-modem driver,Intel8x0 driver
Intel8x0-modem driver
Fixed the reset problem of shared audio/modem drivers.
This patch fixes the problem that the shared audio/modem drivers reset
the codecs with each other at loading time.
Currently, intel8x0 and atiixp drivers are supported.
The other drivers (if any) should add the new shared type in ac97_codec.h.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Memalloc module,PCM Midlevel,CS46xx driver,EMU10K1/EMU10K2 driver
ALSA Core,YMFPCI driver,Sound Scape driver,ATIIXP driver
ATIIXP-modem driver,BT87x driver,ENS1370/1+ driver,ES1968 driver
Intel8x0 driver,Intel8x0-modem driver,VIA82xx driver,KORG1212 driver
MIXART driver,RME HDSP driver,RME9652 driver,Trident driver
Clean up DMA buffer allocation routines.
- snd_dma_alloc_pages*() take the device type and device pointer
directly as arguments. snd_dma_free_pages() takes only dma_buffer
instance.
- snd_dma_device struct is removed in each driver's instance (no longer
needed due to the change above).
- snd_malloc_pages_fallback() is removed since it's no longer used.
- The buffer reservation / preallocation in snd-page-alloc module is
performed only when the buffer id is given. Normal PCM buffers won't
be reserved any more (unless the driver specifies). The module keeps
the linked list of free-reserved buffers, instead of the whole buffers
Reservation is done via snd_dma_reserve_buf(), and retrieved via
snd_dma_get_reserved_buf()).
- Other misc clean-ups/fixes.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
PARISC Harmony driver
Clean up DMA buffer allocation routines.
- snd_dma_alloc_pages*() take the device type and device pointer
directly as arguments. snd_dma_free_pages() takes only dma_buffer
instance.
- snd_dma_device struct is removed in each driver's instance (no longer
needed due to the change above).
- snd_malloc_pages_fallback() is removed since it's no longer used.
- The buffer reservation / preallocation in snd-page-alloc module is
performed only when the buffer id is given. Normal PCM buffers won't
be reserved any more (unless the driver specifies). The module keeps
the linked list of free-reserved buffers, instead of the whole buffers
Reservation is done via snd_dma_reserve_buf(), and retrieved via
snd_dma_get_reserved_buf()).
- Other misc clean-ups/fixes.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
PCI drivers,Intel8x0-modem driver
Added the support of Nvidia modem.
Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Intel8x0 driver
Fixed the handling of unknown irqs on ICH5.
This patch fixes (hopefully) the handling of unkown irqs triggered
on some ICH5 mobo. Also, free_irq() is moved before releasing
i/o ports to avoid hang-up at removal.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Intel8x0 driver
Added an ac97 quirk for ICH/AD1885 mobo.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ICE1712 driver
Added the support of ZNF3-250 (supposed to be ZNF3-150 compatible).
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
IOCTL32 emulation
Added the wrapper for sync_ptr and hwsync ioctls.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
PPC,PPC AWACS driver,PPC Beep,PPC PMAC driver,PPC PowerMac driver
Added the PCM beep support.
enable_beep module option is back again (default = 1).
Beep is emulated via PCM playback when enabled.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
PPC PMAC driver
pmac also apply the DMA stop work around to fix capture on iBook2
the attached patch for the pmac driver fixes capture for at least all
iBook2s I have access to. Without the fix arround 33% percent of all
recordings are just white noise.
Signed-off-by: Rene Rebe <rene.rebe@gmx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
PPC PMAC driver
Bailed a long delay out of the spin_lock_irq.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<greg@kroah.com>
KREF: shrink the size of struct kref down to just a single atomic_t
This was based on a patch from Kiran, but tweaked further by me.
Signed-off-by: Ravikiran Thirumalai <kiran@in.ibm.com>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<greg@kroah.com>
KREF: fix up the current kref users for the changed api.
Based on work from Kiran, but fixed up by me to actually build and
link properly.
Signed-off-by: Ravikiran Thirumalai <kiran@in.ibm.com>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<perex@suse.cz>
From: "Andrew Chew" <achew@nvidia.com>
This patch updates include/linux/pci_ids.h with the CK804 audio controller
ID, and adds the CK804 audio controller to the sound/pci/intel8x0.c audio
driver.
Signed-off-by: Andrew Morton <akpm@osdl.org>
<perex@suse.cz>
From: Jaroslav Kysela <perex@suse.cz>
ALSA patch
Removed duplicate CK804_AUDIO from intel8x0.c
<perex@suse.cz>
ALSA CVS update
VIA82xx driver
Added the DXS whitelist entry for Acer Inspire 1353LM.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Documentation,USB,USB generic driver,USB USX2Y
Added snd-usb-usx2y driver for Tascam US-122/224/428 support.
Driver written by Karsten Wiese <annabellesgarden@yahoo.de>
The shared code is split from usbaudio as snd-usb-lib module.
Currently, only MIDI part is included there. In future, more
audio part will be shared, too.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Documentation,Intel8x0 driver
Added buggy_irq module parameter to intel8x0 driver.
On some (broken :) motherboards, unknown irq is triggered when the audio
is started. This this option, the irq handler returns IRQ_HANDLED for
such an irq, so that the irq line won't be disabled.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
USB generic driver
fix email address and license
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<trini@kernel.crashing.org>
[PPC32] Add a weak version of embed_config().
This allows boards with U-Boot to have a functional 'all' target.
Signed-off-by: Andreas Oberritter <obi@saftware.de>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
[PPC32] Give PPC8xx a callback into board-specific code in
m8xx_setup_arch().
Signed-off-by: Andreas Oberritter <obi@saftware.de>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
[PPC32] Add a watchdog driver on PPC8xx.
Signed-off-by: Andreas Oberritter <obi@saftware.de>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<perex@suse.cz>
ALSA CVS update
au88x0 driver
Cleanup the private_data initialization
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA misc
- control.c - compilation fixes
- es1968.c - hw volume fix
<perex@suse.cz>
ALSA CVS update
PPC PMAC driver
Removed non-functional 48kHz support from pmac driver.
Signed-off-by: Rene Rebe <rene.rebe@gmx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
SoundFont,Common EMU synth
Fixed messy locks in soundfont support code.
Removed hacky down_trylock() in the interrupt context, and check
the busy lock flag explicitly.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
PCI drivers,Intel8x0-modem driver
Added the support of SIS7013 modem.
Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
EMU10K1/EMU10K2 driver,KORG1212 driver
Fixed the compile warnings on 64bit architectures.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
USB USX2Y
fix compilation on 2.2.x kernels
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
au88x0 driver
Fixed asXtalkGainsAllChan problem for the solid kernel build.
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
au88x0 driver
Cleans up the equalizer code by converting some loops to proper for
loops and fixes the conditions for looping.
Signed-off-by: Jeff Muizelaar <muizelaar@rogers.com>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
au88x0 driver
some other misc eq cleanups
Signed-off-by: Jeff Muizelaar <muizelaar@rogers.com>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<rml@ximian.com>
[PATCH] KOBJECT: add kobject_get_path
Add a new kobject helper, kobject_get_path(), which is the greatest
function ever.
Signed-Off-By: Robert Love <rml@ximian.com>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<dsaxena@plexity.net>
[ARM] Switch CPU to BE mode before uncompressing when running BE
This is needed for certain systems (IXP2000,IXP1200) where the bootloader
switches back to LE before jumping into the kernel or when we are trying
to boot a BE kernel from an LE bootloader.
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<dsaxena@plexity.net>
[ARM] Add IXP2000 support to arch/arm/Makefile & Kconfig
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<dsaxena@plexity.net>
[ARM] Add IXP2000 support to arch/arm/kernel
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<dsaxena@plexity.net>
[ARM] Add IXP2000 CPU support to arch/arm/mm
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<dsaxena@plexity.net>
[ARM] Add IXP2000 support to arch/arm/boot
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<dsaxena@plexity.net>
[ARM] Add IXP2000 platform implementation (arch/arm/mach-ixp2000)
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<dsaxena@plexity.net>
[ARM] Add IXP2000 header files (include/asm-arm/arch-ixp2000)
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<dsaxena@plexity.net>
[ARM] Add IXP2000 documentation
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<buytenh@wantstofly.org>
[ARM] Various IXP2000 fixes
- Fix IXP2000_MSF_CLK_CNTRL typo
- Use unsigned long instead of int for local_irq_save() flags variable
- Fix "pci=firmware" handling
- Remove redundant IXP2000 zreladdr
- Fix IXP2000 def-configs
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<buytenh@wantstofly.org>
[ARM] Add support for ENP-2611 platform
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<olh@suse.de>
[PATCH] export legacy pty info via sysfs
You missed that one last year.
export the legacy pty/tty device nodes via sysfs,
so udev has a chance to create them if /dev is in tmpfs.
Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<thomas.koeller@baslerweb.com>
[PATCH] Driver Core: fix minor class reference counting issue on the error path
Signed-off-by: Thomas Koeller <thomas.koeller@baslerweb.com>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<trini@kernel.crashing.org>
PPC32: Rename pq2ads_setup.c to pq2ads.c
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
PPC32: Merge mcpn765_serial.h into mcpn765.h
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
PPC32: Update the Motorola LoPEC support
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
PPC32: Finish cleanup of platforms that just needed _serial.h merged.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
PPC32: Update the Motorola MVME5100 support.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<rddunlap@osdl.org>
[PATCH] fix imm to build with IMM_DEBUG
Fix imm for IMM_DEBUG (changed device id struct).
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<bunk@fs.tum.de>
[PATCH] SCSI nsp32.c: missing parts of inline removal patch
The SCSI tree as included in 2.6.8-rc2-mm2 only removes the inline's
from the functions prototypes, but the part of my original patch that
also removes the inline's from the functions was lost.
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<rddunlap@osdl.org>
[PATCH] fd_mcs: fix __setup function
Use correct __setup function type and parameters.
Return result from __setup function.
Don't confuse <ints> and <interrupts>.
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<rddunlap@osdl.org>
[PATCH] NCR53c406a: fix __setup function
Use correct __setup function type and parameters.
Return result from __setup function.
Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<trini@kernel.crashing.org>
ppc32: Re-work the cpuinfo hooks on MPC82xx
Now we define CPUINFO_VENDOR and CPUINFO_MACHINE in one callback
instead of using show_cpuinfo and show_percpuinfo call-backs to
print constant per-board information.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: Small cleanups to the CPM2 PIC code.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: Redo the MPC82xx set of call-backs.
This removes at lot of the nearly empty files, and allows for
boards to do the board-specific init stuff they need in their own
file still.
<jejb@raven.il.steeleye.com>
lib/bitmap.c: fix incorrect use of BITS_TO_LONGS()
Bug spotted by: Ian Molton <spyro@f2s.com>
BITS_TO_LONGS() can't be used to derive an index
into a bitmap array.
Also put a BUG_ON() for the pages > BITS_PER_LONG case
we don't cope with.
<christian@borntraeger.net>
[PATCH] Add bus dependencies to two scsi drivers
Two scsi drivers do not compile on systems without ISA/PCI. Therefore
allyesconfig breaks on hardware like s390.
Signed-off-by: Christian Bornträger <linux-kernel@borntraeger.net>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<g.liakhovetski@gmx.de>
[PATCH] tmscsim: (CH) Fix error handling
I might be wrong, but it looks like the attached patch has still not been
applied, although it is pretty important - it fixes error handling in
tmscsim. E.g., it was reported, that this patch fixes a problem with
tmscsim in 2.6.7 with a SCSI-3 scanner, that doesn't support REPORT LUNS
command.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: Use sector_t type in sector_div call
From: Pawel Sikora <pluto@pld-linux.org>
The first parameter for sector_div must be sector_t rather than int.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: Use cancel all instead of abort task
Currently, ABORT_TASK does not work properly on ipr adapters. It results in
timeouts and eh ends up getting escalated to eh_host_reset to recover.
The adapters are supposed to be fixed to properly handle this at some
point in the future, but until that updated microcode is available,
we need to send a cancel all to the device instead.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: Bump driver version.
Bump driver version.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: Properly retry aborted reponse
The ipr device driver runs tagged queuing with QERR=1. When a check
condition occurs on a device running tagged queuing, the other queued
commands get aborted by the ipr driver and will be returned by the
adapter with the IPR_IOASC_ABORTED_CMD_TERM_BY_HOST response. These
commands should be retried by the midlayer and their retry counter not
decremented.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: New adapter support
This patch adds support for 2 new ipr adapters.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: minor fixes and assorted nit
From: Francois Romieu <romieu@fr.zoreil.com>
Subject: [PATCH 2.6.7-mm3] ipr: minor fixes and assorted nit
- balance pci_enable_device() with pci_disable_device() where appropriate;
- pci_release_regions() replaces release_mem_region();
- ipr_alloc_mem() can not simply issue a call to ipr_free_mem() when
something goes wrong as it would lead to pci_free_consistent() of
unset data. Let ipr_alloc_mem() carefully release whatever it has
allocated instead;
- no need to memset(..., 0, ...) an area returned by pci_alloc_consistent;
- ipr_probe_ioa:
+ DMA_32BIT_MASK for all;
+ error path rework (includes bug fix when ipr_alloc_mem fails);
- ipr_init() can fail: return adequate status code.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: Use kref instead of a kobject
The following patch converts ipr to use a kref rather than a kobject to
do reference counting on an internal data structure. The added overhead
of a kobject is not needed.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: Add maintainers email address to comment block
The following patch adds my email address to the block comment
at the start of each file of the ipr driver to make it easier to find.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: New PCI IDs
Add a couple new devices supported by the ipr device driver. This patch
has already been sent to pciids-devel@lists.sourceforge.net.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: Fix assorted dma_addr_t typing errors
From: Alan Cox <alan@redhat.com>
Subject: PATCH: Fix assorted dma_addr_t typing errors in ipr driver
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: Properly enable/disable TCQ
This patch correctly enables tagged command queuing for the ipr driver.
I had misinterpreted scsi_mid_low_api.txt. The following patch has the
appropriate scsi_activate_tcq/scsi_deactivate_tcq calls.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: Sparse warnings fixes
From: Mika Kukkonen <mika@osdl.org>
The following patch fixes some sparse warnings.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: Dead adapter I/O hang fix
The following patch fixes a hang in i/o that could occur if an
adapter was ever declared "dead" by the ipr driver due to repeated
failed attempts to revive the card. The patch now allows ipr to fail
new commands when in this state rather than endlessly return
SCSI_MLQUEUE_HOST_BUSY.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: Set allow_restart for disk devices only
This fixes ipr to only allow eh initiated start_unit commands
following erp to disk devices.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: Don't log adapter shutdown error response code
The following patch adds an adapter response code to the
table in the driver to prevent an error from being logged
when this response is received.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] ipr: replace schedule_timeout() with msleep()
From: Nishanth Aravamudan <nacc@us.ibm.com>
Subject: [PATCH] scsi/ipr: replace schedule_timeout() with msleep()
Description: Use msleep() instead of schedule_timeout() to
guarantee the task delays for the desired time.
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<markh@osdl.org>
[PATCH] aacraid patch for new device support
Here is a patch from Adaptec for new adapter support.
Signed-off-by: Mark Haverkamp <markh@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<bunk@fs.tum.de>
[PATCH] SCSI gdth: kill #define __devinitdata
I got the following warning in 2.6.8-rc3-mm2:
<-- snip -->
...
CC drivers/scsi/gdth.o
drivers/scsi/gdth.c:622:1: warning: "__devinitdata" redefined
In file included from include/linux/moduleparam.h:4,
from include/linux/module.h:20,
from drivers/scsi/gdth.c:375:
include/linux/init.h:227:1: warning: this is the location of the
previous definition
...
<-- snip -->
The #define in question seems bogus, and the following patch simply
removes it:
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<praka@pobox.com>
[PATCH] Re: 2.6.8-rc3-mm2: Debug: sleeping function called from invalid
> Andrew Vasquez wrote:
>
> >
> >This allocation should be done with GFP_ATOMIC flags. The attached
> >patch should apply cleanly to any recent kernel
> >
>
> and seems to work fine.
>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<markh@osdl.org>
[PATCH] aacraid driver update
Here are some changes from Adaptec for the AACRAID driver.
Change the pae_support flag to dac_support. This was suggested sometime
last year and never made it in.
Fix some cast problems in pci_set_dma_mask. Was casting the mask to
dma_addr_t when it should be a u64.
Fix SCp.ptr problem, should be SCp.dma_handle.
Applies to the scsi-misc bk tree.
Signed-off by: Mark Haverkamp <markh@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
AUTOSENSE bug in NCR5380.c
From: Kenn Humborg <kenn@linux.ie>
round line 2470 in NCR5380.c, if a command fails, and AUTOSENSE is on,
the current command is converted into a REQUEST_SENSE command and
put at the top of the request queue. Part of this setup, is setting
up cmd->SCp to point at the sense_buffer, so that the received sense
data goes straight into the sense buffer.
Around line 1730, NCR5380_select() calls initialize_SCp() which ends
up clobbering cmd->SCp, and the sense data get written into the
original request buffer.
This is what happens if cmd->use_sg = 0. I haven't looked at what
happens if use_sg is non-zero, but I expect the effect will be the same.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] switch sd numbering to idr
Switch sd.c device number allocation to use idr, this limits memory
usage for lowend setups and highend setups are only limited by the
available names now.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<perex@suse.cz>
ALSA CVS update
PCM Midlevel
Serialize runtime->status->state access
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
Intel8x0-modem driver
Added SiS, NVidia modem descriptions
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
AC97 Codec Core
Don't use mute bit in REC_GAIN register during tests.
We have at least one case when the mute bit is zero.
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
PCM Midlevel
Fixed cut-n-paste typo
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
AC97 Codec Core
Add more timeout to avoid not respond messages
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
USB generic driver
add support for Yamaha CVP-301, CVP-303, CVP-305, CVP-307, CVP-309,
CVP-309GP, PSR-1500, PSR-3000, ELS-01, ELS-01C, PSR-295, PSR-293,
DGX-205, DGX-203, DGX-305, DGX-505, DGP-7, DGP-5, PM5D, DME64N,
DME24N, DTX, UB99
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
version.h:
ALSA 1.0.6
<trini@kernel.crashing.org>
[PPC32] Default to conswitchp=&dummy_con if DUMMY_CONSOLE.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: Fix MPC8260 with an initrd and no root=/dev/ram0
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: Introduce a have_residual_data macro and switch to it.
This is mainly to avoid my additions adding loads of ugly
#ifdef CONFIG_RESIDUAL_DATA sections.
Signed-off-by: Leigh Brown <leigh@solinno.co.uk>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
This allows use of the IBM status LED if it's found in the residual
data, plus a couple of other bells and whistles. It removes the
140-specific code.
Signed-off-by: Leigh Brown <leigh@solinno.co.uk>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: On PReP, use residual data for PCI dev -> IRQ, and use it.
Signed-off-by: Leigh Brown <leigh@solinno.co.uk>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: On PReP, allow for residual data to provide IRQ level/edge info
This adds a function to determine the 8259 level/edge mask word.
With this function we can now (in theory) support any IBM PReP
machine. We therefore add a little bit more code to fallback
to using residual data if we don't recognise the machine.
Signed-off-by: Leigh Brown <leigh@solinno.co.uk>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: Use residual data to determine the addr to pass i8259_init()
Signed-off-by: Leigh Brown <leigh@solinno.co.uk>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: Add support for PCIBridgeRS6K to prep_find_bridges().
Signed-off-by: Leigh Brown <leigh@solinno.co.uk>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: Fixup the OpenPIC code for older implementations.
Signed-off-by: Leigh Brown <leigh@solinno.co.uk>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: The planar id is only 1 byte, so only display that much.
Signed-off-by: Leigh Brown <leigh@solinno.co.uk>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: Correct the output of /proc/interrupts on PReP.
Signed-off-by: Leigh Brown <leigh@solinno.co.uk>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<davem@nuts.davemloft.net>
[TIGON3]: Mention that firmware is copyrighted by Broadcom.
<jejb@mulgrave.(none)>
MPT Fusion driver 3.01.15 update
Highlights of this release:
- Patch provided by Christoph Hellwig to remove the isense code.
- Fix compile errors when CONFIG_PROC_FS=n.
- A fix for the module parameter "mptscsih" which was not being exported.
- The port of the 2.05.17 thru 2.05.23 of the lk 2.4 mpt driver.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<davem@nuts.davemloft.net>
[TG3]: Revamp fibre PHY handling.
- Clearly seperate hw-assisted vs. by-hand handling.
- Seperate PHY ID vs. Serdes state.
Should fix 5704 Fibre brokenness introduced by Sun
patches.
Signed-off-by: David S. Miller <davem@redhat.com>
<andmike@us.ibm.com>
[PATCH] reorder call in scsi_remove_host
This patch against scsi-misc-2.6 reorders a call to scsi_forget_host in
the scsi_remove_host function. This removes the error message
"Synchronizing SCSI cache..." on rmmod of a scsi host driver module as
shown in example output 1 and 2 below.
I had previous created a much more complicated patch to work around this
problem. In response Christoph mention a simpler solution (pointer to
thread below) which is this patch.
http://marc.theaimsgroup.com/?l=linux-scsi&m=10872004...
Example output.
1.) Before patch.
elm:~# scsi1 : scsi_debug, version 1.73 [20040518], dev_size_mb=8,
opts=0x0
Vendor: Linux Model: scsi_debug Rev: 0004
Type: Direct-Access ANSI SCSI revision: 03
SCSI device sdc: 16384 512-byte hdwr sectors (8 MB)
SCSI device sdc: drive cache: write back
sdc: unknown partition table
Attached scsi disk sdc at scsi1, channel 0, id 0, lun 0
Attached scsi generic sg4 at scsi1, channel 0, id 0, lun 0, type 0
Synchronizing SCSI cache for disk sdc: <4>FAILED
status = 0, message = 00, host = 1, driver = 00
2.) After patch.
elm:~# scsi1 : scsi_debug, version 1.73 [20040518], dev_size_mb=8, opts=0x0
Vendor: Linux Model: scsi_debug Rev: 0004
Type: Direct-Access ANSI SCSI revision: 03
SCSI device sdc: 16384 512-byte hdwr sectors (8 MB)
SCSI device sdc: drive cache: write back
sdc: unknown partition table
Attached scsi disk sdc at scsi1, channel 0, id 0, lun 0
Attached scsi generic sg4 at scsi1, channel 0, id 0, lun 0, type 0
Synchronizing SCSI cache for disk sdc:
Signed-off-by: Mike Anderson <andmike@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<rmk@flint.arm.linux.org.uk>
[PCMCIA] Fix case of two "skt" variables.
We want the value preserved across both sections of code such that
the cleanup works as expected.
<jejb@mulgrave.(none)>
Add new Megaraid driver version 2.20.0.1
From: Mukker, Atul <Atulm@lsil.com>
This is a complete re-write to replace the now obsoleted megaraid2
driver.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<trini@kernel.crashing.org>
ppc32: Add a 'noresidual' option, to ignore residual data.
Signed-off-by: Leigh Brown <leigh@solinno.co.uk>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: Fix an LSB floating-point test failure.
Signed-off-by: Greg Weeks <greg.weeks@timesys.com> under TS0087
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: Make use of cpufeatures in some flush rountines
This is based on an observation from Pantelis Antoniou. We get
a minor speedup of flush_icache_range, __flush_dcache_icache and
__flush_dcache_icache_phys, in that we do not need to do this on
CPUs with a unified cache (601), so check for that feature bit
instead of a PVR check.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<jbarnes@sgi.com>
[ACPI] ia64 build fix
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<ak@suse.de>
[IA64] various issues in the IA64 swiotlb code
The biggest change is better overflow handling, partly ported from the AMD64
IOMMU code. This is important for some 3d drivers who make use of this and can
map a lot of memory.
First it increases the default memory usage of swiotlb to 64MB.
This was the value used in production systems in 2.4 (e.g. in SLES8) and the default
was far too small. Note this is only allocated when the swiotlb is needed.
pci_map_single will not panic anymore on an overflow. Instead it returns
a pointer to a scratch area and allows the caller to check using
dma_mapping_error(). It still panics when the overflow buffer is exceeded.
dma_mapping_error support is implemented.
pci_map_sg will never panic now, but just return 0. Near all callers
of it seem to have proper error checking for this (IDE will even handle
it without erroring out)
The handling of passing a NULL device is improved, previously it would
never map in this case. i386 and other architectures assume NULL means a 4GB
limit instead. This code does this now too.
I added support for swiotlb=force for easier testing.
Patch supplied by Andi Kleen & Suresh Siddha
Signed-off-by: Tony Luck <tony.luck@intel.com>
<seto.hidetoshi@jp.fujitsu.com>
[IA64] floating point regs are not 16-byte aligned inside SAL error record
Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<schwab@suse.de>
[IA64] <asm-ia64/acpi.h> still declares deleted acpi_register_irq.
Signed-off-by: Andreas Schwab <schwab@suse.de>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<jbarnes@sgi.com>
[IA64-SGI] Assign parent to PCI devices.
In working on the patch to export PCI ROM space via sysfs, I found that the
sn2 PCI code doesn't assign a parent resource to any of the PCI device
resources as it builds them. This provides a simple fix for that problem.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<jbarnes@sgi.com>
[IA64-SGI] bte.c: kill expression as lvalue warning
A recent patch caused a warning about not using expressions as lvalues
to crop up in bte.c (or maybe it's just that I'm using gcc-3.4.1 now).
This patch fixes it by creating a temporary to store the register whose
address we want to get and stuff into the per-bte info structure.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<steiner@sgi.com>
[IA64-SGI] The SN2 fakeprom directories/files should be deleted.
Signed-off-by: Jack Steiner <steiner@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<edwardsg@sgi.com>
[IA64] ia32_support.c: Check whether page_alloc failed.
It's pretty unlikely these page allocations would fail, but we should
still check them.
Signed-off-by: Greg Edwards <edwardsg@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<jbarnes@sgi.com>
[IA64] time.c: Downgrade printk of cpu speed to KERN_DEBUG
This patch turns the per-CPU frequency printk into a KERN_DEBUG instead of a
KERN_INFO so it'll show up in the system log but won't be printed at boot,
since it's a big pain on system with a lot of CPUs.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<roe@sgi.com>
[IA64-SGI] report coherence id in /proc/sgi_sn/coherence_id
Current SGI Altix systems have a NUMAlink domain size of 1024
compute nodes and are fully cache coherent up to 256 compute
nodes (compute nodes are even-numbered). Systems larger than
256 nodes are partitioned into multiple cache coherent systems.
This patch exports a partition's coherence id to users via the
/proc/sgi_sn/coherence_id file.
Signed-off-by: Dean Roe <roe@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<jbarnes@sgi.com>
[IA64] cyclone.c: Add includes for build on uni-processor.
Small patch to fix the includes for the cyclone timer. We just happen to be
getting these if CONFIG_SMP is on, but if it's turned off the build breaks.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<kenneth.w.chen@intel.com>
[IA64] head.S: update comments to match code
Update comments in function ia64_switch_mode_virt() to reflect actual
implementation from recent region 5 init_task bug fix.
Signed-off-by: Ken Chen <kenneth.w.chen@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<trini@kernel.crashing.org>
ppc32: Move ppc32-specific sysctls to arch/ppc
Remove both of the PPC32 && 6xx sysctls from kernel/sysctl.c to
arch/ppc/
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<shaggy@austin.ibm.com>
JFS: disk quota support
This patch adds disk quota support to jfs.
A patch is required for quota-tools to work with jfs. It can be
found at http://oss.software.ibm.com/jfs/project/pub/quota-tools.p...
Quota tools source can be downloaded from
https://sourceforge.net/projects/linuxquota/
Written by: Karl Rister & Dave Kleikamp
Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com>
<jejb@mulgrave.(none)>
Fix the new megaraid compat code to work on all 64 bit systems
make it universally include linux/ioctl32.h for
its compat ioctl.
This fixes a build failure on parisc64
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jbarnes@sgi.com>
[ACPI] ia64 build fix
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<davem@nuts.davemloft.net>
[TG3]: Remove autoneg handling from fibre_autoneg() unneeded.
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
[TG3]: Always set MAC_EVENT_LNKSTATE_CHANGED even when serdes polling.
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
Cset exclude: davem@nuts.davemloft.net|ChangeSet|20040817010613|52352
<davem@nuts.davemloft.net>
[TG3]: Do tg3_netif_start() under lock.
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
[TG3]: Disable CIOBE split, as per Broadcom's driver.
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[PATCH] megaraid build fix
drivers/scsi/megaraid/megaraid_mm.c: In function `mraid_mm_init':
drivers/scsi/megaraid/megaraid_mm.c:1069: `mraid_mm_compat_ioctl' undeclared (first use in this function)
drivers/scsi/megaraid/megaraid_mm.c:1069: (Each undeclared identifier is reported only once
drivers/scsi/megaraid/megaraid_mm.c:1069: for each function it appears in.)
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<stevef@smfhome.smfdom>
CIFS: fix 64 bit compiler warning in cifs debug code
Signed-off-by: Steve French (sfrench@us.ibm.com)
<jejb@mulgrave.(none)>
get the kernel to warn about deprecated SCSI ioctls
The non unique SCSI ioctls:
SCSI_IOCTL_SEND_COMMAND
SCSI_IOCTL_TEST_UNIT_READY
SCSI_IOCTL_BENCHMARK_COMMAND
SCSI_IOCTL_SYNC
SCSI_IOCTL_START_UNIT
SCSI_IOCTL_STOP_UNIT
Have been deprecated for a while now. We should make the kernel
complain when a program actually uses one of them, so users have had
adequate warning before they are removed.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<brking@us.ibm.com>
[PATCH] Allow TCQ depth to be lowered properly
Ran into a couple small issues with the patch. First,
blk_queue_resize_tags wasn't getting exported, so I sent Jens a patch to
fix this, which he has now sent upstream. Second, the comment above
blk_queue_resize_tags says the queue_lock must be held when calling this
routine. Attached is an updated patch that grabs the lock. Other than
that, it looks good.
James Bottomley wrote:
> On Tue, 2004-08-03 at 10:50, Brian King wrote:
>>Currently, it is possible to call scsi_activate_tcq with a small queue depth,
>>then later call scsi_adjust_queue_depth with a larger queue depth. This results
>>in the scsi layer having a larger queue depth than the block layer knows about.
>>This results in these additional commands being issued as untagged ops rather than
>>tagged ops. This patch changes scsi_activate_tcq to call blk_queue_init_tags with
>>the maximum supported number of tags so this cannot occur.
>
>
> Sorry, been away at conferences with not enough time to remember what
> went on here.
>
> The reason it looks the way it does is historical...when the blk layer
> tcq interfaces were created, there was no way to resize the queue. Jens
> later added resize (for me) and I forgot to incorporate it into the
> code.
>
> Another small point is that the max number of tags can be greater than
> 256. 256 is a SPI limit only (and even the qla1280, a SPI card which
> could use the tag as its global queue index would take > 256). The
> limit in scsi_adjust_queue_depth has long since been obsoleted by our
> dynamic command allocation.
>
> I think the attached should work correctly (as long as it compiles...I
> coded it up on the flight home).
Signed-off-by: Brian King <brking@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<James.Bottomley@steeleye.com>
[PATCH] fix for Domain Validation hang on some devices with sym_2
There's a bad hang where the driver locks the system solid trying to do
domain validation with certain devices. The one I've managed to
reproduce it with is a Quantum Atlas.
What happens is that setting the offset to zero is an async negotiation
message. However, the driver still seems to have DT set (which is
illegal). Most devices just reject this as stupid, but the Quantum
seems to try to obey it and hangs the bus.
The simple fix is to reset all PPR options when the offset is set to
zero.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<shaggy@austin.ibm.com>
JFS: Trivial: remove dead code
Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com>
<akpm@osdl.org>
[PATCH] fix qla1280 build on visws
From: Andrey Panin <pazke@donpac.ru>
attached patch fixes qla1280 SCSI driver build failure on visws due to
undefined RD_REG_WORD_dmasync() macro.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<stevef@steveft21.ltcsamba>
CIFS: Workaround Samba bug in incorrectly setting extended security flag in negotiate response (which caused mounts
to fail to Samba server which have short, one or two byte, domain names).
Signed-off-by: Steve French (sfrench@us.ibm.com)
<stevef@steveft21.ltcsamba>
CIFS: xsymlink support part 1 of 2
Signed-off-by: Steve French (sfrench@us.ibm.com)
<hch@lst.de>
[PATCH] kill tmscsim ->proc_info
hrrible code like all proc_info implementations and no really usefull
information. We might want to add sysfs attributes if some users really
miss anything.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] clean up some more tmscsim scan logic
- cleanup checks in ->queuecommand, we only get here either for
inquiry or a found device now
- DCBmap in the acb is gone, was only used for debug prints after
the prevous changes
- kill some more debugging keyed of by ->scan_devices
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<g.liakhovetski@gmx.de>
[PATCH] tmscsim: remove unused / redundant bios_param
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jgarzik@pobox.com>
[PATCH] add ssleep(), kill scsi_sleep()
So, the kernel needs a 'sleep', but that token is far too common, so I
chose ssleep().
scsi_sleep() is a manually implemented msleep(), so I remove it.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
Add accessor functons for scsi_device 56 byte inquiry data
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
fix sym2 negotiation
The problems with domain validation were just the tip of the iceberg in
the sym2 driver. Most of its problems seem to come from an overly
complex set of negotiating rules, which I've swept away with this patch.
I also removed the ability to set parameters in the on-board bios and
have the driver respect them. (this hasn't worked for a while in 2.6
because after the driver sets them, Domain Validation resets them
again).
Finally, there was a really nasty bug where the driver negotiates
improperly when turning off DT clocking. If you simply turn it off, the
driver originally fell back to using the old WDTR/SDTR method of
negotiation. However, since it thought the bus was already wide, it
only emitted a SDTR, which causes the device to reset from wide to
narrow. Hence the driver thinks the device is wide and the device
thinks it is narrow => boom.
I redid the negotiation to predicate PPR messages on whether the device
claims support for them or not.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<rmk@flint.arm.linux.org.uk>
[PCMCIA] Use struct resource rather than sys_start/sys_stop
Convert 16-bit PCMCIA socket drivers to use the struct resource
rather than the sys_start and sys_stop members of pccard_mem_map.
<rmk@flint.arm.linux.org.uk>
[PCMCIA] Convert PCI socket drivers to use struct resource.
Convert PCI socket drivers to use the resource passed in rather than
pccard_mem_map's sys_start and sys_stop elements. This also means
that we convert the struct resource to a PCI bus region, thereby
performing any platform specific fixups which may be necessary.
<rmk@flint.arm.linux.org.uk>
[PCMCIA] Don't use sys_start for static-mapped sockets.
Add static_start element to pccard_mem_map - which is used by
statically mapped sockets to return the physical address which
should be used to access the memory region.
<rmk@flint.arm.linux.org.uk>
[PCMCIA] Remove pccard_mem_map's sys_start and sys_stop elements.
<jejb@ios.(none)>
Update to megaraid version 2.20.3.0
From: Mukker, Atul <Atulm@lsil.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] nsc-ircc driver crashes on shutdown
From: Petr Vandrovec <vandrove@vc.cvut.cz>
bk-dma-decleare-coherent-memory patch adds a requirement for
dma_free_coherent that dev cannot be NULL... But it can (nsc-ircc has no
suitable dev) and as dma_alloc_coherent allows NULL dev, dma_free_coherent
should allow it too IMHO.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<trini@kernel.crashing.org>
We weren't including <syslib/m8260_pci.h> from <asm/mpc8260.h>, so
_IO_BASE was defined to zero instead of isa_io_base.
Signed-Off-By: David Woodhouse <dwmw2@infradead.org>
Signed-Off-By: Tom Rini <trini@kernel.crashing.org>
<greg@kroah.com>
KREF: make kref_get() return void as it makes sense to do so.
Thanks to Kiran for bugging me to do this.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<corbet@lwn.net>
[PATCH] Remove struct bus_type->add()
I recently went looking for users of the add() method in struct
bus_type, only to discover that there are none. A query to Pat
confirmed that it is surplus and should come out. So here's a patch
that does it.
While I was at it, I updated Documentation/driver-model/bus.txt to at
least get rid of the blatantly untrue stuff; it is still rather far from
being up to date, however. I may be able to fix that later on.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<davej@redhat.com>
[CPUFREQ] Introduce some defines for the longhaul version, and use them.
This makes some of the code quite a bit cleaner, and a lot more
obvious whats going on on which CPUs.
Signed-off-by: Dave Jones <davej@redhat.com>
<davej@redhat.com>
[CPUFREQ] Powersaver also has voltage scaling abilities.
We currently don't do voltage scaling, but we can at least set things up
to prepare for when we do.
Signed-off-by: Dave Jones <davej@redhat.com>
<davej@redhat.com>
[CPUFREQ] Remove extraneous comment
Signed-off-by: Dave Jones <davej@redhat.com>
<trini@kernel.crashing.org>
ppc32: Fix a compile error when CONFIG_PREP && !CONFIG_PREP_RESIDUAL
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: Fix a typo in cputable.c
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<davej@redhat.com>
[CPUFREQ] Prettyprint longhaul speeds.
If its >= 1000MHz print it as GHz.
Signed-off-by: Dave Jones <davej@redhat.com>
<davej@redhat.com>
[CPUFREQ] Further cleanups to longhaul driver using defines.
By defining the cpu type at startup, we can make a lot of comparisons
a lot more obvious what they are meaning.
Signed-off-by: Dave Jones <davej@redhat.com>
<davej@redhat.com>
[CPUFREQ] fix up random CodingStyle /whitespace regressions.
Signed-off-by: Dave Jones <davej@redhat.com>
<davej@redhat.com>
[CPUFREQ] Samuel2 can use eblcr to determine FSB.
From: Sven Traenkle.
here's a patch that solves some issues I have with the longhaul cpufreq
driver on my epia 6000CL/Via EDEN (actually reporting as CentaurHauls,
family 6, model 7, VIA Samuel 2). The driver tries to compute the fsb speed
while it could actually use the fixed values (as it does for model == 6).
I got this change from the via forum, so no credits to me.
Signed-off-by: Dave Jones <davej@redhat.com>
<davej@redhat.com>
[CPUFREQ] Fix reset-to-max-speed on unloading of longhaul driver.
From: Sven Traenkle
The second part adresses a problem of resetting the max cpu-freq when
unloading the driver. This didn't work for my cpu and I doubt it does
for other. There is no need to pass the computed index of the max.
multiplier in the clock_ratio[] table to longhault_table[] cause the
longhaul_setstate function works with the clock_ratio[] index.
Changing the while loop to a for loop with upper limit isn't actually
necessary as long as the driver is bug free, but thats IMHO not yet the
case, so I suggest this change in order to not loop endlessly or read
beyond the limits of the clock_ratio array.
Signed-off-by: Dave Jones <davej@redhat.com>
<davej@redhat.com>
[CPUFREQ] Merge on-demand cpufreq policy governor.
From: "Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com>
Signed-off-by: Dave Jones <davej@redhat.com>
<davej@redhat.com>
[CPUFREQ] Work around some broken userspace daemons.
Some daemons try to set the speed to the same speed we're currently
running at. Detect that, and bail out early before we fiddle
with registers and such.
Signed-off-by: Dave Jones <davej@redhat.com>
<mingo@elte.hu>
[PATCH] sched: fix timeslice calculations for HZ=1000.
The main benefit is that with the default HZ=1000 nice +19 tasks now get 5
msecs of timeslices, so the ratio of CPU use is linear. (nice 0 task gets
20 times more CPU time than a nice 19 task. Prior this change the ratio
was 1:10)
another effect is that nice 0 tasks now get a round 100 msecs of timeslices
(as intended), instead of 102 msecs.
here's a table of old/new timeslice values, for HZ=1000 and 100:
HZ=1000 ( HZ=100 )
old new ( old new )
nice -20: 200 200 ( 200 200 )
nice -19: 195 195 ( 190 190 )
...
nice 0: 102 100 ( 100 100 )
nice 1: 97 95 ( 90 90 )
nice 2: 92 90 ( 90 90 )
...
nice 17: 19 15 ( 10 10 )
nice 18: 14 10 ( 10 10 )
nice 19: 10 5 ( 10 10 )
i've tested the patch on x86.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] sched: cleanup init_idle()
Clean up init_idle to not use wake_up_forked_process, then undo all the stuff
that call does. Instead, do everything in init_idle.
Make double_rq_lock depend on CONFIG_SMP because it is no longer used on UP.
Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] sched: cleanup, improve sched <=> fork APIs
Move balancing and child-runs-first logic from fork.c into sched.c where
it belongs.
* Consolidate wake_up_forked_process and wake_up_forked_thread into
wake_up_new_process, and pass in clone_flags as suggested by Linus. This
removes a lot of code duplication and allows all logic to be handled in that
function.
* Don't do balance-on-clone balancing for vfork'ed threads.
* Don't do set_task_cpu or balance one clone in wake_up_new_process.
Instead do it in sched_fork to fix set_cpus_allowed races.
* Don't do child-runs-first for CLONE_VM processes, as there is obviously no
COW benifit to be had. This is a big one, it enables Andi's workload to run
well without clone balancing, because the OpenMP child threads can get
balanced off to other nodes *before* they start running and allocating
memory.
* Rename sched_balance_exec to sched_exec: hide the policy from the API.
From: Ingo Molnar <mingo@elte.hu>
rename wake_up_new_process -> wake_up_new_task.
in sched.c we are gradually moving away from the overloaded 'process' or
'thread' notion to the traditional task (or context) naming.
Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] kernel thread idle fix
Now that init_idle does not remove tasks from the runqueue, those
architectures that use kernel_thread instead of copy_process for the idle
task will break. To fix, ensure that CLONE_IDLETASK tasks are not put on
the runqueue in the first place.
Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@elte.hu>
[PATCH] sched: misc cleanups #2
- fix two stale comments
- cleanup
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] sched: make rt_task unlikely
From: Ingo Molnar <mingo@elte.hu>
RT tasks are unlikely, move this into rt_task() instead of open-coding it.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] sched: sched misc changes
Add some likely/unliklies, a for_each_cpu => for_each_cpu_online, and close
the sched_exit race.
From: Ingo Molnar <mingo@elte.hu>
fix a typo in a previous patch breaking RT scheduling & interactivity.
Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] sched: disable balance on clone
Don't balance on clone by default.
Balance on clone has a number of trivial performance failure cases, but it was
needed to get decent OpenMP performance on NUMA (Opteron) systems. Not doing
child-runs-first for new threads also solves this problem in a nicer way
(implemented in a previous patch).
Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] sched: remove balance on clone
This removes balance on clone capability altogether. I told Andi we wouldn't
remove it yet, but provided it is in a single small patch, he mightn't get too
upset.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@elte.hu>
[PATCH] sched: fork hotplug hanling cleanup
- remove the hotplug lock from around much of fork(), and re-copy the
cpus_allowed mask to solve the hotplug race cleanly.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Srivatsa Vaddagiri <vatsa@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] sched: consolidate sched domains
Teach the generic domains builder about SMT, and consolidate all
architecture specific domain code into that. Also, the SD_*_INIT macros can
now be redefined by arch code without duplicating the entire setup code.
This can be done by defining ARCH_HASH_SCHED_TUNE.
The generic builder has been simplified with the addition of a helper
macro which will probably prove to be useful to arch specific code as well
and should be exported if that is the case.
Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au>
From: Matthew Dobson <colpatch@us.ibm.com>
The attached patch is against 2.6.8-rc2-mm2, and removes Nick's
conditional definition & population of cpu_sibling_map[] in favor of my
unconditional ones. This does not affect how cpu_sibling_map is used, just
gives it broader scope.
From: Nick Piggin <nickpiggin@yahoo.com.au>
Small fix to sched-consolidate-domains.patch picked up by
From: Suresh <suresh.b.siddha@intel.com>
another sched consolidate domains fix
From: Nick Piggin <nickpiggin@yahoo.com.au>
Don't use cpu_sibling_map if !CONFIG_SCHED_SMT
This one spotted by Dimitri Sivanich <sivanich@sgi.com>
Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jbarnes@engr.sgi.com>
[PATCH] sched: limit cpuspan of node scheduler domains
This patch limits the cpu span of each node's scheduler domain to prevent
balancing across too many cpus. The cpus included in a node's domain are
determined by the SD_NODES_PER_DOMAIN define and the arch specific
sched_domain_node_span routine if ARCH_HAS_SCHED_DOMAIN is defined. If
ARCH_HAS_SCHED_DOMAIN is not defined, behavior is unchanged--all possible
cpus will be included in each node's scheduling domain. Currently, only
ia64 provides an arch specific sched_domain_node_span routine.
From: Jesse Barnes <jbarnes@engr.sgi.com>
This patch adds some more NUMA specific logic to the creation of scheduler
domains. Domains spanning all CPUs in a large system are too large to
schedule across efficiently, leading to livelocks and inordinate amounts of
time being spent in scheduler routines. With this patch applied, the node
scheduling domains for NUMA platforms will only contain a specified number
of nearby CPUs, based on the value of SD_NODES_PER_DOMAIN. It also allows
arches to override SD_NODE_INIT, which sets the domain scheduling parameters
for each node's domain. This is necessary especially for large systems.
Possible future directions:
o multilevel node hierarchy (e.g. node domains could contain 4 nodes
worth of CPUs, supernode domains could contain 32 nodes worth, etc. each
with their own SD_NODE_INIT values)
o more tweaking of SD_NODE_INIT values for good load balancing vs.
overhead tradeoffs
From: mita akinobu <amgta@yacht.ocn.ne.jp>
Compile fix
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sivanich@sgi.com>
[PATCH] sched: isolated sched domains
Here's a version of the isolated scheduler domain code that I mentioned in
an RFC on 7/22. This patch applies on top of 2.6.8-rc2-mm1 (to include all
of the new arch_init_sched_domain code). This patch also contains the 2
line fix to remove the check of first_cpu(sd->groups->cpumask)) that Jesse
sent in earlier.
Note that this has not been tested with CONFIG_SCHED_SMT. I hope that my
handling of those instances is OK.
Signed-off-by: Dimitri Sivanich <sivanich@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<colpatch@us.ibm.com>
[PATCH] Create cpu_sibling_map for PPC64
In light of some proposed changes in the sched_domains code, I coded up
this little ditty that simply creates and populates a cpu_sibling_map for
PPC64 machines. The patch just checks the CPU flags to determine if the
CPU supports SMT (aka Hyper-Threading aka Multi-Threading aka ...) and
fills in a mask of the siblings for each CPU in the system. This should
allow us to build sched_domains for PPC64 with generic code in
kernel/sched.c for the SMT systems. SMT is becoming more popular and is
turning up in more and more architectures. I don't think it will be too
long until this feature is supported by most arches...
Signed-off-by: Matthew Dobson <colpatch@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kernel@kolivas.org>
[PATCH] sched: adjust p4 per-cpu gain
The smt-nice handling is a little too aggressive by not estimating the per cpu
gain as high enough for pentium4 hyperthread. This patch changes the per
sibling cpu gain from 15% to 25%. The true per cpu gain is entirely dependant
on the workload but overall the 2 species of Pentium4 that support
hyperthreading have about 20-30% gain.
P.S: Anton - For the power processors that are now using this SMT nice
infrastructure it would be worth setting this value separately at 40%.
Signed-off-by: Con Kolivas <kernel@kolivas.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ricklind@us.ibm.com>
[PATCH] scheduler statistics
It adds lots of CPU scheduler stats in /proc/pid/stat. They are described in
the new Documentation//sched-stats.txt
We were carrying this patch offline for some time, but as there's still
considerable ongoing work in this area, and as the new stats are a
configuration option, I think it's best that this capability be in the base
kernel.
Nick removed a fair amount of statistics that he wasn't using. The full patch
gathers more information. In particular, his patch doesn't include the code
to measure the latency between the time a process is made runnable and the
time it hits a processor which will be key to measuring interactivity changes.
He passed his changes back to me and I got finished merging his changes with
the current statistics patches just before OLS. I believe this is largely a
superset of the patch you grabbed and should port relatively easily too.
Versions also exist for
2.6.8-rc2
2.6.8-rc2-mm1
2.6.8-rc2-mm2
at
http://eaglet.rain.com/rick/linux/schedstat/patches/
and within 24 hours at
http://oss.software.ibm.com/linux/patches/?patch_id=730&...
The version below is for 2.6.8-rc2-mm2 without the staircase code and has
been compiled cleanly but not yet run.
From: Ingo Molnar <mingo@elte.hu>
this code needs a couple of cleanups before it can go into mainline:
fs/proc/array.c, fs/proc/base.c, fs/proc/proc_misc.c:
- moved the new /proc/<PID>/stat fields to /proc/<PID>/schedstat,
because the new fields break older procps. It's cleaner this way
anyway. This moving of fields necessiated a bump to version 10.
Documentation/sched-stats.txt:
- updated sched-stats.txt for version 10
- wake_up_forked_thread() => wake_up_new_task()
- updated the per-process field description
Kconfig:
- removed the default y and made the option dependent on DEBUG_KERNEL.
This is really for scheduler analysis, normal users dont need the
overhead.
include/linux/sched.h:
- moved the definitions into kernel/sched.c - this fixes UP compilation
and is cleaner.
- also moved the sched-domain definitions to sched.c - now that the
sched-domains internals are not exposed to architectures this is
doable. It's also necessary due to the previous change.
kernel/fork.c:
- moved the ->sched_info init to sched_fork() where it belongs.
kernel/sched.c:
- wake_up_forked_thread() -> wake_up_new_task(), wuft_cnt -> wunt_cnt,
wuft_moved -> wunt_moved.
- wunt_cnt and wunt_moved were defined by never updated - added the
missing code to wake_up_new_task().
- whitespace/style police
- removed whitespace changes done to code not related to schedstats -
i'll send a separate patch for these (and more).
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nathanl@austin.ibm.com>
[PATCH] move CONFIG_SCHEDSTATS to arch/ppc64/Kconfig.debug
Otherwise it shows up under "iSeries device drivers", which doesn't seem
right.
Signed-off-by: Nathan Lynch <nathanl@austin.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] sched: consolidate init_idle() and fork_by_hand()
It appears that init_idle() and fork_by_hand() could be combined into a
single method that calls init_idle() on behalf of the caller.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] sched: sparc32 fixes
Fix up sparc32 properly.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] schedstat: UP fix
SMP fix --
for_each_domain() is not defined if not CONFIG_SMP, so show_schedstat
needed a couple of extra ifdefs.
Signed-off-by: Rick Lindsley <ricklind@us.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@elte.hu>
[PATCH] sched: whitespace cleanups
- whitespace and style cleanups
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@elte.hu>
[PATCH] sched: nonlinear timeslices
* Nick Piggin <nickpiggin@yahoo.com.au> wrote:
> Increasing priority (negative nice) doesn't have much impact. -20 CPU
> hog only gets about double the CPU of a 0 priority CPU hog and only
> about 120% the CPU time of a nice -10 hog.
this is a property of the base scheduler as well.
We can do a nonlinear timeslice distribution trivially - the attached
patch implements the following timeslice distribution ontop of
2.6.8-rc3-mm1:
[ -20 ... 0 ... 19 ] => [800ms ... 100ms ... 5ms]
the nice-20/nice+19 ratio is now 1:160 - sufficient for all aspects.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@elte.hu>
[PATCH] sched: new task fix
Rusty noticed that we update the parent ->avg_sleep without holding the
runqueue lock. Also the code needed cleanups.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@redhat.com>
[PATCH] permit sleeping in release_task()
release_task() calls proc_pid_flush() call dput(), which can sleep. But
that's a late-in-exit no-preempt path with CONFIG_PREEMPT.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@elte.hu>
[PATCH] sched: self-reaping atomicity fix
disable preemption in the self-reap codepath, as such tasks may not be on
the tasklist anymore and CPU-hotplug relies on the tasklist to migrate
tasks.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@elte.hu>
[PATCH] sched: smt fixes
while looking at HT scheduler bugreports and boot failures i discovered a
bad assumption in most of the HT scheduling code: that resched_task() can
be called without holding the task's runqueue.
This is most definitely not valid - doing it without locking can lead to
the task on that CPU exiting, and this CPU corrupting the (ex-) task_info
struct. It can also lead to HT-wakeup races with task switching on that
other CPU. (this_CPU marking the wrong task on that_CPU as need_resched -
resulting in e.g. idle wakeups not working.)
The attached patch against fixes it all up. Changes:
- resched_task() needs to touch the task so the runqueue lock of that CPU
must be held: resched_task() now enforces this rule.
- wake_priority_sleeper() was called without holding the runqueue lock.
- wake_sleeping_dependent() needs to hold the runqueue locks of all
siblings (2 typically). Effects of this ripples back to schedule() as
well - in the non-SMT case it gets compiled out so it's fine.
- dependent_sleeper() needs the runqueue locks too - and it's slightly
harder because it wants to know the 'next task' info which might change
during the lock-drop/reacquire. Ripple effect on schedule() => compiled
out on non-SMT so fine.
- resched_task() was disabling preemption for no good reason - all paths
that called this function had either a spinlock held or irqs disabled.
Compiled & booted on x86 SMP and UP, with and without SMT. Booted the
SMT kernel on a real SMP+HT box as well. (Unpatched kernel wouldn't even
boot with the resched_task() assert in place.)
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@elte.hu>
[PATCH] i386 virtual memory layout rework
Rework the i386 mm layout to allow applications to allocate more virtual
memory, and larger contiguous chunks.
- the patch is compatible with existing architectures that either make
use of HAVE_ARCH_UNMAPPED_AREA or use the default mmap() allocator - there
is no change in behavior.
- 64-bit architectures can use the same mechanism to clean up 32-bit
compatibility layouts: by defining HAVE_ARCH_PICK_MMAP_LAYOUT and
providing a arch_pick_mmap_layout() function - which can then decide
between various mmap() layout functions.
- I also introduced a new personality bit (ADDR_COMPAT_LAYOUT) to signal
older binaries that dont have PT_GNU_STACK. x86 uses this to revert back
to the stock layout. I also changed x86 to not clear the personality bits
upon exec(), like x86-64 already does.
- once every architecture that uses HAVE_ARCH_UNMAPPED_AREA has defined
its arch_pick_mmap_layout() function, we can get rid of
HAVE_ARCH_UNMAPPED_AREA altogether, as a final cleanup.
the new layout generation function (__get_unmapped_area()) got significant
testing in FC1/2, so i'm pretty confident it's robust.
Compiles & boots fine on an 'old' and on a 'new' x86 distro as well.
The two known breakages were:
http://www.redhatconfig.com/msg/67248.html
[ 'cyzload' third-party utility broke. ]
http://www.zipworld.com/au/~akpm/dde.tar.gz
[ your editor broke :-) ]
both were caused by application bugs that did:
int ret = malloc();
if (ret <= 0)
failure;
such bugs are easy to spot if they happen, and if it happens it's possible
to work it around immediately without having to change the binary, via the
setarch patch.
No other application has been found to be affected, and this particular
change got pretty wide coverage already over RHEL3 and exec-shield, it's in
use for more than a year.
The setarch utility can be used to trigger the compatibility layout on
x86, the following version has been patched to take the `-L' option:
http://people.redhat.com/mingo/flexible-mmap/setarch-1.4-...
"setarch -L i386 <command>" will run the command with the old layout.
From: Hugh Dickins <hugh@veritas.com>
The problem is in the flexible mmap patch: arch_get_unmapped_area_topdown
is liable to give your mmap vm_start above TASK_SIZE with vm_end wrapped;
which is confusing, and ends up as that BUG_ON(mm->map_count).
The patch below stops that behaviour, but it's not the full solution:
wilson_mmap_test -s 1000 then simply cannot allocate memory for the large
mmap, whereas it works fine non-top-down.
I think it's wrong to interpret a large or rlim_infinite stack rlimit as
an inviolable request to reserve that much for the stack: it makes much less
VM available than bottom up, not what was intended. Perhaps top down should
go bottom up (instead of belly up) when it fails - but I'd probably better
leave that to Ingo.
Or perhaps the default should place stack below text (as WLI suggested and
ELF intended, with its text defaulting to 0x08048000, small progs sharing
page table between stack and text and data); with a further personality for
those needing bigger stack.
From: Ingo Molnar <mingo@elte.hu>
- fall back to the bottom-up layout if the stack can grow unlimited (if
the stack ulimit has been set to RLIM_INFINITY)
- try the bottom-up allocator if the top-down allocator fails - this can
utilize the hole between the true bottom of the stack and its ulimit, as a
last-resort effort.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<arjanv@redhat.com>
[PATCH] flexmmap patchkit: fix for 32 bit emu for 64 bit arches
Utz Lehmann <u.lehmann@de.tecosim.com> found a problem with the flexmmap
patches on x86-64, what he is seeing is that the 32 bit personality isn't
set at the first point of setting the allocator strategy. The solution is
simple, in binfmt_elf the personality is set so put the pick-layout
function there. Please consider,
Signed-off-by: Arjan van de Ven <arjanv@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<arjanv@redhat.com>
[PATCH] sysctl tunable for flexmmap
Create /proc/sys/vm/legacy_va_layout. If this is non-zero, the kernel
will use the old mmap layout for all tasks. it presently defaults to zero
(the new layout).
From: William Lee Irwin III <wli@holomorphy.com>
hugetlb CONFIG_SYSCTL=n fix
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<arjanv@redhat.com>
[PATCH] flex mmap for s390(x)
Below is a patch from Pete Zaitcev (zaitcev@redhat.com) to also use the
flex mmap infrastructure for s390(x). The IBM Domino guys *really* seem to
want this.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] flexible-mmap for ppc64
From: <arjanv@redhat.com>
Implement the new address space layout for 32-bit apps running on ppc64.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Uml base patch
The main part of UML; it is the last distributed patch for 2.6.7 Removes skas
support from the main UML patch; apply or get conflicts.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jdike@addtoit.com>
[PATCH] UML: remove the COW block driver
The code is still there but it's not built. Below is a patch which removes
it totally.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jdike@addtoit.com>
[PATCH] UML updates
The patch below brings UML up to date with some changes in the rest of the
kernel:
an updated defconfig
checksum.h includes in6.h to get a definition of in6_addr
added a missing cpu_{set,clear} change
removed include/asm-um/module.h since it's really a link
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] uml: CPU scheduler update
Update UML for CPU scheduler changes
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: rename console_device
In the -mm tree (in this moment) and not in 2.6.7 there is another
console_device in include/linux/console.h; so I renamed the UML one (it's
static).
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Readds (just for now) ghash.h for UML
Just for now and just for UML; it will go away.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Avoid that gcc breaks UML with "unit at a time" compilation mode.
Avoid that gcc breaks UML with "unit at a time" compilation mode.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Fixes an host fd leak caused by hostfs.
In detail, on 2.4 we used force_delete() to make sure inode were not cached,
and we then close the host file when the inode is cleared; when porting to 2.6
the "force_delete" thing was dropped, and this patch adds a fix for this (by
setting drop_inode = generic_delete_inode). Search for drop_inode in the 2.6
Documentation/filesystems/vfs.txt for info about this.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Adds LEGACY_PTY config option
The second adds the LEGACY_PTY config option. Without it, with late 2.6 kernels
/dev/ptyxx won't work. In fact, with those kernels, root_fs_toms does not
work, because it's "unable to allocate TTY pair". And removes the dead option
"UNIX98_PTY_COUNT" (just commented out for now).
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Makes "make help ARCH=um" work.
Makes "make help ARCH=um" work.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Fixes "fixdep.c" to support arch/um/include/uml-config.h.
You probably saw that if you change one config option, even if
linux/autoconf.h (which is included by everything) changes, the kernel is
smart enough not to recompile everything. But with UML this no more holds.
Why? Because, as you see in this patch, fixdep avoids making anything depend
onto linux/autoconf.h *explicitly*, but nobody taught him to do the same for
arch/um/include/uml-config.h. So apply this patch. Do not say "I don't want
to change the generic Kbuild for one arch": this cannot hurt. It's a bugfix
for us, a no-op for others.
Note: with this patch, fixdep will still add a dependency from a file
containing UML_CONFIG_BYE onto CONFIG_BYE. Since someone could think that
fixdep should grep for [^A-Z_]CONFIG_ rather than simply for CONFIG_, I've
added a comment that ask *not to fix* this "bug".
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Kill useless warnings
Fixes some little warnings about "Defined but not used ..." by #ifdef'ing
things
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Avoids compile failure when host misses tkill().
Avoids compile failure when host misses tkill(), by simply using kill() in
that case.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Reduces code in *_user files, by moving it in _kern files if already possible.
Reduces code in *_user files, by moving it in _kern files if already possible.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Fixes raw() and uses it in check_one_sigio; also fixes a silly panic (EINTR returned by call).
Fixes raw() and uses it in check_one_sigio; also fixes a silly panic (EINTR
returned by call).
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Folds hostaudio_user.c into hostaudio_kern.c.
Folds hostaudio_user.c into hostaudio_kern.c. A lot of code less. Also note
that I no more update ppos(as I used to do in the 2.4 patch): I checked that
OSS never changes ppos, so hostaudio did the right thing.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Use PTRACE_SCEMU (the so-called SYSEMU) to reduce syscall cost.
Turns off syscall emulation patch for ptrace (SYSEMU) on. SYSEMU is a
performance-patch introduced by Laurent Vivier. It changes behaviour of
ptrace() and helps reducing host context switch rate. To make it working, you
need a kernel patch for your host, too. See
http://perso.wanadoo.fr/laurent.vivier/UML/ for further information.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Adds the "nosysemu" command line parameter to disable SYSEMU
Adds the "nosysemu" command line parameter to disable SYSEMU
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Adds /proc/sysemu to toggle SYSEMU usage.
Adds /proc/sysemu to toggle SYSEMU usage.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Fix for sysemu patches
- Correct some silly errors (dereferencing a pointer before checking if it's
!= NULL when creating /proc/sysemu, some error messages)
- separate using_sysemu from sysemu_supported (so to refuse to activate
sysemu if it is not supported, avoiding panics)
- not probe sysemu if in tt mode.
Signed-off-by: <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Handles correctly errno == EINTR in lots of places.
On various places (mostly waitpid() calls) this patch makes sure that if errno
== EINTR on return, then the syscall is endlessly retried. It also defines a
simple generic way to do this.
Signed-off-by: <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Adds some exports
Adds some exports
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[CPUFREQ] Fix silly typo that broke the compile.
Signed-off-by: Dave Jones <davej@redhat.com>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Avoids a panic for a legal situation
From: Alex Züpke <azu@sysgo.de>, and me
SKAS mode is like 4G/4G (here we have actually 3G/3G) for guest processes, so
when checking for kernel stack overflow, we must first make sure we are
checking a kernel-space address. Also, correctly test for stack overflows
(i.e. check if there is less than 1k of stack left; see
arch/i386/kernel/irq.c:do_IRQ()). And also, THREAD_SIZE != PAGE_SIZE * 2, in
general (though this setting is almost never changed, so we didn't notice
this1). Thanks to the good eye of Alex Züpke <azu@sysgo.de> for first seeing
this bug, and providing a test program:
/*
* trigger.c - triggers panic("Kernel stack overflow") in UML
*
* 20040630, azu@sysgo.de
*/
#include <stdio.h>
#include <setjmp.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/mman.h>
#define LOW 0xa0000000
#define HIGH 0xb0000000
int main(int argc, char **argv)
{
unsigned long addr;
int fd;
fd = open("/dev/zero", O_RDWR);
printf("This may take some time ... one more cup of coffee ...\n");
for(addr = LOW; addr < HIGH; addr += 0x1000)
{
pid_t p;
if(mmap((void*)addr, 0x1000, PROT_READ, MAP_SHARED | MAP_FIXED, fd, 0) == MAP_FAILED)
printf("mmap failed\n");
p = fork();
if(p == -1)
printf("fork failed\n");
if(p == 0)
{
/* child context */
int *p = (int *)addr;
volatile int x;
x = *p;
return 0;
}
/* father context */
waitpid(p, 0, 0);
if(munmap((void*)addr, 0x1000) == -1)
printf("munmap failed\n");
}
close(fd);
printf("done\n");
}
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Removes dead code in trap_kern.c
That code comes from the out_of_memory section; in 2.4 it was correct to put
it for "default:", since it was called when handle_mm_fault() return value was
!= 0, 1, 2, i.e. it was 3, OOM (but the i386 code put it out of line, for
better performance). Here, instead, the OOM case is handled on its own, so if
handle_mm_fault() != from the listed cases we must BUG().
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Make malloc() call vmalloc if needed. Needed for hostfs on 2.6 host.
From: Oleg Drokin <green@linuxhacker.ru>, Jeff Dike <jdike@addtoit.com>, and
me
If size > 128K, with this patch malloc will call vmalloc; free will detect
whether to call vfree or kfree or __real_free(). The 2.4 version could forget
free()ing something; this has been fixed.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: little-kmalloc
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Fix os_process_pc and os_process_parent for corner cases.
Update os_process_pc and os_process_parent: now a PID can be > 32768 (so
increase number of digits) and make it work even with spaces in the command
name.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<coywolf@greatcn.org>
[PATCH] uml: remove a group of unused bh functions
This patch removes a group of unused bh functions in um. This 2.2 legacy
code should be cleaned up.
Signed-off-by: Coywolf Qi Hunt <coywolf@greatcn.org>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jdike@addtoit.com>
[PATCH] UML updates
The patch below brings UML up to date with interface changes and the like
irq.c includes profile.h to bring in a missing definition
use the cpu_{set,clear} interface
use the new get_signal_to_deliver interface
define instruction_pointer
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jdike@addtoit.com>
[PATCH] UML fixes
The patch below fixes a few UML-specific bugs not related to the rest of the
kernel
a bogus error return and some formatting in the fork code
correct calculation of task.thread.kernel_stack
remove a bogus panic
a couple of fixes to allow UML to boot in the presence of exec-shield
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jdike@addtoit.com>
[PATCH] Make UML build and run
This patch includes the following -
updated defconfig
move uml.lds.S and main.c from arch/um to arch/um/kernel per Sam's suggestions
steal bitops.c from arch/i386
convert all calls to open_private_file to dentry_open
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mika@osdl.org>
[PATCH] Fix drivers/isdn/hisax/avm_pci.c build warning when !CONFIG_ISAPNP
CC [M] drivers/isdn/hisax/avm_pci.o
drivers/isdn/hisax/avm_pci.c: In function `setup_avm_pcipnp':
drivers/isdn/hisax/avm_pci.c:817: warning: label `ready' defined but not used
Patch is big because I replaced the '} else { ... }' with 'goto ready; }'
and so had to remove one level of indentation from code.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akropel1@rochester.rr.com>
[PATCH] preset loops_per_jiffy for faster booting
Adds a kernel boot parameter "lpj=NNN" which allows the operator to specify
the loops-per-jiffy value. This shaves up to a quarter of a second off
boot times, which are critical for embedded appliances.
It's a bit thin, but the code is in __init.
Signed-off-by: Adam Kropelin <akropel1@rochester.rr.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ak@suse.de>
[PATCH] New x86-64 merge
This fixes various issues in the previous update, in particular
a kernel without CONFIG_GART_IOMMU should boot now again,
The kernel discoverys PCI BUS<->CPU affinity on AMD systems
now. It is so far used by dma_alloc_coherent to allocate memory
Experimental patches to add this to sysfs exist, but they're not
included yet. On systems with no memory on a CPU this information may
be wrong.
It has a new experimental CONFIG_UNORDERED_IO option. When enabled
it uses write combining for stores to device iomemory mapping. This
may give better performance with some device drivers, but has a slight
risk of breaking drivers (in general if a driver works on ia64,ppc64,sparc64
it should also work). Based on some discussions with Grant Grundler.
It requires the driver to use memory barriers properly. I would be interested
in feedback on any performance changes you're seeing. For a production system I
would recommend to keep it turned off(although I run it on all my systems and
haven't run into any problems yet)
ACPI and Centrino speedstep is enabled now for Nocona systems.
The IOMMU code does lazy merging by default now, which should be safe
and may increase performance on block IO. It also avoids SAC force by default
now.
The machine check code has been improved again, hopefully it is good
now. It will log now machine check events from before the last reset.
And various other fixes.
The x86-64 parts are now gcc 3.5 clean.
And various other fixes
- Update defconfig
- Reset lost ticks on lost time warning, print RIP.
- Make TASK_SIZE test for 32bit (Arjan van de Ven)
- Work around bug in generic code that broke pcibus_to_cpumask
- Actually fix dummy iommu code
- Compile i386 acpi and speedstep-centrino cpufreq modules
- Export cpu_khz
- Fix compilation without GART_IOMMU
- Optimize find_*_bit functions for small fields
- Discover nodes near PCI busses on K8 (Travis Betak, changed by me)
- Optimize gart tlb flush slightly
- Add experimental CONFIG_UNORDERED_IO for unordered IO stores
- Add 32bit emulation for PTRACE_GETEVENTMSG
- Fix kernel_fpu_{begin,end} for preemptive kernels (Alexander Nyberg)
- Readd proper check for biomerge (got lost)
- Set up 32bit vsyscall page for ptrace early
- Add 32bit emulation for lookup_dcookie() for oprofile
- Export copy_page / clear_page
- Use rex prefix in save_init_fpu fxsave (Jan Beulich)
- Make it compile again
- Fix handling of hwdev == NULL (= ISA/LPC devices) in swiotlb
- Convert PCI DMA code to dma devices
- Change IOMMU code to use dummy fallback device instead of hardcoded
NULL tests everywhere.
- Test iommu_sac_force instead of nommu for DAC supported macro
(will cause more drivers to use DAC)
- Harden non IOMMU dma_alloc_consistent code to fail less likely.
- Remove use of strsep in option parsers
- Remove duplicated exports (Arjan van der Ven)
- Fix EFAULT checking in ptrace (John Blackwood)
- Update defconfig
- Remove dead URL from boot/setup.S (R.J. Wysocki)
- Use compat_sigval_t instead of sigval_t32 (Al Viro)
- Nanooptimization in 32bit ptregs calls
- Fix gcc 3.5 compilation in mtrr.h
- Pass pt_regs as pointer to avoid illegal pass by reference (for gcc 3.5)
- Make set_bit take int not long (Harald Dunkel)
- Avoid panic on pci_map_sg and pci_alloc_consistent overflow in GART IOMMU
- Handle large lost time delays in HPET code (Suresh B. Siddha)
- Work around theoretical bugs in prefetch handling (suggested by Jamie Lokier)
- Remove mtrr_strings declaration for gcc 3.5
- Set KBUILD_IMAGE for make rpm (William Lee Irwin III)
- Add iommu=noaperture to not touch the aperture
- Clean up argument parsing for iommu= option
- Export symbols for xchgadd based rwsems (still disabled)
- Define iommu_bio_merge for !CONFIG_GART_IOMMU
- Don't use backwards rep ; movsb for memmove
- Out line bitmap search functions (saves 8k .text, from i386)
- Convert bitmap search functions to 64bit accesses and optimize them
a bit.
- Handle corrupted page tables in page fault handler
- Set iommu_merge (without force) to on by default again.
- Don't do bio merging by default for iommu=merge. This should make it
safe to use again
- Add iommu=biomerge option to enable BIO merging (like old iommu=merge)
- Fix iommu=memaper=... parsing
- More MCE fixes (based on a patch by Eric Morton, heavily changed by me)
- Fix check for banks causing exceptions
- Allow to reinit MCEs later even after mce=off, fix wrong
use of __initdata
to disable at boot, but reenable later.
- Log left over machine checks after boot and resume
- Fix missing prototype warning with CPU_FREQ on
- Fix parsing of noexec=on (Ian Hastie)
- Fix warning in ia32_binfmt.c
- Resync time variable cpu frequency handling with i386
- Resync msr.c with i386
- Add 0x60 level 1 intel cache descriptor (from i386)
- Remove duplicated 32bit ioctls (Arnd Bergmann)
- Enable -msoft-float (from i386)
- Use faster version of FPU hang fix - handle the exception
* a bit experimental, if you see "kernel ... math error" events
in the log please report.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] first/next_cpu returns values > NR_CPUS
Zwane Mwaikambo <zwane@fsmlabs.com> wrote:
The following caused some fireworks whilst merging i386 cpu hotplug.
any_online_cpu(0x2) returns 32 on i386 if we're forced to continue past the
only set bit due to the additional find_first_bit in the find_next_bit i386
implementation. Not wanting to change current behaviour in the bitops
primitives and since the NR_CPUS thing is a cpumask issue, i've opted to fix
next_cpu() and first_cpu() instead.
This might save a couple of lines of code.
From: <akpm@osdl.org>
Fix cross-arch ulong/int disaster with find_next_bit().
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<guillaume.thouvenin@bull.net>
[PATCH] watchdog: fix warning "defined but not used"
Function wdtpci_init_one() in file wdt_pci.c generates a warning when
compiling the watchdog driver.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<haveblue@us.ibm.com>
[PATCH] don't pass mem_map into init functions
When using CONFIG_NONLINEAR, a zone's mem_map isn't contiguous, and isn't
allocated in the same place. This means that nonlinear doesn't really have
a mem_map[] to pass into free_area_init_node() or memmap_init_zone() which
makes any sense.
So, this patch removes the 'struct page *mem_map' argument to both of
those functions. All non-NUMA architectures just pass a NULL in there,
which is ignored. The solution on the NUMA arches is to pass the mem_map in
via the pgdat, which works just fine.
To replace the removed arguments, a call to pfn_to_page(node_start_pfn) is
made. This is valid because all of the pfn_to_page() implementations rely
only on the pgdats, which are already set up at this time. Plus, the
pfn_to_page() method should work for any future nonlinear-type code.
Finally, the patch creates a function: node_alloc_mem_map(), which I plan
to effectively #ifdef out for nonlinear at some future date.
Compile tested and booted on SMP x86, NUMAQ, and ppc64.
From: Jesse Barnes <jbarnes@engr.sgi.com>
Fix up ia64 specific memory map init function in light of Dave's
memmap_init cleanups.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
From: Dave Hansen <haveblue@us.ibm.com>
Looks like I missed a couple of architectures. This patch, on top of my
previous one and Jesse's should clean up the rest.
From: William Lee Irwin III <wli@holomorphy.com>
x86-64 wouldn't compile with NUMA support on, as node_alloc_mem_map()
references mem_map outside #ifdefs on CONFIG_NUMA/CONFIG_DISCONTIGMEM. This
patch wraps that reference in such an #ifdef.
From: William Lee Irwin III <wli@holomorphy.com>
Initializing NODE_DATA(nid)->node_mem_map prior to calling it should do.
From: Dave Hansen <haveblue@us.ibm.com>
Rick, I bet you didn't think your nerf weapons would be so effective in
getting that compile error fixed, did you?
Applying the attached patch and commenting out this line:
arch/i386/kernel/nmi.c: In function `proc_unknown_nmi_panic':
arch/i386/kernel/nmi.c:558: too few arguments to function `proc_dointvec'
will let it compile.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] idt77252.c: add missing pci_enable_device()
Add pci_enable_device()/pci_disable_device(). In the past, drivers often
worked without this, but it is now required in order to route PCI
interrupts correctly.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<yoshfuji@linux-ipv6.org>
[IPV6]: Fix device handling in ip6_route_add().
Signed-off-by: HIDEAKI Yoshifuji <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<bjorn.helgaas@hp.com>
[PATCH] ip2main.c: add missing pci_enable_device()
I don't have this hardware, so this has been compiled but not tested.
Add pci_enable_device()/pci_disable_device In the past, drivers often worked
without this, but it is now required in order to route PCI interrupts
correctly. In addition, this driver incorrectly used the IRQ value from PCI
config space rather than the one in the struct pci_dev.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] tpam_main.c: add missing pci_enable_device()
Add pci_enable_device()/pci_disable_device(). In the past, drivers
often worked without this, but it is now required in order to route
PCI interrupts correctly.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] ibmasm: add missing pci_enable_device()
Add pci_enable_device()/pci_disable_device(). In the past, drivers often
worked without this, but it is now required in order to route PCI
interrupts correctly.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] hp100.c: add missing pci_enable_device()
Add pci_enable_device()/pci_disable_device(). In the past, drivers often
worked without this, but it is now required in order to route PCI interrupts
correctly.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] ioc3-eth.c: add missing pci_enable_device()
Add pci_enable_device()/pci_disable_device(). In the past, drivers often
worked without this, but it is now required in order to route PCI interrupts
correctly.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] de4x5.c: add missing pci_enable_device()
Add pci_enable_device()/pci_disable_device(). In the past, drivers
often worked without this, but it is now required in order to route
PCI interrupts correctly.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] cpqfc: add missing pci_enable_device()
Add pci_enable_device()/pci_disable_device(). In the past, drivers
often worked without this, but it is now required in order to route
PCI interrupts correctly.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<suparna@in.ibm.com>
[PATCH] AIO: retry infrastructure fixes and enhancements
From: Daniel McNeil <daniel@osdl.org>
From: Chris Mason <mason@suse.com>
AIO: retry infrastructure fixes and enhancements
Reorganises, comments and fixes the AIO retry logic. Fixes
and enhancements include:
- Split iocb setup and execution in io_submit
(also fixes io_submit error reporting)
- Use aio workqueue instead of keventd for retries
- Default high level retry methods
- Subtle use_mm/unuse_mm fix
- Code commenting
- Fix aio process hang on EINVAL (Daniel McNeil)
- Hold the context lock across unuse_mm
- Acquire task_lock in use_mm()
- Allow fops to override the retry method with their own
- Elevated ref count for AIO retries (Daniel McNeil)
- set_fs needed when calling use_mm
- Flush workqueue on __put_ioctx (Chris Mason)
- Fix io_cancel to work with retries (Chris Mason)
- Read-immediate option for socket/pipe retry support
Note on default high-level retry methods support
================================================
High-level retry methods allows an AIO request to be executed as a series of
non-blocking iterations, where each iteration retries the remaining part of
the request from where the last iteration left off, by reissuing the
corresponding AIO fop routine with modified arguments representing the
remaining I/O. The retries are "kicked" via the AIO waitqueue callback
aio_wake_function() which replaces the default wait queue entry used for
blocking waits.
The high level retry infrastructure is responsible for running the
iterations in the mm context (address space) of the caller, and ensures that
only one retry instance is active at a given time, thus relieving the fops
themselves from having to deal with potential races of that sort.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<suparna@in.ibm.com>
[PATCH] AIO: Splice runlist for fairness across io contexts
This patch tries be a little fairer across multiple io contexts in handling
retries, helping make sure progress happens uniformly across different io
contexts (especially if they are acting on independent queues).
It splices the ioctx runlist before processing it in __aio_run_iocbs. If
new iocbs get added to the ctx in meantime, it queues a fresh workqueue
entry instead of handling them righaway, so that other ioctxs' retries get
a chance to be processed before the newer entries in the queue.
This might make a difference in a situation where retries are getting
queued very fast on one ioctx, while the workqueue entry for another ioctx
is stuck behind it. I've only seen this occasionally earlier and can't
recreate it consistently, but may be worth including anyway.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<suparna@in.ibm.com>
[PATCH] AIO: workqueue context switch reduction
From: Chris Mason
I compared the 2.6 pipetest results with the 2.4 suse kernel, and 2.6 was
roughly 40% slower. During the pipetest run, 2.6 generates ~600,000
context switches per second while 2.4 generates 30 or so.
aio-context-switch (attached) has a few changes that reduces our context
switch rate, and bring performance back up to 2.4 levels. These have only
really been tested against pipetest, they might make other workloads worse.
The basic theory behind the patch is that it is better for the userland
process to call run_iocbs than it is to schedule away and let the worker
thread do it.
1) on io_submit, use run_iocbs instead of run_iocb
2) on io_getevents, call run_iocbs if no events were available.
3) don't let two procs call run_iocbs for the same context at the same
time. They just end up bouncing on spinlocks.
The first three optimizations got me down to 360,000 context switches per
second, and they help build a little structure to allow optimization #4,
which uses queue_delayed_work(HZ/10) instead of queue_work.
That brings down the number of context switches to 2.4 levels.
Adds aio_run_all_iocbs so that normal processes can run all the pending
retries on the run list. This allows worker threads to keep using list
splicing, but regular procs get to run the list until it stays empty. The
end result should be less work for the worker threads.
I was able to trigger short stalls (1sec) with aio-stress, and with the
current patch they are gone. Could be wishful thinking on my part though,
please let me know how this works for you.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<zaitcev@redhat.com>
[PATCH] Make MAX_INIT_ARGS 32
We at Red Hat shipped a larger number of arguments for quite some time, it
was required for installations on IBM mainframe (s390), which doesn't have
a good way to pass arguments.
There are a number of reasonable situations that go past the current limits
of 8. One that comes to mind is when you want to perform a manual vnc
install on a headless machine using anaconda. This requires passing in a
number of parameters to get anaconda past the initial (no-gui) loader
screens.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ak@suse.de>
[PATCH] md: make MD no device warning KERN_WARNING
Prevents some noise during boot up when no MD volumes are found.
I think I picked it up from someone else, but I cannot remember from whom
(sorry)
Cc: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] ia64: dma_mapping fix
We need to be able to dereference struct device in
include/asm-ia64/dma-mapping.h.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<arjanv@redhat.com>
[PATCH] Automatically enable bigsmp on big HP machines
This enables apic=bigsmp automatically on some big HP machines that need
it. This makes them boot without kernel parameters on a generic arch
kernel.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rl@hellgate.ch>
[PATCH] Fix /proc/pid/statm documentation
I really wanted /proc/pid/statm to die and I still believe the
reasoning is valid. As it doesn't look like that is going to happen,
though, I offer this fix for the respective documentation. Note: lrs/drs
fields are switched.
Signed-off-by: Roger Luethi <rl@hellgate.ch>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lkml@felipe-alfaro.com>
[NETFILTER]: Missing netfilter_ipv4.c include in conntrack proto code.
Signed-off-by: Felipe Alfaro Solana <lkml@felipe-alfaro.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<hugh@veritas.com>
[PATCH] rmaplock: PageAnon in mapping
First of a batch of five patches to eliminate rmap's page_map_lock, replace
its trylocking by spinlocking, and use anon_vma to speed up swapoff.
Patches updated from the originals against 2.6.7-mm7: nothing new so I won't
spam the list, but including Manfred's SLAB_DESTROY_BY_RCU fixes, and omitting
the unuse_process mmap_sem fix already in 2.6.8-rc3.
This patch:
Replace the PG_anon page->flags bit by setting the lower bit of the pointer in
page->mapping when it's anon_vma: PAGE_MAPPING_ANON bit.
We're about to eliminate the locking which kept the flags and mapping in
synch: it's much easier to work on a local copy of page->mapping, than worry
about whether flags and mapping are in synch (though I imagine it could be
done, at greater cost, with some barriers).
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hugh@veritas.com>
[PATCH] rmaplock: kill page_map_lock
The pte_chains rmap used pte_chain_lock (bit_spin_lock on PG_chainlock) to
lock its pte_chains. We kept this (as page_map_lock: bit_spin_lock on
PG_maplock) when we moved to objrmap. But the file objrmap locks its vma tree
with mapping->i_mmap_lock, and the anon objrmap locks its vma list with
anon_vma->lock: so isn't the page_map_lock superfluous?
Pretty much, yes. The mapcount was protected by it, and needs to become an
atomic: starting at -1 like page _count, so nr_mapped can be tracked precisely
up and down. The last page_remove_rmap can't clear anon page mapping any
more, because of races with page_add_rmap; from which some BUG_ONs must go for
the same reason, but they've served their purpose.
vmscan decisions are naturally racy, little change there beyond removing
page_map_lock/unlock. But to stabilize the file-backed page->mapping against
truncation while acquiring i_mmap_lock, page_referenced_file now needs page
lock to be held even for refill_inactive_zone. There's a similar issue in
acquiring anon_vma->lock, where page lock doesn't help: which this patch
pretends to handle, but actually it needs the next.
Roughly 10% cut off lmbench fork numbers on my 2*HT*P4. Must confess my
testing failed to show the races even while they were knowingly exposed: would
benefit from testing on racier equipment.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hugh@veritas.com>
[PATCH] rmaplock: SLAB_DESTROY_BY_RCU
With page_map_lock gone, how to stabilize page->mapping's anon_vma while
acquiring anon_vma->lock in page_referenced_anon and try_to_unmap_anon?
The page cannot actually be freed (vmscan holds reference), but however much
we check page_mapped (which guarantees that anon_vma is in use - or would
guarantee that if we added suitable barriers), there's no locking against page
becoming unmapped the instant after, then anon_vma freed.
It's okay to take anon_vma->lock after it's freed, so long as it remains a
struct anon_vma (its list would become empty, or perhaps reused for an
unrelated anon_vma: but no problem since we always check that the page located
is the right one); but corruption if that memory gets reused for some other
purpose.
This is not unique: it's liable to be problem whenever the kernel tries to
approach a structure obliquely. It's generally solved with an atomic
reference count; but one advantage of anon_vma over anonmm is that it does not
have such a count, and it would be a backward step to add one.
Therefore... implement SLAB_DESTROY_BY_RCU flag, to guarantee that such a
kmem_cache_alloc'ed structure cannot get freed to other use while the
rcu_read_lock is held i.e. preempt disabled; and use that for anon_vma.
Fix concerns raised by Manfred: this flag is incompatible with poisoning and
destructor, and kmem_cache_destroy needs to synchronize_kernel.
I hope SLAB_DESTROY_BY_RCU may be useful elsewhere; but though it's safe for
little anon_vma, I'd be reluctant to use it on any caches whose immediate
shrinkage under pressure is important to the system.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hugh@veritas.com>
[PATCH] rmaplock: mm lock ordering
With page_map_lock out of the way, there's no need for page_referenced and
try_to_unmap to use trylocks - provided we switch anon_vma->lock and
mm->page_table_lock around in anon_vma_prepare. Though I suppose it's
possible that we'll find that vmscan makes better progress with trylocks than
spinning - we're free to choose trylocks again if so.
Try to update the mm lock ordering documentation in filemap.c. But I still
find it confusing, and I've no idea of where to stop. So add an mm lock
ordering list I can understand to rmap.c.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hugh@veritas.com>
[PATCH] rmaplock: swapoff use anon_vma
Swapoff can make good use of a page's anon_vma and index, while it's still
left in swapcache, or once it's brought back in and the first pte mapped back:
unuse_vma go directly to just one page of only those vmas with the same
anon_vma. And unuse_process can skip any vmas without an anon_vma (extending
the hugetlb check: hugetlb vmas have no anon_vma).
This just hacks in on top of the existing procedure, still going through all
the vmas of all the mms in mmlist. A more elegant procedure might replace
mmlist by a list of anon_vmas: but that would be more work to implement, with
apparently more overhead in the common paths.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<marcelo.tosatti@cyclades.com>
[PATCH] x86 bitops.h commentary on instruction reordering
Back when we were discussing the need for a memory barrier in sync_page(),
it came to me (thanks Andrea!) that the bit operations can be perfectly
reordered on architectures other than x86.
I think the commentary on i386 bitops.h is misleading, its worth to note
that that these operations are not guaranteed not to be reordered on
different architectures.
clear_bit() already does that:
* clear_bit() is atomic and may not be reordered. However, it does
* not contain a memory barrier, so if it is used for locking purposes,
* you should call smp_mb__before_clear_bit() and/or smp_mb__after_clear_bit()
* in order to ensure changes are visible on other processors.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hugh@veritas.com>
[PATCH] clarify get_task_mm (mmgrab)
Clarify mmgrab by collapsing it into get_task_mm (in fork.c not inline),
and commenting on the special case it is guarding against: when use_mm in
an AIO daemon temporarily adopts the mm while it's on its way out.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hugh@veritas.com>
[PATCH] simple fs stop -ve dentries
A tmpfs user reported increasingly slow directory reads when repeatedly
creating and unlinking in a mkstemp-like way. The negative dentries
accumulate alarmingly (until memory pressure finally frees them), and are
just a hindrance to any in-memory filesystem. simple_lookup set d_op to
arrange for negative dentries to be deleted immediately.
(But I failed to discover how it is that on-disk filesystems seem to keep
their negative dentries within manageable bounds: this effect was gross
with tmpfs or ramfs, but no problem at all with extN or reiser.)
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] vm: writeout watermark tuning
Slightly change the writeout watermark calculations so we keep background
and synchronous writeout watermarks in the same ratios after adjusting them
for the amout of mapped memory. This ensures we should always attempt to
start background writeout before synchronous writeout and preserves the
admin's desired background-versus-forground ratios after we've
auto-adjusted one of them.
Signed-off-by: Nick Piggin <nickpiggin@cyberone.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] vm: alloc_pages watermark fixes
Previously the ->protection[] logic was broken. It was difficult to follow
and basically didn't use the asynch reclaim watermarks (pages_min,
pages_low, pages_high) properly.
Now use ->protection *only* for lower-zone protection. So the allocator
now explicitly uses the ->pages_low, ->pages_min watermarks and adds
->protection on top of that, instead of trying to use ->protection for
everything.
Pages are allocated down to (->pages_low + ->protection), once this is
reached, kswapd the background reclaim is started; after this, we can
allocate down to (->pages_min + ->protection) without blocking; the memory
below pages_min is reserved for __GFP_HIGH and PF_MEMALLOC allocations.
kswapd attempts to reclaim memory until ->pages_high is reached.
Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] alloc_pages priority tuning
Fix up the logic which decides when the caller can dip into page reserves.
- If the caller has realtime scheduling policy, or if the caller cannot run
direct reclaim, then allow the caller to use up to a quarter of the page
reserves.
- If the caller has __GFP_HIGH then allow the caller to use up to half of
the page reserves.
- If the caller has PF_MEMALLOC then the caller can use 100% of the page
reserves.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<andrea@suse.de>
[PATCH] Correctly handle d_path error returns
There's some minor bug in the d_path handling (the nfsd one may not the the
correct fix, there's no failure path for it, so I just terminate the
string, and the last one in the audit subsystem is just a robustness
cleanup if somebody will extend d_path in the future, right now it's a
noop).
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<James@superbug.demon.co.uk>
[PATCH] emu10k1 maintainer update
Rui Sousa has been unreachable for a long time now, so I have taken over
the emu10k1 project on sf.net.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<roland@topspin.com>
[PATCH] x86: remove hard-coded numbers from ptr_ok()
Looks like arch/i386/kernel/doublefault.c is one place in the code that
hardcodes the assumption that PAGE_OFFSET == 0xC0000000. Here's a patch
that fixes that.
Signed-off-by: Roland Dreier <roland@topspin.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pbadari@us.ibm.com>
[PATCH] Fix mpage_readpage() for big requests
The problem is, if we increase our readhead size arbitrarily (say 2M), we
call mpage_readpages() with 2M and when it tries to allocated a bio enough to
fit 2M it fails, then we kick it back to "confused" code - which does 4K at
a time.
The fix is to ask for the maxium the driver can handle.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<josha@sgi.com>
[PATCH] improve speed of freeing bootmem
Attached is a patch that greatly improves the speed of freeing boot memory.
On ia64 machines with 2GB or more memory (I didn't test with less, but I
can't imagine there being a problem), the speed improvement is about 75%
for the function free_all_bootmem_core. This translates to savings on the
order of 1 minute / TB of memory during boot time. That number comes from
testing on a machine with 512GB, and extrapolating based on profiling of an
unpatched 4TB machine. For 4 and 8 TB machines, the time spent in this
function is about 1 minutes/TB, which is painful especially given that
there is no indication of what is going on put to the console (this issue
to possibly be addressed later).
The basic idea is to free higher order pages instead of going through every
single one. Also, some unnecessary atomic operations are done away with
and replaced with non-atomic equivalents, and prefetching is done where it
helps the most. For a more in-depth discusion of this patch, please see
the linux-ia64 archives (topic is "free bootmem feedback patch").
The patch is originally Tony Luck's, and I added some further optimizations
(non-atomic ops improvements and prefetching).
Signed-off-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Josh Aas <josha@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] sched: consolidate CLONE_IDLETASK masking
Every arch now bears the burden of sanitizing CLONE_IDLETASK out of the
clone_flags passed to do_fork() by userspace. This patch hoists the
masking of CLONE_IDLETASK out of the system call entrypoints into
do_fork(), and thereby removes some small overheads from do_fork(), as
do_fork() may now assume that CLONE_IDLETASK has been cleared.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] kill CLONE_IDLETASK
The sole remaining usage of CLONE_IDLETASK is to determine whether pid
allocation should be performed in copy_process(). This patch eliminates
that last branch on CLONE_IDLETASK in the normal process creation path,
removes the masking of CLONE_IDLETASK from clone_flags as it's now ignored
under all circumstances, and furthermore eliminates the symbol
CLONE_IDLETASK entirely.
From: William Lee Irwin III <wli@holomorphy.com>
Fix the fork-idle consolidation. During that consolidation, the generic
code was made to pass a pointer to on-stack pt_regs that had been memset()
to 0. ia64, however, requires a NULL pt_regs pointer argument and
dispatches on that in its copy_thread() function to do SMP
trampoline-specific RSE -related setup. Passing pointers to zeroed pt_regs
resulted in SMP wakeup -time deadlocks and exceptions.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<zwane@arm.linux.org.uk>
[PATCH] OProfile/XScale fixes for PXA270/XScale2
The incorrect mask was being used when writing back to PMNC write-only-zero
bits as well as only ticking the CCNT every 64 processor cycles. Tested on
IOP331 and PXA270, i'm still looking for XScale1 users...
Signed-off-by: Luca Rossato <l.rossato@tiscali.it>
Signed-off-by: Zwane Mwaikambo <zwane@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<manfred@colorfullife.com>
[PATCH] remove magic +1 from shm segment count
Michael Kerrisk found a bug in the shm accounting code: sysv shm allows to
create SHMMNI+1 shared memory segments, instead of SHMMNI segments. The +1
is probably from the first shared anonymous mapping implementation that
used the sysv code to implement shared anon mappings.
The implementation got replaced, it's now the other way around (sysv uses
the shared anon code), but the +1 remained.
Signed-off-by: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<zwane@fsmlabs.com>
[PATCH] fix i386/x86_64 idle routine selection
This was broken when the mwait stuff went in since it executes after the
initial idle_setup() has already selected an idle routine and overrides it
with default_idle.
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Zwane Mwaikambo <zwane@linuxpower.ca>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] x86 PAE swapspace expansion
PAE is artificially limited in terms of swapspace to the same bitsplit as
ordinary i386, a 5/24 split (32 swapfiles, 64GB max swapfile size), when a
5/27 split (32 swapfiles, 512GB max swapfile size) is feasible. This patch
transparently removes that limitation by using more of the space available
in PAE's wider ptes for swap ptes.
While this is obviously not likely to be used directly, it is important
from the standpoint of strict non-overcommit, where the swapspace must be
potentially usable in order to be reserved for non-overcommit. There are
workloads with Committed_AS of over 256GB on ia32 PAE wanting strict
non-overcommit to prevent being OOM killed.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ajgrothe@yahoo.com>
[CRYPTO]: Add Whirlpool digest algorithm.
Given the recent potential weaknesses in the SHA and MD families,
I thought it might not be a bad idea to include another hash/digest
algorithm in the kernel.
So here is Whirlpool. I chose it for a couple of reasons.
o - It is by the same people who did Khazad. I feel pretty good about their work.
o - It has been evaluated by NESSIE
https://www.cosic.esat.kuleuven.ac.be/nessie/reports/phas...
o - NESSIE has accepted it as one of the cryptographic primitives
o - It will be part of an ISO standard in the revised ISO/IEC 10118-3:2003(E) standard, thanks to
NESSIE
o - It is patent free and has an implementation in the public domain.
Signed-off-by: Aaron Grothe <ajgrothe@yahoo.com>
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<wli@holomorphy.com>
[PATCH] hugetlb: permit executable mappings
During the kernel summit, some discussion was had about the support
requirements for a userspace program loader that loads executables into
hugetlb on behalf of a major application (Oracle). In order to support
this in a robust fashion, the cleanup of the hugetlb must be robust in the
presence of disorderly termination of the programs (e.g. kill -9). Hence,
the cleanup semantics are those of System V shared memory, but Linux'
System V shared memory needs one critical extension for this use:
executability.
The following microscopic patch enables this major application to provide
robust hugetlb cleanup.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] md: assorted fixes/improvemnet to generic md resync code.
1/ Introduce "mddev->resync_max_sectors" so that an md personality
can ask for resync to cover a different address range than that of a
single drive. raid10 will use this.
2/ fix is_mddev_idle so that if there seem to be a negative number
of events, it doesn't immediately assume activity.
3/ make "sync_io" (the count of IO sectors used for array resync)
an atomic_t to avoid SMP races.
4/ Pass md_sync_acct a "block_device" rather than the containing "rdev",
as the whole rdev isn't needed. Also make this an inline function.
5/ Make sure recovery gets interrupted on any error.
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] md: assorted minor md/raid1 fixes
1/ rationalise read_balance and "map" in raid1. Discard map and
tidyup the interface to read_balance so it can be used instead.
2/ use offsetof rather than a caclulation to find the size of an
structure with a var-length array at the end.
3/ remove some meaningless #defines
4/ use printk_ratelimit to limit reports of failed sectors being redirected.
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] md: remove most calls to __bdevname from md.c
__bdevname now only prints major/minor number which isn't much help. So
remove most calls to it from md.c, replacing those that are useful by calls
to bdevname (often printing the message when the error is first detected
rather than higher up the call tree).
Also discard hot_generate_error which doesn't do anything useful and never
has.
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] md: RAID10 module
This patch adds a 'raid10' module which provides features similar to both
raid0 and raid1 in the one array. Various combinations of layout are
supported.
This code is still "experimental", but appears to work.
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ak@suse.de>
[PATCH] Fix warnings in es7000
Fix warnings in es7000.
Otherwise gcc 3.3 complains about too large integer values.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<josha@sgi.com>
[PATCH] Reduce bkl usage in do_coredump
A patch that reduces bkl usage in do_coredump. I don't see anywhere that
it is necessary except for the call to format_corename, which is controlled
via sysctl (sys_sysctl holds the bkl).
Also make format_corename() static.
Signed-off-by: Josh Aas <josha@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pluto@pld-linux.org>
[PATCH] apm_info.disabled fix
This minor fix is required to proper init "APM emulation" on HP-OmniBooks.
(An external patch). "APM emulation" is very useful if you want to use a tool
which looks into /proc/apm for getting informations about battery charging.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] fix inlining failures
arch/i386/mach-generic/summit.c: In function `send_IPI_all':
include/asm/mach-summit/mach_ipi.h:4: sorry, unimplemented: inlining failed in call to 'send_IPI_mask_sequence': function body not available
arch/i386/mach-generic/summit.c:8: sorry, unimplemented: called from here
make[1]: *** [arch/i386/mach-generic/summit.o] Error 1
make: *** [arch/i386/mach-generic] Error 2
arch/i386/mach-generic/bigsmp.c: In function `send_IPI_all':
include/asm/mach-bigsmp/mach_ipi.h:4: sorry, unimplemented: inlining failed in call to 'send_IPI_mask_sequence': function body not available
arch/i386/mach-generic/bigsmp.c:8: sorry, unimplemented: called from here
make[1]: *** [arch/i386/mach-generic/bigsmp.o] Error 1
make: *** [arch/i386/mach-generic] Error 2
arch/i386/mach-generic/es7000.c: In function `send_IPI_all':
include/asm/mach-es7000/mach_ipi.h:4: sorry, unimplemented: inlining failed in call to 'send_IPI_mask_sequence': function body not available
arch/i386/mach-generic/es7000.c:8: sorry, unimplemented: called from here
make[1]: *** [arch/i386/mach-generic/es7000.o] Error 1
make: *** [arch/i386/mach-generic] Error 2
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pj@sgi.com>
[PATCH] hige2lowuid warning fixes
fs/smbfs/inode.c: In function `smb_fill_super':
fs/smbfs/inode.c:563: warning: comparison is always false due to limited range of data type
Unfortunately, this patch uses the notorious "gcc warning suppression by
obfuscation" technique.
What seems to be going on is that the uid and gid convert macros in
include/linux/highuid.h:
#define __convert_uid(size, uid) \
(size >= sizeof(uid) ? (uid) : high2lowuid(uid))
only call high2lowuid in the case of trying to put a bigger (32 bit, say)
uid/gid in a smaller (16 bit, in this case) word. Gcc is smart enough to see
that the comparison in high2lowuid() macro is silly if called with a 16 bit
source uid, but not smart enough to understand from the __convert_uid() logic
that this is exactly the case that high2lowuid() won't be called.
So replace the logical "<" operator with the bit op "&~". This obfuscates
things enough to shut gcc up.
Only build the half-dozen files that use SET_UID/SET_GID, on arch i386 and
ia64. Only the file fs/smbfs/inode.c showed the warning, both arch's, and
this patch fixed both. Untested further, past staring at the code long enough
to convince myself the change has no actual affect on the code's results.
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<michal@logix.cz>
[PATCH] New cpu_has_ flags
Add a couple more accessors for xstore features.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jejb@mulgrave.(none)>
i20 rewrite
From: Markus Lidel <Markus.Lidel@shadowconnect.com>
generic:
- split i2o_core into several files, grouped by same function
- I2O devices are now registered as devices and show up in sysfs
- the various I2O OSM's (e.g. i2o_scsi) now register in the I2O core
and also use the 2.6 driver mechanism.
- I2O messages will be created in the message frame instead of creating
it in local memory and copying it over later on.
- context list for 64 pointer to 32 context conversion now uses a
double linked list
PCI:
- driver now registers as a PCI device driver and uses probe function to
get the possible controllers. (needed for hotplugging)
- converted DMA handling from pci_* to generic dma_* functions
Block OSM:
- use one request queue per I2O block device instead of one per
controller
- I2O block devices and queues are allocated dynamically and therefore
no more limit of block devices
SCSI OSM:
- corrected bug in SCSI reply function which caused the memory to be
freed before the done function was called.
- one I2O controller registers as one scsi host instead of one scsi host
per channel
- no more ch,id,lun => tid mapping table
Config OSM:
- added ioctl32 for passthru and getiops.
- removed ioctl_html
Documentation:
- removed TODO entries from README
- moved docs under Documentation/i2o
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<bcasavan@sgi.com>
[PATCH] Fix get_nodes() mask miscalculation
It appears there is a nodemask miscalculation in the get_nodes() function
in mm/mempolicy.c. This bug has two effects:
1. It is impossible to specify a length 1 nodemask.
2. It is impossible to specify a nodemask containing the last node.
The following patch has been confirmed to solve both problems.
Signed-off-by: Brent Casavant <bcasavan@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<herbert@gondor.apana.org.au>
[IPSEC]: Set TTL from route.
Here is the promised patch that sets the TTL from the route parameter.
I decided against adding an option to inherit the TTL like IPIP/GRE
as I think that it doesn't really make sense with IPsec. But it
can be easily added later if someone needs it.
This isn't completely right when nested tunnels are involved. The
TTL for intervening tunnels should be set from the routes to the
intervening nodes. But fixing that involves using information that
isn't currently in the bundle. I'll revisit this once the MTU stuff
is fixed since that'll also involving adding the intervening routes
to the bundle.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@redhat.com>
<benjl@cse.unsw.edu.au>
[PATCH] Use posix headers in sumversion.c
When compiling Linux on Mac OSX I had trouble with scripts/sumversion.c.
It includes <netinet/in.h> to obtain to definitions of htonl and ntohl.
On Mac OSX these are found in <arpa/inet.h>. After checking the POSIX
specification it appears that this is the correct place to get the
definitons for these functions.
(http://www.opengroup.org/onlinepubs/009695399/functions/h...)
Using this header also appears to work on Linux (at least with
Glibc-2.3.2).
It seems clearer to me to go with the POSIX standard than implementing
#if __APPLE__ style macros, but if such an approach is preferred I can
supply patches for that instead.
A patch against 2.6.7 which change <netinet/in.h> -> <arpa/inet.h> is
attached.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] x86: quieten the "ESR value" printks
Only print out the ESR value if it changes after enabling vector.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pluto@pld-linux.org>
[PATCH] ix86,x86_64 cpu features
Attached patch fix/add several cpu features.
refs:
[1] Intel Processor Identification and the CPUID instruction
Application Note 485.
http://developer.intel.ru/download/design/Xeon/applnots/2...
[2] http://www.sandpile.org/ia32/cpuid.htm
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jmorris@redhat.com>
[PATCH] libfs: move transaction file ops into libfs
Below is an updated version of the patch which moves duplicated
transaction-based file operation code into libfs. Since the last post, the
patch has been through a couple of iterations with Al, who suggested a
number of cleanups including locking and interface simplification.
For filesystem writers, the interface is now much simpler. The
simple_transaction_get() helper should be part of the file op write method.
This safely obtains the transaction request data during write(), allocates
a page for it and stores it there. The data is returned to the caller for
potential further processing, which then makes it available for the next
read() call via simple_transaction_set(). See the selinuxfs and nfsctl
code for examples of use.
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jbarnes@engr.sgi.com>
[PATCH] don't print per-cpu delay loop calibration
People are mainly concerned with showing off their total bogomips, not
per-cpu bogomips, so turn it into a KERN_DEBUG message for the benefit of
systems with lots of CPUs.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jbarnes@engr.sgi.com>
[PATCH] fix sn_console for CONFIG_SMP=n
I found that sn_console was missing an include and a fix if CONFIG_SMP=n.
This patch fixes up the two small problems I found.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] reduce pty.c ifdef clutter
- build only if either CONFIG_LEGACY_PTYS or CONFIG_UNIX98_PTYS are set
instead of testing in the file
- try to keep big CONFIG_LEGACY_PTYS and CONFIG_UNIX98_PTYS ifdef blocks
at the end of the file instead of cluttering all over
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] BUG() on inconsistant dcache tree in may_delete
This can't happen with a sane filesystem (but is triggered by the buggy
clearcase bin only kernel module), so let's better BUG_ON early.
Adopted from Al's patch in the RH tree.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] ppc32: remove dead CONFIG_KERNEL_ELF Kconfig entry
We don't allow non-ELF kernels since 2.0 days, and surprisingly this is not
actually checked anywhere.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] fix some comments about epoch in arch/alpha/kernel/time.c
(from the Debian kernel package)
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] small simplification for two SECURITY dependencies
I'd suggest the patch below to let the SECURITY_CAPABILITIES and
SECURITY_ROOTPLUG dependencies look a bit more simple.
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] I2O: add functionality to scsi_add_device to preset
From: Markus Lidel <Markus.Lidel@shadowconnect.com>
- Add a new function __scsi_add_device, which has an additional parameter
compared to scsi_add_device. This parameter is used to preset the hostdata
pointer.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<yoshfuji@linux-ipv6.org>
[IPSEC]: Add SCTP to xfrm_flowi_{sport,dport}()
Signed-off-by: HIDEAKI Yoshifuji <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<chrisw@osdl.org>
[PATCH] configurable SELinux bootparam value
Add configure option for setting default SELinux bootparam value. Ack'd by
James Morris.
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] Fix typos in security/security.c
Fix typos in security/security.c.
From: Nicolas Kaiser <nikai@nikai.net>
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] use simple_read_from_buffer in selinuxfs
Use simple_read_from_buffer. This also eliminates page allocation for the
sprintf buffer. Switch to get_zeroed_page instead of open-coding it. Viro
had ack'd this earlier. Still applies w/ the transaction update.
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<chrisw@osdl.org>
[PATCH] use simple_read_from_buffer in proc_info_read and proc_pid_attr_read
Use simple_read_from_buffer in proc_info_read and proc_pid_attr_read. Viro
had ack'd this earlier.
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pavel@ucw.cz>
[PATCH] Fix ttyS0 vs. ttyS00 confusion
According to devices.txt, serial ports are reffered as ttyS0 (and not
ttyS00). It would be nice to use that convention in printks, too.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] reduce size of struct buffer_head on 64bit
Reduce size of buffer_head from 96 to 88 bytes on 64bit architectures by
putting b_count and b_size together. b_count will still be in the first 16
bytes on 32bit architectures, so 16 byte cacheline machines shouldnt be
affected.
With this change the number of objects per 4kB slab goes up from 40 to 44
on ppc64.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] reduce size of struct dentry on 64bit
Reduce size of struct dentry from 248 to 232 bytes on 64bit.
- Reduce size of qstr by 8 bytes, placing int hash and int len together.
We gain a further 4 byte saving when qstr is used in struct dentry
since qstr goes from 24 to 16 bytes and the next member (d_lru)
requires 8 byte alignment (which means 4 bytes of padding).
- Move d_mounted to the end, since char d_iname[] only requires 1 byte
alignment. This reduces struct dentry by another 4 bytes.
With these changes the number of objects we can fit into a 4kB slab
goes from 16 to 17 on ppc64.
Note the above assumes the architecture naturally aligns types.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] remove cacheline alignment from inode slabs
Most of the inode slabs are cacheline aligned. This can waste a fair
amount of memory, especially on architectures with large cacheline sizes
(eg 128 bytes).
Alignment has a few advantages. It prevents 2 cpus from accessing 2 data
structures in the same cacheline. Since struct inodes are well over a
cacheline and there are so many of them, there is little chance we will hit
this problem if we remove the alignment.
Alignment also ensures the maximum amount of the data structure is in the
same cacheline (instead of straddling 2 for example). The large size of
struct inode reduces this advantage.
With this patch the inode_cache slab goes from 640 bytes to 544 bytes, and
the number that fits in a 4kB slab goes from 6 to 7 on ppc64. A number of
other inode slabs also see improvements.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rusty@rustcorp.com.au>
[PATCH] Read cpumasks every time when exporting through sysfs
Paul Jackson points out that the sysfs code saves a node's cpumask in the
sysfs node, although it can change with CPU hotplug. Don't do this.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] I2O: remove on-demand allocation of Scsi_Host's in
From: Markus Lidel <Markus.Lidel@shadowconnect.com>
- New notification system for i2o_driver's which get now a notification if a
I2O controller is added or removed.
- SCSI-OSM now uses notifications to create the Scsi_Host to the
corresponding I2O controller.
- Use __scsi_add_device to preset hostdata.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<sds@epoch.ncsc.mil>
[SELINUX]: Fix bugs introduced by skb_header_pointer() changes.
Lines assigning initial value to 'ret' were removed
erroneously.
Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[PATCH] I2O: run linux/i2o.h and linux/i2o-dev.h through
From: Markus Lidel <Markus.Lidel@shadowconnect.com>
- i2o.h and i2o-dev.h are now formated using Lindent.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<sean@mess.org>
[PATCH] USB: USB PhidgetServo driver update
Once again a (small) patch for the phidgetservo driver.
Some servos have a very high maximum angle, set upper limit to the
maximum allowed by the hardware. Reported by Mario Scholz
<mario@expires-0409.mail.trial-n-error.net>
Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<rusty@rustcorp.com.au>
[PATCH] Centralize i386 Constants
__FIXADDR_TOP and PAGE_OFFSET are hardcoded in various places. I had to
change it to run the kernel under qemu-fast, so I wanted to centralize
them.
To do this, we rename vsyscall.lds to vsyscall.lds.s, and generate it from
vsyscall.lds.S.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (created)
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rusty@rustcorp.com.au>
[PATCH] Fix Permissions on module_param Usage
module_param() and family take a "perms" argument; several people have
incorrectly used "644" instead of "0644".
(I have a patch which checks for sane perms at compile time, but it bloats
modules, so I haven't included it.)
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (authored)
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rusty@rustcorp.com.au>
[PATCH] Move param section out of init area, for export of built-in module params
When exporting the module parameters of built-in modules, we need to access
the respective struct kernel_parameters. Currently, they're freed at init
time, and obviously this can't continue to be done. So, move them out of
__init_begin and __init_end and into RODATA in asm-generic/vmlinux.lds.h.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (modified)
Signed-off-by: Dominik Brodowski <linux@brodo.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<stern@rowland.harvard.edu>
[PATCH] USB: Set QH bit in UHCI framelist entries
This patch fixes the error in the UHCI driver found by Stuart Hayes. It
adds the UHCI_PTR_QH bit into the initial entries stored in the hardware
framelist. It's not entirely clear how the driver ever managed to work
with these bits not set; apparently by coincidence the QH entries
resembled TD entries sufficiently closely to fool the hardware.
On Tue, 10 Aug 2004 Stuart_Hayes@Dell.com wrote:
> Never mind, I figured it out. It looks like the uhci-hcd driver
> doesn't add a "| UHCI_PTR_QH" to the pointers that it puts
> in the frame list. This causes the ICH to think that the frame list
> is pointing to a bunch of TDs instead of QHs for purposes of
> checking for TD errors. I can only assume that the ICH
> is actually treating the frame list entries as QH pointers in spite
> of that bit not being set when it is actually executing the
> schedule, or else I don't think it would work generally.
>
> I guess the high addresses were just making the QH look like an
> invalid TD instead of a valid TD... not sure exactly what the ICH
> is checking for!
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<paulkf@microgate.com>
[PATCH] synclink.c: replace syncppp with genhdlc
Replace syncppp interface with generic HDLC interface. Generic HDLC
provides superset of syncppp function.
Signed-off-by: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulkf@microgate.com>
[PATCH] synclinkmp.c: replace syncppp with genhdlc
Replace syncppp interface with generic HDLC interface. Generic HDLC
provides superset of syncppp function.
Signed-off-by: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<luca.risolia@studio.unibo.it>
[PATCH] USB: SN9C10[12] driver update
Changes:
- Delete the correct entry in the outgoing queue during DQBUF
- Implement correct image downscaling selection through VIDIOC_S_[CROP|FTM]
- Replace darkness controls with brightness (simple swapping) for PAS106B and
PAS202BCB
- Implement gain control for TAS5110C1B and TAS5130D1B
- Add a note to the documentation about correct image downscaling selection
Signed-off-by: Luca Risolia <luca.risolia@studio.unibo.it>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<paulkf@microgate.com>
[PATCH] synclink_cs.c: replace syncppp with genhdlc
Replace syncppp interface with generic HDLC interface. Generic HDLC
provides superset of syncppp function.
Signed-off-by: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jeffm@suse.com>
[PATCH] reiserfs: xattr/acl fixes
Here are a few fixes for bugs noticed on reiserfs-list or our own bugzilla.
Attached is a patch that fixes several problems with xattrs/acls:
[SECURITY] Fixes the inode not getting dirtied when mode is set
via setxattr()
[CORRECTNESS] Fixes the inode not getting ctime updated when an xattr is
removed
[DATA] Fixes an issue with dcache hash colliding names in the filesystem
root caused by the d_compare to hide .reiserfs_priv. The bug
can only occur in the filesystem root, which is why we haven't
seen many (any, outside of the suse bugzilla, afaik) reports on
this. The results are that dcache operations on colliding entries
in the fs root will choose the first match rather than the
correct entry.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jeffm@suse.com>
[PATCH] Fix access of files up to 4 GB support for ISO9660 filesystems
Since the filesystem doesn't explicitly set s->s_maxbytes, seeks will fail
beyond 2^32-1, due to s->s_maxbytes being set to the default of
MAX_NON_LFS.
Attached is the quick one liner fix.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<alborchers@steinerpoint.com>
[PATCH] USB: update Edgeport io_usbvend.h
- Updated io_usbvend.h to the latest version of usbvend.h
provided by IO Networks.
- Removed Black Box OEM device ids--they are duplicates of
existing Edgeport ids and no longer included in IO Networks
version of usbvend.h.
- Removed the 1 port device from the io_edgeport driver--this
device is a parallel port handled by the usblp driver.
Signed-off-by: Al Borchers <alborchers@steinerpoint.com>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<sds@epoch.ncsc.mil>
[PATCH] SELinux: add null device node to selinuxfs, remove open_devnull
This patch adds a null device node to selinuxfs and replaces the SELinux
open_devnull() code by simply acquiring a reference to this node each time,
based on a comment by Al Viro on lkml (see
http://marc.theaimsgroup.com/?l=linux-kernel&m=108664...).
Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sds@epoch.ncsc.mil>
[PATCH] SELinux: revalidate access to controlling tty
This patch changes the SELinux flush_unauthorized_files function to also
recheck access to the controlling tty and reset it if it is no longer
accessible under the new security context. This patch is relative to the
selinuxfs devnull patch.
Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<alborchers@steinerpoint.com>
[PATCH] USB: update Edgeport io_fw_down.h
- Updated io_fw_down.h for the io_edgeport driver to firmware
version 1.16.4 from IO Networks.
Signed-off-by: Al Borchers <alborchers@steinerpoint.com>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<sds@epoch.ncsc.mil>
[PATCH] SElinux; defer inode security initialization
This patch defers setting the inode security state for newly created inodes
until after policy has been loaded.
Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sds@epoch.ncsc.mil>
[PATCH] SELinux: fix name_bind audit
This patch restores the proper auditing behavior for the name_bind check.
Author: James Morris <jmorris@redhat.com>
Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jmorris@redhat.com>
[PATCH] Reduce SELinux kernel memory use on 64-bit systems
The patch below reduces kernel memory used by SELinux policy rules by about
37% on 64-bit systems. This is because the size of struct avtab_node is 40
bytes on 64-bit, and defaults to a size-64 slab.
Creating a slab cache specifically for these structs saves considerable
amounts of kernel memory on 64-bit systems with large rulesets. 'Strict'
policy has over 300k rules, while 'targeted' policy has around 3k rules.
Here's the slabtop output with 64 and 40 byte sized slabs to show the
memory savings, for strict policy:
303475 303447 99% 0.06K 4975 61 19900K avtab_node
303456 303447 99% 0.04K 3161 96 12644K avtab_node
Also, there are 57% more objects per slab.
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<alborchers@steinerpoint.com>
[PATCH] USB: update Edgeport io_fw_down3.h
- Updated io_fw_down3.h for the io_ti driver to firmware
version 4.10.0 from IO Networks.
Signed-off-by: Al Borchers <alborchers@steinerpoint.com>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<janitor@sternwelten.at>
[PATCH] remove last suser() call from drivers/char/rocket.c
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kernel@cornelia-huck.de>
[PATCH] Add pci dependencies to drivers/media/dvb/ttpci/Kconfig
The drivers under drivers/media/dvb/ttpci depend on pci (especially since
they select VIDEO_SAA7146, which depends on pci).
Signed-off-by: Cornelia Huck <kernel@cornelia-huck.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<olh@suse.de>
[PATCH] compat_do_execve() fix
For some reasons ls -l /proc/$$/exe doesnt work all time for me,
with 2.6.8.1 on ppc64. Sometimes it does, sometimes not. No pattern.
A few printks show that this check in proc_pid_readlink() triggers
an -EACCES:
current->fsuid != inode->i_uid
proc_pid_readlink(755) error -13 ntptrace(11408) fsuid 100 i_uid 0 0
sys_readlink(281) ntptrace(11408) error -13 readlink
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<david-b@pacbell.net>
[PATCH] USB: gadget drivers learn about LH7A40x
Recognize the UDC for the Sharp LH7A40x chips (ARMv4t SOCs)
- define gadget_is_lh7a40x() macro
- gadget drivers use it to assign bcdDevice
- supports CDC Ethernet (and RNDIS)
From: Bo Henriksen
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<ebiederm@xmission.com>
[PATCH] fix 4K ext2fs support in 2.6 initrd's
The ramdisk_blocksize option has been broken for quite a while in 2.6.
Making an initrd with a 4K ext2 filesystem impossible to use.
After digging into this, the problem turned out to that rd.c was not
setting the hard sector size. There were a few secondary problems like
i_blkbits was not being set, and the number KiB in uncompressed ext2 images
was not taking into account the block size.
I have also corrected the surrounding comments as they were not just
incorrect but misleading.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pavel@ucw.cz>
[PATCH] Coding style: do_this(a,b) vs. do_this(a, b)
Coding style document is not consistent with itself on whether there
should be space after ","... This makes it standardize on ", " option.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<david-b@pacbell.net>
[PATCH] USB: net2280 patch
Don't clear ep0 status phase handshake during endpoint reset ... at least
one driver emits so much debug output before resetting endpoints that the
reset happens late enough to make the chip break protocol.
Also handle resets IRQs a bit differently: they can happen twice during
enumeration, which can worsen the other problem.
From: Alex Sanks <alex@netchip.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<pavel@ucw.cz>
[PATCH] typo in laptop_mode.txt
This patch is thanks to pavouk.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rusty@rustcorp.com.au>
[PATCH] fix permissions on the `tainted' sysctl
From: Arjan van de Ven <arjanv@redhat.com>
The patch below sets the tainted sysctl file to read only, otherwise
userspace can just overwrite/reset it.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<stern@rowland.harvard.edu>
[PATCH] USB: Fix submission-error bug in the USB scatter-gather
This patch has been hanging around for a while and seems to have been
forgotten. It fixes a bug in the USB scatter-gather library that crops up
when submission of an URB fails, and it fixes a bug in the cleanup routine
when some of the URBs being cleaned up have already completed.
I think David will agree that the patch is correct. Please apply.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<schwidefsky@de.ibm.com>
[PATCH] s390: core changes
From: Jan Glauber <jan.glauber@de.ibm.com>
From: Martin Schwidefsky <schwidefsky@de.ibm.com>
s390 core changes:
- Use copy_siginfo_from_user32 instead of copy_from_user to get the
siginfo structure in sys32_rt_sigqueueinfo.
- Remove prototype for non-existant stop_timers function.
- Regenerate default configuration.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: zfcp host adapter
From: Heiko Carstens <heiko.carstens@de.ibm.com>
From: Andreas Herrmann <aherrman@de.ibm.com>
From: Maxim Shchetynin <maxim@de.ibm.com>
zfcp host adapter changes:
- Use predefined macro to create in_recovery sysfs attributes.
- Add function to check CT_IU response.
- Fix handling of rejected ELS commands.
- Change return value of zfcp_fsf_req_sbal_get to -ERESTARTSYS in some cases.
- Return proper error code if control file upload/download failed.
- Remove dead code.
- Avoid sparse warnings.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<garloff@suse.de>
[PATCH] fix bio_uncopy_user() mem leak
When using bounce buffers for SG_IO commands with unaligned buffers in
blk_rq_map_user(), we should free the pages from blk_rq_unmap_user() which
calls bio_uncopy_user() for the non-BIO_USER_MAPPED case. That function
failed to free the pages for write requests.
So we leaked pages and you machine would go OOM. Rebooting helped ;-)
This bug was triggered by writing audio CDs (but not on data CDs), as the
audio frames are not aligned well (2352 bytes), so the user pages don't just
get mapped.
Bug was reported by Mathias Homan and debugged by Chris Mason + me. (Jens
is away.)
From: Chris Mason <mason@suse.com>
Fix the leak for real
Signed-off-by: Kurt Garloff <garloff@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<stern@rowland.harvard.edu>
[PATCH] USB: unusual_devs.h entry
This patch adds an unusual_devs.h entry for the Apacer Audio Steno, which
reports its capacity as total number of blocks rather than largest block
number (i.e., the value is off by one). Please apply.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<zach@vmware.com>
[PATCH] i386-unbusy-tss cleanup
The TSS no longer needs to be unbusied before loading the task register, since
the set_tss_desc macros set the system gate type to Available IA-32 TSS. This
obscure, uncommented legacy code can now be removed for better readability and
saves 20 bytes of code space.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<okir@suse.de>
[PATCH] /proc/PID/cmdline truncates arguments early
We received a bug report that /proc/PID/cmdline only shows argv[0] if the
total length of all arguments exceeds PAGE_SIZE. The problem is that
proc_pid_cmdline checks for the presence of a NUL byte at the end of the
args list, and assumes that the application did a setproctitle if there's
any other character.
OTOH proc_pid_cmdline will read just the first PAGE_SIZE worth of arguments
at most, and if you have more arguments, it's quite likely that there won't
be a NUL byte at offset PAGE_SIZE-1.
The attached patch fixes this.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mdharm-usb@one-eyed-alien.net>
[PATCH] USB Storage: help vendors count to 1...
It turns out that the Konica-Minolta DiMAGE A2 camera, in addition to all
its other problems, returns a 0-length reply to the GetMaxLUN request.
With this patch (accept a null reply as meaning a single LUN) it is
somewhat useable.
It's amazing to me that vendors have this much trouble counting to 1....
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Matthew Dharm <mdharm-usb@one-eyed-alien.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<ramon.rey@hispalinux.es>
[PATCH] Update ACI MIXER DRIVER webpage
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hirofumi@mail.parknet.co.jp>
[PATCH] remove read-only/immutable checks from fat_truncate
From: Christoph Hellwig <hch@lst.de>
There's two callers:
- the truncate path via notify_change, ->setattr, vmtruncate. We
already check for permissions here at the upper level
- fat_delete_inode. This one looks bogus to me - even if we delete
an read-only or immutable inode we want to free the space allocated
by it, else you leak disk blocks.
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] USB: legousbtower.c module_param fix
drivers/usb/misc/legousbtower.c: In function `__check_read_buffer_size':
drivers/usb/misc/legousbtower.c:119: warning: return from incompatible pointer type
drivers/usb/misc/legousbtower.c: In function `__check_write_buffer_size':
drivers/usb/misc/legousbtower.c:129: warning: return from incompatible pointer type
The fix is awkward - module_param() doesn't like size_t's.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<diegocg@teleline.es>
[PATCH] ext3 documentation
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<linux@thorsten-knabe.de>
[PATCH] ad1816 sound driver web page and email address
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ramon.rey@hispalinux.es>
[PATCH] Firmware Loader is orphan
The author and maintainer of the firmware loader died in May.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] file_ra_state_init speedup
Marcelo points out that this function's main caller already memsets the
structure, so avoid doing it again.
Also, an earlier knfsd patch withdrew file_ra_state_init()'s other caller, so
unexport this function.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tytso@mit.edu>
[PATCH] dev/random: Fix latency in rekeying sequence number
Based on reports from Ingo's Latency Tracer that the TCP sequence number
rekey code is causing latency problems, I've moved the sequence number
rekey to be done out of a workqueue.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tytso@mit.edu>
[PATCH] /dev/random: Add pool name to entropy store
This adds a pool name to the entropy_store data structure, which simplifies
the debugging code, and makes the code more generic for adding additional
entropy pools.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tytso@mit.edu>
[PATCH] /dev/random: Use separate entropy store for /dev/urandom
This patch adds a separate pool for use with /dev/urandom. This prevents a
/dev/urandom read from being able to completely drain the entropy in the
/dev/random pool, and also makes it much more difficult for an attacker to
carry out a state extension attack.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tytso@mit.edu>
[PATCH] /dev/random: Remove RNDGETPOOL ioctl
Recently, someone has kvetched that RNDGETPOOL is a "security
vulnerability". Never mind that it is superuser only, and with superuser
privs you could load a nasty kernel module, or read the entropy pool out of
/dev/mem directly, but they are nevertheless still spreading FUD.
In any case, no one is using it (it was there for debugging purposes only),
so we can remove it as dead code.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tim@physik3.uni-rostock.de>
[PATCH] Fix bad URL in BSD acct help entry
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<amgta@yacht.ocn.ne.jp>
[PATCH] show Active/Inactive on per-node meminfo
The patch below enable to display the size of Active/Inactive pages on
per-node meminfo (/sys/devices/system/node/node%d/meminfo) like
/proc/meminfo.
By a little change to procps, "vmstat -a" can show these statistics about
particular node.
From: mita akinobu <amgta@yacht.ocn.ne.jp>
get_zone_counts() is used by max_sane_readahead(), and
max_sane_readahead() is often called in filemap_nopage().
Signed-off-by: Akinobu Mita <amgta@yacht.ocn.ne.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] inode time update funnies in ncpfs
ncfpfs seems to update inode times by hand everywhere instead of using
the proper helpers. This means:
- the atime updates in mmap() and read() seems to miss various checks
upodate_atime or one of the wrappers does. Also it doesn't mark the
inode dirty.
- in write() you update mtime and _a_time instead of ctime as expected,
also the usual checks and optimizations are missing.
In addition the fops contain some bogus checks like for a refular file (but
the fops are only used of ISREG files) and inode->i_sb although that is
guranteed to be non-zero.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<olh@suse.de>
[PATCH] remove obsolete htab-reclaim in Documentation/sysctl/kernel.txt
This entry is long gone, even 2.4 doesnt have it anymore.
Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<olh@suse.de>
[PATCH] remove obsolete zero-paged in Documentation/sysctl/kernel.txt
This entry was removed during 2.5 development.
Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<arjanv@redhat.com>
[PATCH] Fix fs/locks.c init order
The patch below fixes an interesting oddity we're seeing with fedora core
development (where we recently started using udev heavily); basically right
now filelock_init() is a module_init(), eg runs late. However that breaks
down because there are earlier /sbin/hotplug callouts, which with udev, do
locking operations. When that happens the kernel oopses because the slabs
for file locks aren't initialized yet.
Solution: initialize this way early. It's only a kmem_cache_create after
all, so can happen early.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] describe Intel cache descriptors.
Describe what the Intel cache descriptors actually mean in comments. Taken
from 24151827.pdf.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] Alex DeVries has moved
The patch below replaces all occurences of two bouncing email addresses of
Alex deVries in the kernel with his current address.
It's already ACK'ed by Alex deVries.
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<david-b@pacbell.net>
[PATCH] USB OTG: add usb_bus_start_enum() (1/5)
Define a new usb_bus_start_enum() routine that's available with OTG.
It starts immediate enumeration (port reset) and makes khubd wake up
later. Non-OTG code could start to use this, given some attention to
HC-specific reset timing issues.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB OTG: ohci reset updates (2/5)
Generic OTG and reset support for OTG.
- Declare and use a start_hnp() board-specific procedure. The OMAP
implementation will come separately, it can't yet be configured.
- When OTG is configured, implement the usb_bus_start_enum() hook;
that just starts a root port reset.
- When some task (usually khubd) resets a root port, make sure it takes
the full 50 msec. The OHCI reset timer is in hardware, and the host
may need to issue multiple resets to guard against concurrent resume.
- For backward compatibility, don't kick in the new 50 msec logic unless
it could be needed: without CONFIG_USB_SUSPEND, nothing will suspend
so nothing could resume. Which is good, at least until we start to
measure how long a reset takes ... it seems chip-specific.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB OTG: usbcore enumeration (3/5)
Teach usbcore how to enumerate OTG devices and perform HNP:
- CONFIG_USB_OTG is a boolean; it selects CONFIG_USB_SUSPEND.
Boards with a Mini-AB connector should offer it as a config
option; no other hardware could support OTG.
- Before resetting a port, make sure it's not still suspended.
(For example, after an HNP role switch.)
- When an OTG A-Host enumerates a dual-role device, set the
appropriate device feature: B_HNP_ENABLE if it's connected
to the OTG port, otherwise A_ALT_HNP_SUPPORT.
- When an OTG B-Host enumerates a dual-role device, don't
bother debouncing ... the power session is stable already,
the A-Host already debounced.
- The OTG "Targeted Peripheral List" lives in a product-customized
"otg_whitelist.h" header.
- CONFIG_USB_OTG_WHITELIST lets developers choose to ignore whitelist
failures, so unsupported devices can be configured anyway.
- If the whitelist check fails, immediately suspend the device.
* For dual-role devices, that triggers HNP so the other device
can try to act as host.
* For peripheral-only devices, that conserves power ... but not
quite as much as turning off power on that port, which should
eventually be done with OTG ports (and all other ports that
support SRP).
The whitelist logic tries to make use of the existing usb_device_id
logic, but since the interface info isn't available that early it's
a bit awkward use information anywhere outside the device descriptor.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB OTG: gadget zero (4/5)
Minor gadget zero fixes:
- correct string descriptions: they're always UTF-8
- for OTG, report HNP and remote wakeup support
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB OTG: doc updates (5/5)
Gadget API update. Covers OTG support, lists a few more
types of hardware support, mentions gadget driver updates
including RNDIS, serial with CDC-ACM, and gadgetfs AIO.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<greg@kroah.com>
USB: fix bad value in kaweth.c driver
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<trond.myklebust@fys.uio.no>
[PATCH] Undo broken FH conversion that broke nfsroot compile
That conversion to nfs_fh_copy() is bogus since we're not copying into
an nfs_fh anyway. Just revert it.
<wli@holomorphy.com>
[PATCH] Missing free_area_init_node() conversions
Update architectures for the free_area_init_node() API change.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] /dev/ptmx open() fixes
If tty_open() fails for a normal serial device, we end up doing cleanups
that should only happen for failed open of /dev/ptmx. The results are
not pretty - devpts et.al. end up very confused. That's what gave
problems with ptmx.
This splits ptmx file_operations from the normal case and cleans up both
tty_open() and (new) ptmx_open(). Survived serious beating.
<axboe@suse.de>
[PATCH] GPCMD_SEND_CUE_SHEET missing in scsi_ioctl
Forgot one command, GPCMD_SEND_CUE_SHEET is also ok for write open.
Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] I2O: fixes compiler warning on x86_64 in i2o_config
From: Markus Lidel <Markus.Lidel@shadowconnect.com>
- use compat_ptr to convert 32-bit pointer to 64-bit pointer in
i2o_cfg_passthru32.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<davej@redhat.com>
[CPUFREQ] Remove fsb argument from longhauls calc_speed()
It's being passed a global everywhere, so it may as well directly reference it.
Signed-off-by: Dave Jones <davej@redhat.com>
<sam@mars.ravnborg.org>
kbuild: fix cc-version
cc-version needs to use $(shell to get the gcc version.
Before if gave the following error when building the kernel:
/bin/sh: line 1: [: too many arguments
And all checks for gcc version were broken.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<zaitcev@redhat.com>
[PATCH] USB: ub patch to use add_timer
It just occured to me that urb->timeout is not functional.
<akpm@osdl.org>
[PATCH] I2O: removes multiplexer notification and use
From: Markus Lidel <Markus.Lidel@shadowconnect.com>
- remove the multiplexer notification and replace it with a type-safe
function for each event (controller add/remove, device add/remove).
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] i2o maintainer
From: Markus Lidel <Markus.Lidel@shadowconnect.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<greg@kroah.com>
USB: Remove struct urb->timeout as it does not work
Well, it works only for UHCI controllers, but that's not acceptable...
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<akpm@osdl.org>
[PATCH] eata_pio.c warning fix
drivers/scsi/eata_pio.c: In function `eata_pio_host_reset':
drivers/scsi/eata_pio.c:514: warning: implicit declaration of function `msleep'
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] reduce aacraid namespace polution
From: Jens Axboe <axboe@suse.de>
This easily clashes with others (it's been seen, hence the patch), so lets
move aacraid log levels to something a little more private.
Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<dougg@torque.net>
[PATCH] scsi_level constants in scsi.h
The scsi_level value in struct scsi_device is a bit
mysterious. Hopefully this patch makes it a bit clearer
since it is visible via sysfs.
Changes:
- add scsi_level constants for SPC-2 and SPC-3
- comment on relationship between scsi_level and INQUIRY response
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<stevef@stevef95.austin.ibm.com>
CIFS: remove deprecated sleep_on_timeout
Signed-off-by: Steve French (sfrench@us.ibm.com)
<greg@kroah.com>
USB: rip the pwc decompressor hooks out of the kernel, as they are a GPL violation.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: ohci_omap updates
This updates the OMAP OHCI support to match the latest from the
Linux-OMAP tree. Notable changes from the preceding version:
- Use the new USB init model (arch/arm/mach-omap/usb.c).
- The OMAP-specific bus is gone; it now uses platform_device.
(Update from Tony Lindgren.)
- Works on the H2 board, which requires the external isp1301
transceiver even in non-OTG configurations.
- Adds OTG support.
- Adds basic power management calls.
The mach-omap/Kconfig file in the main Linux tree is a bit out of
date, it doesn't know about CONFIG_ARCH_OMAP_OTG (for the OMAPs that
have OTG silicon).
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: isp1301_omap driver (OTG core)
This adds the isp1301_omap driver, supporting USB OTG on OMAP systems.
The driver tightly couples two different chunks of hardware, which are
used to implement the OTG protocols:
- The Philips ISP1301 OTG transceiver (an I2C device) senses voltage
levels and sources VBUS current in the A-Device roles.
- OMAP's OTG controller handles lots of OTG transitions, and
tells the transceiver what to do.
The driver implements the abstract "otg_transceiver" API, since it's got to
talk to both the host controller (OHCI on current OMAPs) and the peripheral
controller (omap_udc) while hiding a variety of implementation details. It
should be easy to tweak to work on other OMAP boards using the isp1301 chip;
OMAP boards with other transceivers, or non-OMAP boards using isp1301, will
probably find things to learn from.
Note that this also supports two non-OTG modes, with the OTG controller
disabled; very handy for debugging just the host side USB stack, or just the
peripheral side USB stack.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<dtor_core@ameritech.net>
[PATCH] kobject: fix kobject_set_name comment.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Update unlink testing code in the usbtest driver
Greg:
This patch updates the part of the usbtest driver that tests URB
unlinking. The move to usb_kill_urb() invalidated some of the old tests.
There's a corresponding change to the UHCI driver, causing it to return a
more descriptive error code in the rare event that an URB is cancelled
after it has been linked but before it has been queued.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<davem@nuts.davemloft.net>
[SPARC64]: Save/restore %asi properly in signal handling.
Signed-off-by: David S. Miller <davem@redhat.com>
<jejb@mulgrave.(none)>
fix NC5380 locking and delayed work handling
From: Christoph Hellwig <hch@lst.de>
- move delayed workqueue handling to schedule_delayed_work instead
of the old horrible global list thing
- add NCR5380_exit to make sure all delayed work is flushed on HBA
(or module) removal
- fix locking
Patch fixed up to apply and
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<herbert@gondor.apana.org.au>
[NET]: Use pskb_expand_head() instead of skb_copy() in skb_checksum_help().
Here is the patch that you wanted to shoot holes at :)
The idea is simple. None of the callers of skb_checksum are passing it
skb's which are shared. They may be cloned however. But the application
checksum is always in the skb header so there is no need to linearise it.
Supposing all these assumptions are correct, then we can avoid the overhead
of skb_copy() and get away with pskb_expand_head().
If the assumption is wrong, we will find out because
pskb_expand_head() will BUG() if skb_shared() is true.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@redhat.com>
<shemminger@osdl.org>
[NET]: deliver_skb() cleanup
Cleanup of deliver_skb: get rid of unused argument and use it
in the NET_CLS_ACT hook.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<shemminger@osdl.org>
[NET]: Another cleanup in netif_receive_skb()
Move rcu_read_lock up a little, since it needs to be
done in both branches anyway. Also whitespace fix.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<tgraf@suug.ch>
[NET]: Device mtu/txqlen/ifmap via rtnetlink.
Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@redhat.com>
<akpm@osdl.org>
[PATCH] R8169_NAPI help text
From: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] sk98lin procfs fix
From: Christoph Hellwig <hch@infradead.org>
sk98line tries to register a procfile with the interfacename of the struct
net_device. The patch below (ontop of the previous one) makes it work
unless you change the interface name manually, but as Linux explicitly
allows that the interface is fundamentally broken and probably should just
go away.
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] e1000 build fix
drivers/net/e1000/e1000_main.c: In function `e1000_up':
drivers/net/e1000/e1000_main.c:136: sorry, unimplemented: inlining failed
in call to 'e1000_irq_enable': function body not available
drivers/net/e1000/e1000_main.c:274: sorry, unimplemented: called from here
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] e1000 inlining fix
From: Nick Orlov <bugfixer@list.ru>
e1000 fixes for gcc-3.4.1
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] net/smc9194.c: fix gcc-3.5 inline compile errors
From: Adrian Bunk <bunk@fs.tum.de>
CC drivers/net/smc9194.o
drivers/net/smc9194.c: In function `smc_interrupt':
drivers/net/smc9194.c:278: sorry, unimplemented: inlining failed in call
to 'smc_rcv': function body not available
drivers/net/smc9194.c:1254: sorry, unimplemented: called from here
drivers/net/smc9194.c:283: sorry, unimplemented: inlining failed in call
to 'smc_tx': function body not available
drivers/net/smc9194.c:1258: sorry, unimplemented: called from here
make[2]: *** [drivers/net/smc9194.o] Error 1
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] net/hamachi.c: gcc-3.5 build fixes
From: Adrian Bunk <bunk@fs.tum.de>
CC drivers/net/hamachi.o
drivers/net/hamachi.c: In function `hamachi_interrupt':
drivers/net/hamachi.c:562: sorry, unimplemented: inlining failed in call
to 'hamachi_rx': function body not available
drivers/net/hamachi.c:1402: sorry, unimplemented: called from here
make[2]: *** [drivers/net/hamachi.o] Error 1
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] net/rrunner.c: gcc-3.5 fixes
From: Adrian Bunk <bunk@fs.tum.de>
CC drivers/net/rrunner.o
drivers/net/rrunner.c: In function `rr_timer':
drivers/net/rrunner.h:846: sorry, unimplemented: inlining failed in call
to 'rr_raz_tx': function body not available
drivers/net/rrunner.c:1155: sorry, unimplemented: called from here
drivers/net/rrunner.h:847: sorry, unimplemented: inlining failed in call
to 'rr_raz_rx': function body not available
drivers/net/rrunner.c:1156: sorry, unimplemented: called from here
make[2]: *** [drivers/net/rrunner.o] Error 1
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] net/tulip/dmfe.c: gcc-3.5 fixes
From: Adrian Bunk <bunk@fs.tum.de>
CC drivers/net/tulip/dmfe.o
drivers/net/tulip/dmfe.c: In function `dmfe_rx_packet':
drivers/net/tulip/dmfe.c:323: sorry, unimplemented: inlining failed in
call to 'cal_CRC': function body not available
drivers/net/tulip/dmfe.c:936: sorry, unimplemented: called from here
make[3]: *** [drivers/net/tulip/dmfe.o] Error 1
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] ixgb_main.c: fix inline compile errors
From: Adrian Bunk <bunk@fs.tum.de>
drivers/net/ixgb/ixgb_main.c: In function `ixgb_up':
drivers/net/ixgb/ixgb_main.c:86: sorry, unimplemented: inlining failed
in call to 'ixgb_irq_enable': function body not available
drivers/net/ixgb/ixgb_main.c:234: sorry, unimplemented: called from here
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] via-velocity: more inetaddr_notifier fix
From: Francois Romieu <romieu@fr.zoreil.com>
There is no guarantee that the event which gets passed is associated to a
via-velocity device, thus preventing to dereference dev->priv as if it
always was a struct velocity_info *. The via-velocity devices are kept in
a module private list for comparison.
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<jejb@mulgrave.(none)>
scsi_mid_low_api.txt update
From: Douglas Gilbert <dougg@torque.net>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] sk98lin/skge.c doesn't compile with PROC_FS=n
From: Adrian Bunk <bunk@fs.tum.de>
drivers/net/sk98lin/skge.c: In function `skge_remove_one':
drivers/net/sk98lin/skge.c:5116: warning: implicit declaration of function `remove_proc_entry'
drivers/net/sk98lin/skge.c:5116: `pSkRootDir' undeclared (first use in this function)
drivers/net/sk98lin/skge.c:5116: (Each undeclared identifier is reported only once
drivers/net/sk98lin/skge.c:5116: for each function it appears in.)
drivers/net/sk98lin/skge.c: In function `skge_init':
drivers/net/sk98lin/skge.c:5188: `SK_Root_Dir_entry' undeclared (first use in this function)
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] fix net/hamradio/dmascc with gcc 3.4
From: Adrian Bunk <bunk@fs.tum.de>
drivers/net/hamradio/dmascc.c: In function `scc_isr':
drivers/net/hamradio/dmascc.c:250: sorry, unimplemented: inlining
failed in call to 'z8530_isr': function body not available
drivers/net/hamradio/dmascc.c:969: sorry, unimplemented: called from
here
drivers/net/hamradio/dmascc.c:250: sorry, unimplemented: inlining
failed in call to 'z8530_isr': function body not available
drivers/net/hamradio/dmascc.c:978: sorry, unimplemented: called from
here
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] drivers/net/wan/cycx_x25.c:189: warning: conflicting types for built-in function 'log2'
From: Jesper Juhl <juhl-lkml@dif.dk>
To silence the warning in $subject, rename log2 to cycx_log2 in this file
to remove the clash, so there's no doubt that this file uses it's own
defined log2 function.
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] via-velocity: wrong module name in Kconfig documentation
From: Francois Romieu <romieu@fr.zoreil.com>
Copy/paste abuse.
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] 8139too: Rx fifo/overflow recovery
From: Francois Romieu <romieu@fr.zoreil.com>
This patch allows to update the interrupt status register after an Rx
overflow or a Rx fifo error even when the Rx buffer contains no packet.
The update must be kept in the packet processing loop to prevent an Rx
error storm. As an interesting behavior, the status of the interrupt
status register must not be read early.
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] 8139too: be sure to progress during rtl8139_rx()
From: Francois Romieu <romieu@fr.zoreil.com>
If the Rx buffer gets corrupted or the FIFO hangs in new interesting ways,
this code prevents the driver from looping in ksoftirqd context without
making any progress.
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] Typo in drivers/net/dl2k.h
From: Alexander Shatohin <ash@tsi.lv>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] netdrv gianfar: fix printk output
From: Kumar Gala <galak@somerset.sps.mot.com>
Fix usage of printk on the output of mac address.
Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] via-rhine: suspend/resume support
From: Roger Luethi <rl@hellgate.ch>
From: Arkadiusz Miskiewicz
Signed-off-by: Arkadiusz Miskiewicz <arekm@pld-linux.org>
Signed-off-by: Roger Luethi <rl@hellgate.ch>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] via-rhine: de-isolate PHY
From: Roger Luethi <rl@hellgate.ch>
PHYs may come up isolated. Make sure we can send data to them. This code
section needs a clean-up, but I prefer to merge this fix in isolation.
Report and suggested fix by Tam, Ming Dat (Tommy).
Signed-off-by: Roger Luethi <rl@hellgate.ch>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<akpm@osdl.org>
[PATCH] via-rhine: small fixes
From: Roger Luethi <rl@hellgate.ch>
- remove Rhine model names (per Jeff's request)
- remove redundant calls to clear MII cmd
- fill some rhine_private fields earlier
Signed-off-by: Roger Luethi <rl@hellgate.ch>
Signed-off-by: Andrew Morton <akpm@osdl.org>
<torvalds@ppc970.osdl.org>
Use "insert_resource()" to add the PCI resources to the
resource tree.
In contrast to the old "request_resource()", this allows
us to add a resource even when firmware (ACPI) has marked
part of it as being in use.
<paulus@samba.org>
[PATCH] ppc64: better handling of H_ENTER failures
This changes the hash insertion routines to return an error instead of
calling panic() when HV refuses to insert a HPTE (the hypervisor call to
set up a hashtable PTE is H_ENTER).
The error is now propagated upstream, and either bad_page_fault() is
called (kernel mode) or a SIGBUS signal is forced (user mode). Some
other panic() cases are also turned into BUG_ON.
Overall, this should provide us with better debugging data if the
problem happens, and avoids errors from userland mapping /dev/mem and
trying to use forbidden IOs (XFree ?) to bring the whole kernel down.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rmk@flint.arm.linux.org.uk>
[ARM] Correct dma_to_virt()/virt_to_dma() return types.
<perex@suse.cz>
ALSA CVS update
ALSA sequencer
don't fake the sender address in messages forwarded by snd-seq-dummy to prevent confusing other clients (e.g. snd-seq-oss)
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
ALSA<-OSS sequencer
remove superfluous snd_seq_oss_readq_clear call
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
ALSA<-OSS sequencer
don't copy uninitialized kernel stack data to userspace
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
ALSA<-OSS sequencer
rewrote snd_seq_oss_read/snd_seq_oss_write to fix various
buffer overflow/locking/nonstandard behaviour bugs
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
PPC PMAC driver,PPC Tumbler driver
pmac mixer update from shadow register on resume and switching DRC on headphone plug
The attached patch improved the pmac driver by implementing updating the
mixer from the shadow register after a resume or headphone interrupt, as
well as automatically selecting DRC on headphone plug.
For normal line-out one does not want the DRC, but it should
automatically be reenabled after the headphone is unplugged: Otherwise
the power to the internal speakers is high enought to destroy them
(happend once to my iBook - when it still had warrenty ... ;-)
Signed-off-by: Rene Rebe <rene.rebe@gmx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ES1938 driver
Added (experimental) PM support.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
EMU10K1/EMU10K2 driver
Fix Audigy + AC97 Master Volume
This patch sets AC97 Master volume to 0 (0 dB). Previous value was
0x0202 (-3 dB) (this was my misstake).
Signed-off-by: Peter Zubaj <pzad@pobox.sk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Intel8x0 driver
Add to snd-intel8x0 AC97 quirk list
Additions for Dell Precision 450, HP xw4200 and xw8200.
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ICE1712 driver
Removed MPU401 detection from Aureon and Prodigy boards.
The bogus mpu401 may cause hang-up on some apps.
Now the detection bit in EEPROM image is removed.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
PPC AWACS driver
awacs.c num_controls -> ARRAY_SIZE fix
Signed-off-by: Joseph Fannin <jhf@rivenstone.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
VIA82xx driver
Added the DXS entry for Uniwill/Targa Visionary XP-210.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ICE1712 driver
Fixed the master volume control.
The master volume control was inverted, fixed now.
The volume range is narrowed to -64dB.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Maestro3 driver
Call pci_set_master() in resume (to be sure)
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Maestro3 driver
Fixed the typo in the last change for pci_set_master() call...
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
AC97 Codec Core
Added jack sense switches for AD1885
'Headphone Jack Sense' and 'Line Jack Sense' switches are added for
AD1885. This will enable the h/w swich between the headphone and
the internal speaker on some laptops.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
MPU401 UART
use acpi_register_gsi
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
PPC
beep support depends on INPUT
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
ATIIXP driver
add IXP400 support
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
RawMidi Midlevel
fix handling of EFAULT errors in snd_rawmidi_read/write;
fix hang when writing to /dev/midi* with O_SYNC
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
ALSA sequencer
remove (now obsolete) support for _KERNEL_QUOTE events
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
<perex@suse.cz>
ALSA CVS update
Intel8x0 driver
intel8x0: Fixed a long mdelay()
A long mdelay() call in prepration of 4/6 channels on nForce
is optimized and replaced with msleep().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
Intel8x0 driver,Intel8x0-modem driver
Fixed resume when interrupts are shared with another devices.
Signed-off-by: Jozef Vesely <vesely@gjh.sk>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
<perex@suse.cz>
ALSA CVS update
ICE1712 driver
Misc fixes for Aureon boards.
- Fixed center/LFE volume controls.
- Provide individual driver names for Aureon and Prodigy boards
since they have different channel assignment from Revo, etc.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<rmk@flint.arm.linux.org.uk>
[ARM] Move DMA mask-based bounce detection to dmabounce code.
<trini@kernel.crashing.org>
ppc32: Fix compiling of SBC82xx.
Noticed by David Woodhouse.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<trini@kernel.crashing.org>
ppc32: Rework the hooks for serial in the bootwrapper.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
<ben-linux@org.rmk.(none)>
[ARM PATCH] 2042/1: S3C2410 - Clock fixes, added watchdog clock
Patch from Ben Dooks
Added clock definition for watchdog, and fixed it so
that clocks that cannot be enabled/disabled will be
left alone.
Fixed typo in naming of clocks when registering
<ben-linux@org.rmk.(none)>
[ARM PATCH] 2043/1: S3C2410 update to registered devices
Patch from Ben Dooks
Updated all arch/arm/mach-s3c2410/mach-XXX.c files to
register default set of devices
Added new board struct to keep this sort of info, as it
isn't possible to register platform_devices until after
the init_io functions have been called.
<ben-linux@org.rmk.(none)>
[ARM PATCH] 2044/1: S3C2410 - missing IRQ_TICK from RTC resources
Patch from Ben Dooks
Fixes missing IRQ_TICK from RTC resources
<jejb@mulgrave.(none)>
Add internal API to remove reliance on deprecated SCSI_IOCTL_TEST_UNIT_READY
This was used by sd and sr
Instead make them use
scsi_test_unit_ready() which is exported now
from scsi_lib.c
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<buytenh@org.rmk.(none)>
[ARM PATCH] 2046/1: fix nwfpe for double arithmetic on big-endian platforms
Patch from Lennert Buytenhek
Hi,
I need the patch below (against 2.6.8-rc1-ds1) to make nwfpe properly
emulate arithmetic with doubles on a big endian ARM platform.
From reading the mailing list archives and from helpful comments I've
received from people on this list, I gather that this has come up in
the past, but it appears that Russell King was never really convinced
as to why this patch is needed. I think I understand what's going on,
and will try to explain.
On little endian ARM, the double value 1.0 looks like this when stored
in memory in FPA word ordering:
bytes: 0x00 0x00 0xf0 0x3f 0x00 0x00 0x00 0x00
u32s: 0x3ff00000 0x00000000
u64: 0x000000003ff00000
On big endian, it looks like this:
bytes: 0x3f 0xf0 0x00 0x00 0x00 0x00 0x00 0x00
u32s: 0x3ff00000 0x00000000
u64: 0x3ff0000000000000
It appears to be this way because once upon a time, somebody decided
that the sub-words of a double will use native endian word ordering
within themselves, but the two separate words will always be stored
with the most significant one first. God knows why they did it this
way, but they did.
Anyway. The key observation is that nwfpe internally stores double
values in the type 'float64', which is basically just a typedef for
unsigned long long. It never accesses 'float64's on the byte level
by casting pointers around or anything like that, it just uses direct
u64 arithmetic primitives (add, shift, or, and) for float64
manipulations and that's it.
So. For little endian platforms, 1.0 looks like:
0x00 0x00 0xf0 0x3f 0x00 0x00 0x00 0x00
But since nwfpe treats it as a u64, it wants it to look like:
0x00 0x00 0x00 0x00 0x00 0x00 0xf0 0x3f
So, that's why the current code swaps the words around when getting
doubles from userspace and putting them back (see fpa11_cpdt.c,
loadDouble and storeDouble.)
On big endian, 1.0 looks like:
0x3f 0xf0 0x00 0x00 0x00 0x00 0x00 0x00
Since nwfpe treats it as a u64, it wants it to look like:
0x3f 0xf0 0x00 0x00 0x00 0x00 0x00 0x00
Hey! That's exactly the same. So in this case, it shouldn't be
swapping the halves around. However, it currently does that swapping
unconditionally, and that's why floating point emulation messes up.
This is how I understand things -- hope it makes sense to other people
too.
cheers,
Lennert
<buytenh@org.rmk.(none)>
[ARM PATCH] 2047/1: disable NWFPE_XP on big endian
Patch from Lennert Buytenhek
Hi,
gcc doesn't understand 80-bit floating point on the ARM currently,
according to the kernel's Kconfig docs, but it would seem that the
current extended double emulation code is broken for big endian
platforms.
So, this patch disables NWFPE_XP on big endian architectures, until
someone comes round and fixes it.
cheers,
Lennert
<tony@com.rmk.(none)>
[ARM PATCH] 2040/1: Increase ARM HARDIRQ_BITS to 9, version 2
Patch from Tony Lindgren
This is an updated version of patch 2004/1 to optimize for immediate constant
<david-b@pacbell.net>
[PATCH] USB: add lh7a40x_udc driver
This patch implements the USB client controller (UDC) driver from scratch on
the LPD-LH7A40X development boards.
Signed-off-by: Bo Henriksen <bo.henriksen@nordicid.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: add omap_udc driver
This patch adds a UDC driver for OMAP, which should work on most
OMAP processors. It's been tested most on OMAP 1611/5912. The
driver supports all USB transfer types (including ISO), has limited
DMA support, and seems to work with all gadget drivers, both to
Linux hosts and to MS-Windows ones.
One reason this UDC is particularly interesting is that recent OMAP
processors all support "USB On-The-Go" (OTG) ... and this driver
supports it on at least "H2-like" boards.
Another reason is that the UDC is very flexible and fully featured;
gadget drivers can allocate fifo space to endpoints in the way that's
most convenient for the application.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: ethernet gadget, minor fixes
Minor tweaks to the ethernet gadget driver:
- mention that it requires full-duplex hardware
- correct the string description: they're always UTF-8
- fix minor C error: don't "&array" (Al Borchers)
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<bjohnson@sgi.com>
[IA64-SGI] Add full PROM version banner to /proc/sgi_prominfo/nodeXX/version.
Signed-off-by: Brian J. Johnson <bjohnson@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<jbarnes@sgi.com>
[IA64] Add include pagemap.h to tlb.h to fix warnings when CONFIG_SWAP=n.
I noticed when building with CONFIG_SWAP=n that tlb.h gave a warning about
some undefined symbols. This is because it was pulling them in through
swap.h, but when CONFIG_SWAP=n, they're no longer pulled in. Adding
pagemap.h to tlb.h fixes the problem.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<jbarnes@sgi.com>
[IA64] generic_defconfig: Enable codepage/iocharset for VFAT filesystems.
VFAT filesystems need to have codepages and iocharsets specified these days,
so build some into the kernel to make it easier to mount /boot/efi on ia64
systems.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<icampbell@arcom.com>
[PATCH] MTD: Additional JEDEC device types
Add support for a couple of BIOS ROM devices.
The patch has been committed to the MTD CVS tree and adds entries to
jedec_probe.c for AMD AM29F002T, Hyundai HY29F002T and Macronix
MX29F002T parts.
This version is slightly updated from the previous once since I
accidentally added MANUFACTURER_MACRONIX when it already existed. I
also moved the new definitions to go along with the alphabetical by
manufacturer layout of the file.
Signed-off-by: Ian Campbell <icampbell@arcom.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<stern@rowland.harvard.edu>
[PATCH] USB: Use 8-byte hub status URB buffer
This patch changes the size of the buffer allocated for each hub's status
URB from 3 bytes to 8. The purpose is to avoid "babble" errors with
certain buggy hubs. Although I only know of one type of device which does
this, the patch does solve its problem and it adds no overhead for anyone
else since kmalloc doesn't dole out memory in chunks smaller than 8 bytes
(32 actually, on a PC).
This is a small thing, but it doesn't hurt and it will make life easier
for a few people.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<stern@rowland.harvard.edu>
[PATCH] USB: Add missing cleanup to usb_register_root_hub()
This patch adds some simple cleanups that are missing for one of the error
case in usb_register_root_hub(). I would be very surprised if this code
ever gets executed, but we might as well be correct.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<yanmin.zhang@intel.com>
[IA64] Fix boot problems when using "mem=" boot parameter.
My tiger-4 machine has 16GB memory. Kernel 2.6.8 fails to boot on it
when command line parameter mem=8G, and it also fails when mem being
set to other value, such as 7G, 10G.
Basically, in function efi_memmap_walk, md->num_pages might be decreased
if mem_limit is set, and then at the next time when efi_memmap_walk is
called, trim_top might trim the md again because of IA64_GRANULE_SIZE
alignment, then another md which is beyond mem_limit at the beginning
will be chosen, and its physical page number is larger than max_pfn. Then,
a BUG check is triggered.
Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
Signed-off-by: Yao Jun <junx.yao@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<yanmin.zhang@intel.com>
[IA64] contig.c: Function find_bootmap_location has 2 bugs.
Firstly, if it's done successfully, it should return -1 instead of 1
because its caller, efi_memmap_walk, will end when find_bootmap_location
returns a value smaller than 0.
Secondly, statement "free_start = PAGE_ALIGN(rsvd_region[i].end)" should
been moved forward. free_start needs to be initialized for every loop
iteration. Current implementation is buggy where initialization is
skipped if range_end <= range_start. Skipping initializing will leads
to overlapping bootmap with one of the rsvd_regions and subsequently
kernel hang at boot time.
Singed-off-by:(sic) Zhang Yanmin <yanmin.zhang@intel.com>
Signed-off-by: Yao Jun <junx.yao@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<ianw@gelato.unsw.edu.au>
[IA64] Remove extraneous MMU_TRACE debugging macros
Patch created by Ian Wienand.
Signed-off-by: Tony Luck <tony.luck@intel.com>
<dcn@sgi.com>
[IA64] allow OEM written modules to make calls to ia64 OEM SAL functions.
Add wrapper functions for SAL_CALL(), SAL_CALL_NOLOCK(), and
SAL_CALL_REENTRANT() that allow OEM written modules to make
calls to ia64 OEM SAL functions.
Signed-off-by: Dean Nelson <dcn@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<rmk@flint.arm.linux.org.uk>
[ARM] Fix some sparse complaints:
Pointers are NULL not 0.
Remove obviously unnecessary iBCS2 shm stuff... we're ARM after all.
<greg@kroah.com>
kobject: convert struct kobject use kref.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<khali@linux-fr.org>
[PATCH] I2C: rename in0_ref to cpu0_vid
This patch changes all the i2c chip drivers and documentation to use the
name "cpu0_vid" instead of "in0_ref". The name "in0_ref" was an error in
the first place as motherboard manufacturers may fail to follow the chip
manufacturer's recommendation about which "in" channel to use for VCore
monitoring.
The new name leaves room for chips able to monitor more than 1 vid
value, such as the LM93 and, to a lesser extent, the PC87360 family (all
by National Semiconductor). These chips are typically designed for
dual-CPU motherboards.
This breaks the interface (obviously) so libsensors has been updated to
support both names.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<khali@linux-fr.org>
[PATCH] I2C: update kernel credits/maintainers
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<romieu@fr.zoreil.com>
[PATCH] pci-driver: function documentation fix
The returned value can not be null. Yet its description suggests differently.
From: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<johnrose@austin.ibm.com>
[PATCH] PCI Hotplug: create pci_remove_bus()
The following patch implements a pci_remove_bus() that can be used by
hotplug drivers for the removal of root buses. It also defines a
release function that frees the device struct for pci_bus->bridge when a
root bus class device is unregistered.
Signed-off-by: John Rose <johnrose@austin.ibm.com>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<rmk@flint.arm.linux.org.uk>
[ADFS] Fix sparse signed bitfield warning
<levon@movementarian.org>
[IA64] support for IA64 hardware performance counters via the perfmon interface
This patch provides support for IA64 hardware performance counters via
the perfmon interface. Please consider applying.
Signed-off-by: John Levon <levon@movementarian.org>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<viro@www.linux.org.uk>
[PATCH] removed bogus casts of SPIN_LOCK_UNLOCKED
<viro@www.linux.org.uk>
[PATCH] annotation of ki_buf
->ki_buf is always a userland pointer.
<viro@www.linux.org.uk>
[PATCH] annotation of xfs sendfile
->sendfile() takes kernel pointer, not userland one.
<viro@www.linux.org.uk>
[PATCH] killed check_region() in ixj
Killed check_region(), fixed an old bug in ISA case (we checked the wrong
region before claiming the right one - dumb typo back in 2.4.early)
<viro@www.linux.org.uk>
[PATCH] signed char bugs in ixj
Fixed assumption that char is always unsigned
<viro@www.linux.org.uk>
[PATCH] warning fix in usb/gadget/inode.c
wrong type of return value.
<viro@www.linux.org.uk>
[PATCH] usb alignment fixes
Several places did le16_to_cpup() on misaligned address, which blows on
any little-endian platform that doesn't like misaligned reads.
<viro@www.linux.org.uk>
[PATCH] mda dependency
MDA is ISA-only ;-)
<shemminger@osdl.org>
[BRIDGE]: Fix oops when mangling and brouting and tcpdumping packets
The ebtables brouting chain, traversed through the call
br_should_route_hook(), can alter a packet. The redirect target
does this, f.e., to change the MAC destination.
Bart discovered this and proposed a patch; this is a revised version.
This version cleans up the handle_bridge code in net/core/dev.c as well
as getting rid of extra rcu_read_lock and only does the br_port checking
once.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<torvalds@ppc970.osdl.org>
vt: don't bother doing UTF translation in control states.
And don't accept UTF translations as the start of a control
state either.
<torvalds@ppc970.osdl.org>
Merge common signal handling fault handling in generic code.
<minyard@acm.org>
[PATCH] signal handling race fix
The problem:
In arch/i386/signal.c, in the do_signal() function, it calls
get_signal_to_deliver() which returns the signal number to deliver (along
with siginfo). get_signal_to_deliver() grabs and releases the lock, so
the signal handler lock is not held in do_signal(). Then the do_signal()
calls handle_signal(), which uses the signal number to extract the
sa_handler, etc.
Since no lock is held, it seems like another thread with the same
signal handler set can come in and call sigaction(), it can change
sa_handler between the call to get_signal_to_deliver() and fetching the
value of sa_handler. If the sigaction() call set it to SIG_IGN, SIG_DFL,
or some other fundamental change, that bad things can happen.
The patch:
You have to get the sigaction information that will be delivered while
holding sighand->siglock in get_signal_to_deliver().
In 2.4, it can be fixed per-arch and requires no change to the
arch-independent code because the arch fetches the signal with
dequeue_signal() and does all the checking.
The test app:
The program below has three threads that share signal handlers. Thread
1 changes the signal handler for a signal from a handler to SIG_IGN and
back. Thread 0 sends signals to thread 3, which just receives them.
What I believe is happening is that thread 1 changes the signal handler
in the process of thread 3 receiving the signal, between the time that
thread 3 fetches the signal info using get_signal_to_deliver() and
actually delivers the signal with handle_signal().
Although the program is obvously an extreme case, it seems like any
time you set the handler value of a signal to SIG_IGN or SIG_DFL, you can
have this happen. Changing signal attributes might also cause problems,
although I am not so sure about that.
(akpm: this test app segv'd on SMP within milliseconds for me)
#include <signal.h>
#include <stdio.h>
#include <sched.h>
char stack1[16384];
char stack2[16384];
void sighnd(int sig)
{
}
int child1(void *data)
{
struct sigaction act;
sigemptyset(&act.sa_mask);
act.sa_flags = 0;
for (;;) {
act.sa_handler = sighnd;
sigaction(45, &act, NULL);
act.sa_handler = SIG_IGN;
sigaction(45, &act, NULL);
}
}
int child2(void *data)
{
for (;;) {
sleep(100);
}
}
int main(int argc, char *argv[])
{
int pid1, pid2;
signal(45, SIG_IGN);
pid2 = clone(child2, stack2 + sizeof(stack2) - 8,
CLONE_SIGHAND | CLONE_VM, NULL);
pid1 = clone(child1, stack1 + sizeof(stack2) - 8,
CLONE_SIGHAND | CLONE_VM, NULL);
for (;;) {
kill(pid2, 45);
}
}
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] signal-race fixes for s390
Update s30 for the signal race fix
From: Mikael Pettersson <mikpe@csd.uu.se>
The signal-race-fixes patch in 2.6.8-rc2-mm1 appears to be a bit broken on
s390.
When forcing a SIGSEGV the old code updated "*ka", where ka was a pointer
to current's k_sigaction for SIGSEGV. Now "ka_copy" points to a copy of
that structure, so assigning "*ka_copy" doesn't do what we want. Instead do
the assignment via current->... just like i386 and x86_64 do.
Furthermore, the SA_ONESHOT handling wasn't deleted. That is now handled
by generic code in the kernel.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mikpe@csd.uu.se>
[PATCH] ppc signal handling fixes
2.6.8-rc2-mm1 reintroduced the signal-race-fixes patch for i386, x86_64,
s390, and ia64, breaking all other archs.
The patch below updates ppc, following the pattern of i386. Compiled &
runtime tested. No observable breakage.
Signed-off-by: Mikael Pettersson <mikpe@csd.uu.se>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ak@muc.de>
[PATCH] signal-race-fixes: x86-64 support
Add the signal race changes to x86-64 to make it compile again.
Didn't merge the more pointless changes from i386.
Also remove the special SA_ONESHOT handling, doesn't seem to be needed
anymore.
From: Mikael Pettersson <mikpe@csd.uu.se>
The signal-race-fixes patch in 2.6.8-rc2-mm1 appears to have broken
x86-64's ia32 emulation.
When forcing a SIGSEGV the old code updated "*ka", where ka was a pointer
to current's k_sigaction for SIGSEGV. Now "ka_copy" points to a copy of
that structure, so assigning "*ka_copy" doesn't do what we want. Instead do
the assignment via current->... just like the normal signal delivery code
does.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davem@redhat.com>
[PATCH] signal handling race fixes: sparc and sparc64
Ok, here are the sparc64 and sparc32 versions.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: signal race fix
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] alpha signal race fixes
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davidm@napali.hpl.hp.com>
[PATCH] signal-race-fix: ia64
It looks fine to me, except that I decided to play chicken as far as the
give_sigsegv update of sa_handler is concerned.
Arun, I hope I got the ia32 emulation parts right, but you may want to
double-check.
The patch seems to work fine as far as I have tested. I'm seeing some
oddity in context-switch overhead and pipe latency as reported by LMbench,
but I suspect that's due to another change that happened somewhere between
2.6.5-rc1 and Linus' bk tree as of this morning.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<laforge@netfilter.org>
[NETFILTER]: Fix ip_nat_find_helper() locking.
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<stevef@smfhome1.smfdom>
[CIFS] cifs ipv6 support part 2
Signed-off-by: Steve French (sfrench@us.ibm.com)
<greg@kroah.com>
USB: rip out the whole pwc driver as the author wishes to have done.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<torvalds@ppc970.osdl.org>
Revert I2C keywest class fixup
Benh says: "Please revert that for now, I need to figure out what they
were exactly trying to do and will come up with something if it makes
sense but the patch as-is doesn't"
Cset exclude: khali@linux-fr.org|ChangeSet|20040825202122|07524
<davem@nuts.davemloft.net>
[SPARC64]: Update defconfig.
<davem@nuts.davemloft.net>
[SPARC64]: Use force_{sig,sigsegv}() in sparc signal handling.
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
[SPARC64]: Hack fix, force DTR/RTS on in sunsab console.
<davem@nuts.davemloft.net>
[SPARC64]: Fix direct f_pos fiddling in openpromfs.
Signed-off-by: David S. Miller <davem@redhat.com>
<perex@suse.cz>
ALSA CVS update
VIA82xx driver
Disable legacy FM and SB to prevent lock-ups.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ICE1712 driver
Pontis board: Misc fixes
- buggy SPI communcation is fixed
- fixed the return value of put callbacks of GPIO controls
- corrected the initial register value of CS8416
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ICE1724 driver
Fixed the internal clock control.
This fixes a bug that SPDIF-in mode can't be reset once after it's set.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<perex@suse.cz>
ALSA CVS update
ATIIXP-modem driver
Added workaround for buggy BIOS
Force to set MODEM_PRESENT bit for some buggy BIOS which
don't set this bit.
Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
<hch@lst.de>
[PATCH] update scsi_eh_get_sense commentary
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<jejb@mulgrave.(none)>
BKL removal for EH thread startup
From: Christoph Hellwig <hch@lst.de>
We don't need the BKL anymore for thread startup.
Patch rejections fixed up and
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<hch@lst.de>
[PATCH] mesh is ppc32-only
mesh is only present on older 32bit pmac boards and doesn't compile
on ppc64.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<akpm@osdl.org>
[PATCH] sym_requeue_awaiting_cmds() warning fix
drivers/scsi/sym53c8xx_2/sym_glue.c: In function `sym_requeue_awaiting_cmds':
drivers/scsi/sym53c8xx_2/sym_glue.c:671: warning: 'cmd' is used uninitialized in this function
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<viro@www.linux.org.uk>
[PATCH] mpoa warning fix
Forgot to switch return type from ssize_t to int when switching to seq_file
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] NULL noise removal
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] missing export of memchr on arm
arm forgot to export memchr(); everybody else does export it and it's used
in modules.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] missing include of config.h in asm-alpha/page.h
That was a nasty one - missing include of config.h in a file that has
non-trivial ifdefs. With some configs it ended up with very odd conflicts
(we get included early, take the wrong branch of ifdef, then get another
file included, it pulls in config.h and picks the right branch of its
ifdef; surprise, surprise, they conflict).
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] bad names of local-in-macros in arm io.h
"v" and "r" are not good names for variables local in macro...
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] check_region() removal in tc/zs.c
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] check_region() removal in fdomain.c
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] any2_scsi() cleaned up
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] signed char fixes in qd65xx
qd65xx assumed that char is always signed
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] more size_t portability fixes
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] check_region() removal in waveartist
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] preprocessor mess in msnd
msnd #defined outb to outb_p, which wasn't a good idea on platforms
that had outb_p #defined to outb ;-)
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<benh@kernel.crashing.org>
[PATCH] ppc32: PowerMac trackpad problems
The trackpad on recent Apple laptops tend to emmit spurrious 'right
clicks' apparently. This patch from Alex Clausen fixes it, please
apply. The trackpad cannot normally emit a right click, so just filter
those out.
Signed-off-by: Alexander Clausen <alex@skip86.com>
Signed-off-by: Michael Schmitz <schmitz@opal.biophys.uni-duesseldorf.de>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<benh@kernel.crashing.org>
[PATCH] ppc32: properly export some pcibios_* functions
Recent yenta_socket (and maybe others) rely on some pcibios_* functions
to be available to modules. This exports them.
<benh@kernel.crashing.org>
[PATCH] ppc32: Improve workaround for 74xx CPUs with broken BTIC
The previous workaround didn't enable the BTIC bit on CPUs where it is
broken. However, it seems some firmwares will unconditionally set it,
so this new patch will actually _clear_ it on CPUs where it is broken.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sam@mars.ravnborg.org>
kbuild: Fix make O=
A bug that slipped through when introducing Makefile.host.
A good way to check if people actually uses make O= ;-)
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<sam@mars.ravnborg.org>
kbuild: use *.lds infrastructure in arch/i386/kernel
Rusty decided to preprocess a *.lds.S file in parallele with the new *.lds infrastructure
being added to kbuild. Fix that up.
Also added the file to targets so we do not see recompile each time the kernel is build.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<okir@suse.de>
[NETFILTER]: Fix pointer deref'ing in ip6t_LOG.c
Signed-off-by: Olaf Kirch <okir@suse.de>
Signed-off-by: David S. Miller <davem@redhat.com>
<shemminger@osdl.org>
[TCP]: Automatically compute tcp_default_win_scale.
This patch gets rid of the tcp_default_win_scale sysctl and instead
computes the optimum maximum window scale. It just means one less
thing to have to tune. I also moved the code out of the inline because
it gets called three places and isn't in the critical path.
As a side effect, it will cause a smaller window scale for many people
since the default tcp_rmem fits in a win_scale of 2. This is allows for
finer grain windows (good), but may mask some of the problems with bad
implementations we have already seen (bad).
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@redhat.com>
<stevef@stevef95.austin.ibm.com>
[CIFS] cifs ipv6 part 3
Signed-off-by: Steve French (sfrench@us.ibm.com)
<davem@nuts.davemloft.net>
[SPARC64]: Add .type and .size directives to some asm files.
Signed-off-by: David S. Miller <davem@redhat.com>
<rmk@flint.arm.linux.org.uk>
[ARM] signal handling fixes
Patch from: Linus Torvalds
Update ARM signal handling for Andrew's series of fixes.
<davem@nuts.davemloft.net>
[SPARC64]: Fix some tabbing in xor.S
<stevef@stevef95.austin.ibm.com>
[CIFS] misc kmalloc and kernel_thread failure checks
Signed-off-by: Steve French (sfrench@us.ibm.com)
<jejb@mulgrave.(none)>
Update megaraid to version 2.20.3.1
From: Mukker, Atul <Atulm@lsil.com>
i. Function reordering so that inline functions are defined before they
are actually used. It is now mandatory for GCC 3.4.1 (current
stable)
Declare some heavy-weight functions to be non-inlined,
megaraid_mbox_build_cmd, megaraid_mbox_runpendq,
megaraid_mbox_prepare_pthru, megaraid_mbox_prepare_epthru,
megaraid_busywait_mbox
- Andrew Morton <akpm@osdl.org>, 08.19.2004
linux-scsi mailing list
"Something else to clean up after inclusion: every instance of an
inline function is actually rendered as a full function call,
because
the function is always used before it is defined. Atul, please
re-arrange the code to eliminate the need for most (all) of the
function prototypes at the top of each file, and define (not just
declare with a prototype) each inline function before its first use"
- Matt Domsch <Matt_Domsch@dell.com>, 07.27.2004
linux-scsi mailing list
ii. Display elapsed time (countdown) while waiting for FW to boot.
iii. Module compilation reorder in Makefile so that unresolved symbols do
not occur when driver is compiled non-modular.
Patrick J. LoPresti <patl@users.sourceforge.net>, 8.22.2004
linux-scsi mailing list
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<davem@nuts.davemloft.net>
[SUNSAB]: Remove CRTSCTS handling in set_termios.
Higher layers call set_mctrl if necessary.
Signed-off-by: David S. Miller <davem@redhat.com>
<jejb@mulgrave.(none)>
fix dma mapping leak in fusion
From: Moore, Eric Dean <Emoore@lsil.com>
Remove the internal queueing so that commands
aren't stored in the driver and thus it doesn't
have to worry about whether the IOMMU resources
are allocated or not.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<oliver@neukum.org>
[PATCH] USB: cdc acm patch
Fix tty layer sleep/locking problem (again) ... when this is
called through the network stack (PPP) sleeping isn't allowed.
There's some bugtraq ID for this.
From: Oliver Neukum <oliver@neukum.org>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<david-b@pacbell.net>
[PATCH] USB: gadgetfs minor updates
Gadgetfs updates:
- Resolve a problem that came from a change in the API to AIO:
kiocb->private type and size changed, but the name remained
the same ... so GCC wouldn't report pending memory-corruption.
- Probe the controller at runtime, eliminatingting config-specific
defines which need to be updated for each new controller. Rip
out the old #defines.
- Use newish APIs to let VBUS current be used to recharge
batteries (or whatever).
- Use no_llseek() ... endpoints are pure data streams.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
<davem@nuts.davemloft.net>
[SPARC64]: Sign extend correct args of sys_syslog().
<davem@nuts.davemloft.net>
[SPARC64]: Fix copyarea bug and set default flags in ffb driver.
- copyarea checking of src/dst y being equal was buggy.
- set optimal FBINFO flags for this device.
Signed-off-by: David S. Miller <davem@redhat.com>
<davem@nuts.davemloft.net>
[SPARC64]: Speed up ffb font rendering.
Render left to right instead of top to bottom.
This shaved a whole second off the:
time cat MAINTAINERS
benchmark.
Signed-off-by: David S. Miller <davem@redhat.com>
<stevef@smfhome.smfdom>
[CIFS] Various fixes to bugs pointed out by Stanford checker SWAT tool (mostly missing checks on small kmallocs and some
out of order null pointer checks)
Signed-off-by: Steve French (sfrench@us.ibm.com)
<stevef@smfhome.smfdom>
[CIFS] Update cifs change log
<roehrich@sgi.com>
[XFS] Change DMAPI dm_punch_hole to punch holes, rather than just
truncate files.
SGI Modid: xfs-linux:xfs-kern:177585a
Signed-off-by: Nathan Scott <nathans@sgi.com>
<nathans@sgi.com>
[XFS] Support for default quota limits via the zero dquot (ala grace times).
SGI Modid: xfs-linux:xfs-kern:177627a
Signed-off-by: Nathan Scott <nathans@sgi.com>
<hch@sgi.com>
[XFS] Fix warnings in xfs_bmap.c
SGI Modid: xfs-linux:xfs-kern:177663a
Signed-off-by: Nathan Scott <nathans@sgi.com>
<nathans@sgi.com>
[XFS] Ensure maxagi not updated early during growfs, conflicts with
concurrent inode allocations. Fix from ASANO Masahiro.
SGI Modid: xfs-linux:xfs-kern:177699a
Signed-off-by: Nathan Scott <nathans@sgi.com>
<hch@sgi.com>
[XFS] Export sync_page_range to fix O_SYNC in XFS.
Signed-off-by: Nathan Scott <nathans@sgi.com>
<hch@sgi.com>
[XFS] Rework parts of the write path so that when a direct write
needs to fallback to buffered in the generic code, we are able to
relock the XFS inode correctly.
Signed-off-by: Nathan Scott <nathans@sgi.com>
<hch@sgi.com>
[XFS] Fix O_SYNC flushing in XFS which regressed with concurrent
O_SYNC write improvements recently.
Signed-off-by: Nathan Scott <nathans@sgi.com>
<nathans@sgi.com>
[XFS] Fix compiler warnings on IA64 builds in ioctl compat code.
SGI Modid: xfs-linux:xfs-kern:177850a
Signed-off-by: Nathan Scott <nathans@sgi.com>
<airlied@starflyer.(none)>
Add new i915 driver from Tungsten Graphics Inc. This driver covers the i830
chipsets also, a new X 2D + 3D driver are needed to use this but they have
been integrated into at least the X.org tree at this point and I think the
XFree86 tree. There are probably a few cleanups necessary for this driver.
From: Keith Whitwell <keith@tungstengraphics.com>
Signed-off-by: Dave Airlie <airlied@linux.ie>
<airlied@starflyer.(none)>
remove __NO_VERSION__ relic from the past...
<akpm@osdl.org>
[PATCH] ipr.c build fix
Greg's tree changes the kref API. James's tree adds usage of the old API.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
<kazunori@miyazawa.org>
[IPV6] XFRM: extract xfrm_lookup() from ip6_dst_lookup() to support source routing appropriately.
This patch extracts xfrm_lookup() from ip6_dst_lookup()
to support source routing appropriately.
This is because xfrm_lookup() should be performed with the final
destination while ip6_dst_lookup() is called with the next-hop.
Signed-off-by: Kazunori Miyazawa <kazunori@miyazawa.org>
Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
<neilb@cse.unsw.edu.au>
[PATCH] Use fixed size buffer instead of kmalloc for m_class in ip_map
This avoids lots of bothersome memory management and is generally
cleaner.
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jbarnes@engr.sgi.com>
[PATCH] fix show_mem on discontig machines
Dave Hansen recently did some bootmem and paging init cleanups, but I
missed this little bit when I tested his original patches. We need to
initialize pgdat->node_mem_map correctly since a) we're using vmem_map, and
b) the core won't do it for us since we have a valid node_start_pfn I
believe.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jbarnes@engr.sgi.com>
[PATCH] fix sysrq support in sn_console.c
In porting the sn_console driver to the serial core, we lost sysrq support.
This patch fixes it and removes a few unncessary #ifdefs. Can you please
send it on to Linus asap? sysrq is a *really* nice thing to have.
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] md: fix problems with checksum handling in MD superblocks.
md currently uses csum_partial to calculate checksums for superblocks.
However this function is not consistent across all architectures. Some
(i386) to a 32bit csum. Some (alpha) do a 16 bit csum. This makes it hard
for userspace to keep up.
So we provide a generic routine (that does exactly what the i386
csum_partial does) and:
- When setting the csum, use csum_partial so that old kernels will still
recognise the superblock
- When checking the csum, allow either csum_partial or the new generic
code to provide the right csum. This allows user-space to just use the
common code and always work.
Also modify the csum for version-1 superblock (which currently aren't being
used) to always user a predictable checksum algorithm.
Thanks to Mike Tran <mhtran@us.ibm.com> for noticing this.
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rusty@rustcorp.com.au>
[PATCH] Fix CPU Hotplug: neaten migrate_all_tasks.
A followup patch wants to do forced migration, so separate that part of the
code out of migrate_all_tasks().
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rusty@rustcorp.com.au>
[PATCH] Hotplug CPU vs TASK_ZOMBIEs: The Sequel to Hotplug CPU vs TASK_DEAD
release_task can sleep. Sleeping allows a CPU to go down underneath you.
release_task removes you from the tasklist, so you don't get migrated off the
CPU: BUG() in sched.c.
In last week's episode, our dashing hero (Ingo Molnar) solved this for
self-reaping tasks by grabbing the hotplug cpu lock to prevent this.
However, in an unexpected twist, the problem remains for tasks whose
parents call release_task on them: the zombies are off the task list, and
lurk on the dead CPU.
Fortunately, the comedic sidekick (Rusty Russell) has an answer: let's make
the hotplug callback walk the runqueue of the dead CPU as well, taking care
of the zombies.
1) Restore exit.c to its former form. The comment is incorrect: sched.c
checks PF_DEAD, not the state, to decide to do the final
put_task_struct(), and it does it for all tasks, self-reaping or no.
2) Implement migrate_dead_tasks() in the sched.c hotplug CPU callback.
3) Rename migrate_all_tasks() to migrate_live_tasks().
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<arjanv@redhat.com>
[PATCH] schedule profileing
From: William Lee Irwin III <wli@holomorphy.com>
The patch (from Ingo) below is quite interesting, it allows the use of
readprofile not for statistical tine sampling, but for seeing where calls to
schedule() come from, so it can give some insight to the "where do my context
switches come from" question.
Boot with `profile=schedul2' to activate this feature.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] consolidate prof_cpu_mask
Handling of prof_cpu_mask is grossly inconsistent. Some arches have it as a
cpumask_t, others unsigned long, and even within arches it's treated
inconsistently. This makes it cpumask_t across the board, and consolidates
the handling in kernel/profile.c
Signed-off-by: William Irwin <wli@holomorphy.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] introduce profile_pc()
The program counter calculation from pt_regs is the only portion of profile
accounting that differs across various architectures. This is usually
instruction_pointer(regs), but to handle the few arches where it isn't,
introduce profile_pc().
Signed-off-by: William Irwin <wli@holomorphy.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] consolidate hit count increments in profile_tick()
With prof_cpu_mask and profile_pc() in hand, the core is now able to perform
all the profile accounting work on behalf of arches. Consolidate the profile
accounting and convert all arches to call the core function.
Signed-off-by: William Irwin <wli@holomorphy.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] move profile_operations
proc_misc.c is a trainwreck. Move the file_operations for /proc/profile into
kernel/profile.c and call the profiling setup via initcall.
Signed-off-by: William Irwin <wli@holomorphy.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] make private profile state static
Make the various bits of state no longer used anywhere else static to
kernel/profile.c
Signed-off-by: William Irwin <wli@holomorphy.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] make prof_buffer atomic_t
Convert prof_buffer to an array of atomic_t instead of sometimes atomic_t,
sometimes unsigned int. Also, bootmem rounds up internally, so blow away some
crap code there.
Signed-off-by: William Irwin <wli@holomorphy.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] ppc64: remove iseries profiling
From: Anton Blanchard <anton@samba.org>
- Remove iseries specific profiling, there were no complaints when I
suggested removal on the linuxppc64 list a few weeks ago.
- Also remove another instance of that pesky abs() function.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] [un]register_ioctl32_conversion() stubs
The megaraid driver is calling these, but they don't exist if !CONFIG_COMPAT.
Add the necessary stubs, and clean a few things up.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] reduce size of struct inode on 64bit
Reduce the size of struct inode on 64bit architectures by reducing padding.
This assumes spinlocks are 32bit or less which is the case on most
architectures.
This reduces inode structs by 24 bytes on ppc64, and on ext2 increases the
number of inodes in a 4kB slab from 5 to 6.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<galak@somerset.sps.mot.com>
[PATCH] ppc32: refactor common Book-E exception handling macros
Refefactor common Book-E exception handling macros into a single file to
reduce code duplication.
Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<david@gibson.dropbear.id.au>
[PATCH] ppc64: clean up unused macro
After the recent SLB and STAB cleanups, the ppc64 KERNEL_CONTEXT() macro is
no longer used anywhere. This patch removes it.
Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@redhat.com>
[PATCH] Add a few might_sleep() checks
Add a whole bunch more might_sleep() checks. We also enable might_sleep()
checking in copy_*_user(). This was non-trivial because of the "copy_*_user()
in atomic regions" trick would generate false positives. Fix that up by
adding a new __copy_*_user_inatomic(), which avoids the might_sleep() check.
Only i386 is supported in this patch.
With: Arjan van de Ven <arjanv@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hugh@veritas.com>
[PATCH] tmpfs atomicity fix
tmpfs must use __copy_from_user_inatomic now, to avoid might_sleep warning,
when knowingly using __copy_from_user with an atomic kmap.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jeffm@suse.com>
[PATCH] dnotify + autofs may create signal/restart syscall loop
I saw a recent bug report that showed when a process set up a dnotify against
the autofs root and then attempted an access(2) call inside the autofs
namespace on a mount that would fail, it would create a signal/restart loop.
The cause is that the autofs code checks to see if any signals are pending
after it waits on a response from the autofs daemon. If it finds any, it
assumes that autofs_wait was interrupted, and that it should return
-ERESTARTNOINTR. The problem with this is that a signal_pending(current)
check will return true if *any* signals were received, not just if a signal
that interrupted the wait was received. autofs_wait explicitly blocks all
signals except for SIGKILL, SIGQUIT, and SIGINT before calling
interruptible_sleep_on.
The effect is that if a dnotify is set against the autofs root, when the
autofs daemon creates the directory, a dnotify event will be sent to the
originating process. Since the code in autofs_root_lookup doesn't check to
see what signals are actually pending, it bails early, telling the caller to
try again. The loop goes on forever until interrupted via one of the actual
interrupting signals.
The following patch makes both autofs_root_lookup and autofs4_root_lookup
verify that one of its defined "shutdown" signals are pending before bailing
out early. Any other signal should be delivered later, as expected. It
doesn't matter if the signal occured outside of the sleep in autofs_wait. The
calling process will either go away or try again.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rusty@rustcorp.com.au>
[PATCH] mostly remove module_parm()
MODULE_PARM() was marked obsolete. Remove it from everything except
drivers/ and arch/.
Naturally, such a widespread change may introduce bugs for some of the
non-trivial cases, and where in doubt I used "0" as permissions arg (ie.
won't appear in sysfs). Individual authors should think about whether that
would be useful.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<roland@redhat.com>
[PATCH] fix MT reparenting when thread group leader dies
When the initial thread in a multi-threaded program dies (the thread group
leader), its child processes are wrongly orphaned, and thereafter when
other threads die their child processes are also orphaned even though live
threads remain in the parent process that can call wait. I have a small
(under 100 lines), POSIX-compliant test program that demonstrates this
using -lpthread (NPTL) if anyone is interested in seeing it.
The bug is that forget_original_parent moves children to the dead parent's
group leader if it's alive, but if not it orphans them. I've changed it so
it instead reparents children to any other live thread in the dead parent's
group (not even preferring the group leader). Children go to init only if
there are no live threads in the parent's group at all. These are the
correct semantics for fork children of POSIX threads.
The second part of the change is to do the CLONE_PARENT behavior always for
CLONE_THREAD, i.e. make sure that each new thread's parent link points to
the real parent of the process and never another thread in its own group.
Without this, when the group leader dies leaving a sole live thread in the
group, forget_original_parent will try to reparent that thread to itself
because it's a child of the dying group leader. Rather handling this case
specially to reparent to the group leader's parent instead, it's more
efficient just to make sure that noone ever has a parent link to inside his
own thread group. Now the reparenting work never needs to be done for
threads created in the same group when their creator thread dies. The only
change from losing the who-created-whom information is when you look at
"PPid:" in /proc/PID/task/TID/status. For purposes of all direct system
calls, it was already as if CLONE_THREAD threads had the parent of the
group leader. (POSIX provides no way to keep track of which thread created
which other thread with pthread_create.)
Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] copy_mount_options size fix
davem says that copy_mount_options is failing in obscure ways if the
architecture's copy_from_user() doesn't return an exact count of the number of
uncopied bytes.
Fixing that up in each architecture is a pain - it involves falling back to
byte-at-a-time copies.
It's simple to open-code this in namespace.c. If we find other places in the
kernel which care about this we can promote this to a global function.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<levon@movementarian.org>
[PATCH] improve OProfile on many-way systems
Anton prompted me to get this patch merged. It changes the core buffer
sync algorithm of OProfile to avoid global locks wherever possible. Anton
tested an earlier version of this patch with some success. I've lightly
tested this applied against 2.6.8.1-mm3 on my two-way machine.
The changes also have the happy side-effect of losing less samples after
munmap operations, and removing the blind spot of tasks exiting inside the
kernel.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<drzeus-list@drzeus.cx>
[PATCH] Split timer resources
The kernel currently allocates the range 0x40-0x5f for timer calls. This
causes conflicts with other hardware using these ports (In my case a
Winbond W83L519D SD/MMC card reader). This patch splits the resource into
the ports actually needed.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<haveblue@us.ibm.com>
[PATCH] reduce casting in sysenter.c
Ran across this because it's another place where an unsigned long is passed
directly to __pa(). Making the "page" variable a void* seems a bit more
natural than an unsigned long and reduces the net number of casts by 1.
Without it, we probably need another (void *) cast in the __pa() call.
For more explanation as to why this was probably done originally, see this
post: http://marc.theaimsgroup.com/?l=linux-mm&m=1091553791...
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<haveblue@us.ibm.com>
[PATCH] cast PAGE_OFFSET math to void* in early printk
__pa() should take a void*. This adds the proper cast.
Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<haveblue@us.ibm.com>
[PATCH] call virt_to_page() with void*, not UL
I'm sure there's a good reason for these functions to take virtual addresses
as unsigned longs, so suppress the warnings and cast them to the proper types
before calling the virt/phys conversion functions
A perfectly acceptable alternative would be to go and change free_pages() to
stop taking unsigned longs for virtual addresses, but this has a much smaller
impact.
Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<haveblue@us.ibm.com>
[PATCH] vmalloc_fault() cleanup
Store the physical pgd address in a different variable than the virtual
address.
There's no real reason to only use 1 variable here, other than saving a
line of code. But, the types really are different and we might as well
just spell that out explicitly.
Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<haveblue@us.ibm.com>
[PATCH] don't align virt_to_page() args
__pa() is always be consistent inside of a single page. The next thing
virt_to_page() does after that is shift down the address, killing the bits
that __change_page_attr() just masked off.
Remove the superfluous masking.
Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<haveblue@us.ibm.com>
[PATCH] include asm/page.h for virt_to_page()
asm/page.h seems to be the accepted place to declare virt_to_page() on a vast
majority of architectures. This patch makes sure that a few files which use
that function also directly include the header.
Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] task_vsize() locking cleanup
task_vsize() doesn't need mm->mmap_sem for the CONFIG_MMU case; the
semaphore doesn't prevent mm->total_vm from going stale or getting
inconsistent with other numbers regardless. Also, KSTK_EIP() and
KSTK_ESP() don't want or need protection from mm->mmap_sem either. So this
pushes mm->mmap_sem to task_vsize() in the CONFIG_MMU=n task_vsize().
Also, hoist the prototype of task_vsize() into proc_fs.h
The net result of this is a small speedup of procps for CONFIG_MMU.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] O(1) proc_pid_statm()
Merely removing down_read(&mm->mmap_sem) from task_vsize() is too
half-assed to let stand. The following patch removes the vma iteration
as well as the down_read(&mm->mmap_sem) from both task_mem() and
task_statm() and callers for the CONFIG_MMU=y case in favor of
accounting the various stats reported at the times of vma creation,
destruction, and modification. Unlike the 2.4.x patches of the same
name, this has no per-pte-modification overhead whatsoever.
This patch quashes end user complaints of top(1) being slow as well as
kernel hacker complaints of per-pte accounting overhead simultaneously.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] fix text reporting in O(1) proc_pid_statm()
Some kind of brainfart happened here, though it's not visible on the
default display from top(1) etc. This patch fixes up the gibberish I
mistakenly put down for text with the proper text size, and subtracts it
from data as per the O(vmas) code beforehand.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] speed up /proc/pid/statm for !CONFIG_PROC_FS
Remove the accounting overhead when CONFIG_PROC_FS is not defined.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] /proc/pid/statm accounting fixes
Account reserved memory properly as per acahalan's speecified semantics.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] Unaccount VM_DONTCOPY vmas properly
Unaccount VM_DONTCOPY vmas properly; the child inherits the whole of the
parent's virtual accounting from the memcpy() in copy_mm(), but the
VM_DONTCOPY check here is where a decision is made for the child not to
inherit the vmas corresponding to some accounted memory usages. Hence,
unaccount them when skipping over them here.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] sane mlock_limit
As David M-T points out, the default per-user mlock limit should be at least a
single page.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torben.mathiasen@hp.com>
[PATCH] LANANA: maintainer update
I took over LANANA maintainership from John Cagle. Patch updates
MAINTAINERS accordingly.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torben.mathiasen@hp.com>
[PATCH] LANANA: devices.txt update
Patch brings devices.txt up-to-date with LANANA.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<thor@math.TU-Berlin.DE>
[PATCH] parport: NetMOS 9805 interface
Add support for netmos devices to the parallel port driver.
NetMOS 9805 support is already in the kernel, this patch adds the support for
the missing 9735,9855,9755 and 9715 chips.
And another remark: The 9735 and 9835 seem to be chips with serial *and*
parallel interfaces, so I suppose they are already claimed somewhere in the
serial driver. I don't know whether this causes any problems. I'm sorry that
I can't test, I've only a 9805 here. Any idea how these "dual" chips have to
be handled by the kernel?
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pavlic@de.ibm.com>
[PATCH] s390: lcs network driver
lcs network driver changes:
- Allocate the reply structure instead of taking it from the stack.
- Use del_timer_sync instead of del_timer.
- Clean up helper threads creation/shutdown.
- Split lcs_register_mc_addresses to make it readable again.
- Free multicast list entries when device is going down.
- Retransmit multicast list in device recovery.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<thoss@de.ibm.com>
[PATCH] s390: common i/o layer
common i/o layer change:
- Correct check in qdio_stop_polling to avoid loosing initiative on the
qdio inbound queue.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<peter.oberparleiter@de.ibm.com>
[PATCH] s390: sclp driver changes
sclp driver changes:
- Add reboot notifier to reset the sclp send/receive masks on shutdown.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<thoss@de.ibm.com>
[PATCH] s390: qeth network driver
qeth network driver change:
- Make qeth devices which are present but not up addressable by
snmp ioctls.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Valdis.Kletnieks@vt.edu>
[PATCH] #ifdef fixes for drivers/isdn/hifax/*
This patch changes a bunch of '#if CONFIG_PCI' to '#ifdef' instead,
to make the kernel source cleaner for compiling with 'gcc -Wundef'.
Signed-off-by: Karsten keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Valdis.Kletnieks@vt.edu>
[PATCH] #ifdef cleanup for sh64
Another small cleanup patch for #if/#ifdef usage.
Signed-off-by: <valdis.kletnieks@vt.edu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Valdis.Kletnieks@vt.edu>
[PATCH] #ifdef cleanup for cris port
Another small #if/#ifdef cleanup, to make things safer for compiling with
-Wundef
Signed-off-by: <valdis.kletnieks@vt.edu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Valdis.Kletnieks@vt.edu>
[PATCH] #ifdef cleanup for PPC
Another few #if/#ifdef cleanups, this time for the PPC architecture.
Signed-off-by: <valdis.kletnieks@vt.edu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Valdis.Kletnieks@vt.edu>
[PATCH] #ifdef cleanups in drivers/net
Here's the last of them for 2.6.9-rc1 - two more #if/#ifdef cleanups.
Signed-off-by: <valdis.kletnieks@vt.edu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tim@physik3.uni-rostock.de>
[PATCH] make oom killer points unsigned long
It seems a little unsafe to me to have oom killer badness points of type
int, when all the underlying objects are unsigned long.
I can't immediately think of a case where this matters much, but e.g. a
long-running job or daemon on a 64 bit machine might lose it's bonus
because of that.
Signed-off-by: Tim Schmielau <tim@physik3.uni-rostock.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] dvb pci_enable_device() fix
Call pci_enable_device() before looking at pci_dev. Also, call
pci_disable_device() when releasing the device.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<arun.sharma@intel.com>
[PATCH] Fix copying of unaligned data across user/kernel boundary
32 bit compatibility code sometimes needs to copy unaligned data across
kernel/user boundary and currently there is no architecture independent API
to do it.
(1) Introduce new APIs __{get,put}_user_unaligned. These APIs are
necessary because the optimal way to copy unaligned data across
kernel/user boundary is different on different architectures.
Some architectures don't even care about alignment.
On some __put_user is faster than __copy_to_user for small sizes.
(2) Optimize __{get,put}_user_unaligned for ia64, x86-64, s390, ppc64.
(3) Fix compat_filldir64() which is broken on big-endian machines
Thanks to Arnd Bergmann <arnd@arndb.de> for his help.
Signed-off-by: Gordon Jin <gordon.jin@intel.com>
Signed-off-by: Arun Sharma <arun.sharma@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] WAITQUEUE_DEBUG cleanup
While trying out compiling of reiser4 on sparc64, ppc64, alpha, and ia64, I
discovered that WAITQUEUE_DEBUG is nowhere defined in 2.6.x, and various
compiler versions spew copious warnings at #if on it. Convert
__SEMAPHORE_INITIALIZER() to C99 initializers while in the area.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] ftape support for x86_64
We have this patch that adds ftape support for x86_64 and cleans up the
alpha support a little. The comments look like Vojtech did the x86_64 part
and I guess the alpha bits are from Herbert Xu.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tcallawa@redhat.com>
[PATCH] Keep sparc32 config consistent
This patch changes the name of the sparc32 Kconfig menu from "General
Setup" to "General Machine Setup", to match the changes committed to most
other arches in 2.6.9-rc1.
Signed-off-by: William Irwin <wli@holomorphy.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tcallawa@redhat.com>
[PATCH] Fix typo in bw2.c
Patch to fix typo in bw2.c, added in 2.6.9-rc1.
Signed-off-by: William Irwin <wli@holomorphy.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<yanmin.zhang@intel.com>
[PATCH] interrupt is enabled before it should be when kernel is booted
There is a minor problem in function start_kernel. start_kernel will
enable interrupt after calling profile_init. However, before that,
function time_init on IA64 platform could enable interrupt. See this call
sequence:
start_kernel
->time_init
->ia64_init_itm
->register_time_interpolator
->write_seqlock_irq.
Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
Signed-off-by: Yao Jun <junx.yao@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rsa@us.ibm.com>
[PATCH] HVCS hotplug fixes
Here is an HVCS (drivers/char/hvcs.c) patch which fixes the hvcs driver
problems with hotplugged vty-server adapters. The current driver handles
the adapter index assignment improperly so after a number of device
removals and insertions the driver could no longer map a tty->index to a
vty-server properly and tty_open() attempts would fail. This patch solves
this problem by always assigning the lowest available index to the new
adapters and returning an index to the list when the adapter is removed.
changelog:
drivers/char/hvcs.c
===================
-Added hvcs_index_list to manage the lowest available index.
-Added four helper functions to manage the list, which include the
creation and destruction of the list, the get'ing of the lowest index,
and the returning of an index.
-Moved free_irq() outside of the hvcs_final_close() function in order to
get it out of the spinlock.
-Rearranged hvcs_close() to accomodate the previous change.
-Removed local CLC_LENGTH define and used HVCS_CLC_LENGTH from
arch/ppc64/hvcserver.h instead.
-Cleaned up some printks and did some house keeping on the changelog.
Documentation/powerpc/hvcs.txt
==============================
-Added information on sysfs 'index' attribute added in previous hvcs
patch.
-Added Q & A section on how to find the proper dev node for a newly
added adapter.
I think this is the last of the HVCS patches for a while, as all of my
oustanding issues have been dealt with.
Signed-off-by: Ryan S. Arnold <rsa@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] revert ioc3-eth.c pci_enable_device() changes
Revert addition of pci_enable_device(). It wasn't appropriate to this
device, apparently.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] Fix hp100.c for pci_enable_device() changes
Don't look at pci_resource_start() before pci_enable_device().
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] Fix x86_64 vs select.c namespace clash
fs/select.c:122:1: warning: "__IN" redefined
In file included from include/linux/timex.h:61,
from include/linux/sched.h:11,
from include/linux/module.h:10,
from fs/select.c:17:
include/asm/io.h:70:1: warning: this is the location of the previous definition
fs/select.c:123:1: warning: "__OUT" redefined
include/asm/io.h:60:1: warning: this is the location of the previous definition
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] must_check copy_to_user()
Add __must_check tags to the x86 copy_*_user() functions.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] copy_to_user checking in select.c
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rusty@rustcorp.com.au>
[PATCH] Use Name cramfs in Kconfig Message
A senior kernel hacker couldn't find the cramfs option. No wonder, the
message doesn't mention cramfs at all.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] really uninline lmc_trace
As part of some gcc 3.4 fixes, someone removed the inline from the
prototype of lmc_trace in lmc_debug.c, but the useless inline at the actual
function remained.
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: force_sigsegv name clash.
The recent signal fix broke s390 because of a name clash.
Rename the s390 arch function to do_sigsegv.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<airlied@linux.ie>
[PATCH] drm: missing bus_address assignment
Patch from Tom Arbuckle for missing bus_address
Signed-off-by: Dave Airlie <airlied@linux.ie>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<airlied@linux.ie>
[PATCH] drm: optimise i8x0 accesses..
This optimises the drm code to not do put_user() on memory the kernel
allocated and then mmap-installed to userspace, but instead makes it use
the kernel virtual address directly instead.
From: Arjan van de Ven <arjanv@redhat.com>
Signed-off-by: Dave Airlie <airlied@linux.ie>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<eranian@hpl.hp.com>
[IA64] perfmon.c: file descriptor fixes
- fix pfm_free_fd() to clear current->files->fd[fd] in
case of error during PFM_CONTEXT_CREATE, i.e., undo
the effect of fd_install(). This could cause kernel
panic if the file descriptor gets used by error through
perfmon.
- fix pfm_context_create() to correctly propagate the
return value of pfm_alloc_fd().
signed-off-by: stephane eranian <eranian@hpl.hp.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<davem@nuts.davemloft.net>
[UACCESS]: Fix typo in generic __get_user_unaligned().
Signed-off-by: David S. Miller <davem@redhat.com>
<wli@holomorphy.com>
[PATCH] fix PA-RISC fork_idle() sweep
Whether a brainfart or a mismerge, I inadvertently broke PA-RISC during
the fork_by_hand()/init_idle() consolidation.
The following patch repairs a compilebug/thinko pair, consisting of the
use of an undeclared variable cpunum, and not attempting fork_idle()
until after the check for IS_ERR(idle) reported by James Bottomley.
Signed-off-by: William Irwin <wli@holomorphy.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<armin@melware.de>
[PATCH] 2.6 ISDN CAPI: low-level drivers skb free fix
CAPI skb freeing fix. On sending, the hardware/low-level
driver may free a skb on no error only. The application/core
side must take care otherwise.
Author: Carsten Paeth, Armin Schindler
<apm@brigitte.dna.fi>
[NETFILTER]: Consistent IP address access in arp_tables.c
Use memcpy just like net/ipv4/arp.c does since
these u32 values can be arbitrarily aligned and
this is not exactly a hot code path.
Signed-off-by: Antti P Miettinen <apm@brigitte.dna.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[SPARC64]: Fix delay with HZ==1000.
When I moved sparc64 over to HZ==1000 this added some
problems to the udelay() handling. Specifically, with
slower cpus we could now get underflows to zero for
things like udelay(1) due to the order of multiplies
and shifts.
Fix this, and move it out to arch/sparc64/lib/delay.c
so it is easier to tinker with this in the future and
also to optimize away one of the multiplies for the
constant delay case just like other platforms do.
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[MAINTAINERS]: Update my email contact info.
<haveblue@us.ibm.com>
[AF_PACKET]: Use void * for virtual addresses.
I've been auditing code, cleaning up warning where code passes
unsigned long's to functions and macros that really take pointers.
Here's some explanation as to why I think these types were coded up
this way originally:
http://marc.theaimsgroup.com/?l=linux-mm&m=1091553791...
The attached patch make packet_opt->pg_vec a pointer to an array of
char*'s instead of a pointer to an array of unsigned
<shemminger@osdl.org>
[PKT_SCHED]: Update for netem scheduler.
This is a third revision of the netem extensions which provides
* packet duplication
* correlated random number
* loading distribution table
The API is backwards compatible and now uses nested elements to allow
for easier future changes.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<yoshfuji@linux-ipv6.org>
[NETFILTER]: Remove unused file.
Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>'
<airlied@starflyer.(none)>
Add some missing NULL->0 and __user annotiations
Signed-off-by: Dave Airlie <airlied@linux.ie>
<pablo@eurodev.net>
[NETLINK]: Improve behavior.
Move sk->sk_data_ready() callback to a workqueue
when possible. Makes app less likely to stall in
sendmsg().
Signed-off-by: Pablo Neira <pablo@eurodev.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
<kaber@trash.net>
[NETLINK]: Remove duplicate declarations
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[AMD7930]: Fix kcalloc() args.
<davem@nuts.davemloft.net>
[SPARC64]: Update defconfig.
<davem@nuts.davemloft.net>
[CREDITS]: Update my entry.
<viro@www.linux.org.uk>
[PATCH] casts are not lvalues
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] soundblaster check_region() removal
moved request_region() to callers of sb_dsp_...()
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] sscape cleanup, fixes and check_region() removal
* general cleanup of probing code
* claim codec ports
* sizeof(char *) had been used instead of intended sizeof(char[4]); it even
worked on x86...
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] trix cleanup and check_region() removal
probing cleaned up, claiming of ports mostly fixed (will be finished in
ad1848 patch later in series)
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] mad16 cleanup, fixes and check_region() removal
* probing cleaned up
* register ports claimed
* handling of other ports mostly fixed (will be completed later in series)
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] pss cleanup, fixes and check_region() removal
probing cleaned up, handling of ports mostly fixed.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] sgalaxy cleanup and check_region() removal
probing cleaned up, handling of ports mostly fixed.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] opl3 cleanup and check_region() removal
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] ad1848 check_region() removal
* ports for ad1848 are now claimed by callers
* ad1848_detect() gets pointer to struct resource in question
* ad1848_init() gets the same pointer and consumes it
* ports for mss are now claimed by callers (both config and ad1848 ones)
* probe_ms_sound() gets pointer to ad1848 ports
* attach_ms_sound() gets the same pointer and consumes both regions.
* callers updated. That had killed a *lot* of check_region() and closed
corresponding races.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] maui cleanup, fixes and check_region() removal
probing cleaned up
leaks on failure exits fixed
ports handling mostly cleaned up (will be completed later, when we do mpu401)
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] cmpci cleanup
cmpci probing partially cleaned up in preparation to mpu401 fixes
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] mpu401 check_region() removal
mpu401 ports are claimed by callers now
probe_mpu401() gets pointer to resulting struct resource
callers updated, a bunch of check_region() calls eliminated
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] wf_midi check_region() removal
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] 64bit cleanup in bt878 and btaudio
~0x0UL passed in u32 argument will do what the authors wanted, but it's
a hell of a silly way to spell ~0U on 32bit boxen and it generates warnings on
64bit boxen (we get correct value after truncation, but compiler doesn't
know that ;-)
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] 64bit portability fixes (pointer-to-int stuff)
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] arm Kconfig fixes
ARM dependency and makefile fixes (ACKed by rmk)
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torvalds@ppc970.osdl.org>
Fix "insert_resource()" nesting bug
It used to create totally impossible resource trees in some
circumstances where it was asked to insert a conflicting
resource. We never noticed, because it wasn't used that much.
Make it return the proper error instead.
<viro@www.linux.org.uk>
[PATCH] misc sound/oss bits
- a couple of PCI drivers made dependent on CONFIG_PCI
- signed char fix in wavfront.c
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] checksum.h annotations
missing annotations in csum_partial_copy_from_user() on arm and ppc
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] misc alpha bits
* long constant in a.out.h
* missing cast to pointer in pgtable.h
* removed useless __chk_user_ptr() in get_user() and put_user() - with fixed
typeof handling in sparse we are getting the check from
__typeof__(*(ptr)) __user *__pu_addr = (ptr); \
anyway, so __chk_user_ptr() is redundant there.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] ifdef fixes
smc91x.c: missing ifdef CONFIG_ISA around ISA-only code.
asm-arm/apm.h: ifdef CONFIG_APM breaks if APM is a module.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] NULL noise removal in usb/gadget
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torvalds@ppc970.osdl.org>
Remove QIC-02 tape from Kconfig.
Let's leave the code for a while yet, and see if somebody screams.
But both Red Hat and SuSE claim it is unused, so it probably is. The
driver hasn't gotten updated in years, and google doesn't seem to
show any usage either.
<bzolnier@elka.pw.edu.pl>
[PATCH] ide: remove /proc/ide/hd?/settings:ide-scsi & HDIO_SET_IDE_SCSI ioctl
As noticed by Alan Cox:
"It doesn't work now so it clearly isnt being used 8). We hold the lock
because its a proc function and we then replace the proc functions in the
attach method -> deadlock. It is also incredibly hard to fix without a
major rewrite."
The same is true for HDIO_SET_IDE_SCSI ioctl.
Both were broken 18 months ago in 2.5.63 as a side-effect of locking fixes.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bzolnier@elka.pw.edu.pl>
[PATCH] ide: do hwif spin up for all platforms
From: Alan Cox <alan@redhat.com>
This was put in for PPC specifically and defined in the 2.4 tree to be
paranoid about breaking stuff. The actual wait for hwif spin up is however
perfectly correct for all drives. In the normal PC case the PC BIOS has done
this but with other embedded boxes and with things like LinuxBIOS it may not
have done. Thus it should always be done.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bzolnier@elka.pw.edu.pl>
[PATCH] ide: quiten hwif spin up
From: Alan Cox <alan@redhat.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bzolnier@elka.pw.edu.pl>
[PATCH] ide: fix bad disk geometry hang
From: Alan Cox <alan@redhat.com>
If you get invalid geometry (eg a failed drive) the box hangs on boot because
we try and unregister the registered driver and end up in a locking mess.
We change the behaviour to simply leave the device unattached which avoids
the mess.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: identify non decoded master/slave by serial and model
From: Alan Cox <alan@redhat.com>
Some interfaces (notably PCMCIA ones) don't decode the master/slave select so
you get two copies of a device appearing and bad things happening if a user
accidentally uses both.
This checks for the model/serial matching but also knows about non ATA drives
ide=noprobe and a Maxtor problem that was found in Andrew's testing of an
earlier patch. Although M00000.. drives should be RMA'd to Maxtor (and with
info on where they were obtained...) we don't want to break anyone who has
them.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: check the return value of pci_set_dma_mask() in cs5520.c
From: Arjan van de Ven <arjanv@redhat.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: small drivers/ide/legacy/Makefile cleanup
Let's kill the obsolete CONFIG_BLK_DEV_HD98 entry.
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: remove CONFIG_IDE_TASKFILE_IO code from pdc4030.c
It seems that CONFIG_IDE_TASKFILE_IO code in pdc4030.c was never tested
(i.e. writes don't work et all because of bogus rq->cmd check).
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<B.Zolnierkiewicz@elka.pw.edu.pl>
[PATCH] ide: remove unused IDETAPE_DEBUG_LOG_VERBOSE code from ide-tape.c
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<shaggy@austin.ibm.com>
JFS: fix memory leak in __invalidate_metapages
Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com>
<rmk@flint.arm.linux.org.uk>
[SERIAL] Factor out "clear fifo" functionality.
Move "clear fifo" into separate function dependent on
UART_CLEAR_FIFO capability. We take note of the comment about
Lucent Venus and always use the two-stage enable-then-clear as
we do on startup.
<rmk@flint.arm.linux.org.uk>
[SERIAL] Move XR16C850 Tx/Rx trigger level setup to startup code
<akpm@osdl.org>
[PATCH] Problem with SiS900 - Unknown PHY
From: Laurent <laurent@gobio2.net>
Some time ago, I sent on this list a mail about my strange problem with my
SiS900 network card (Subject was Sluggish performances with FreeBSD)
To sum up, when my card is in 100Mb mode, I have poor throughput but in
10Mb, all seems normal.
After some tests, it seems these results was due to a misdetection of the
PHY device. mii-tool reports :
product info: vendor 08:00:17, model 3 rev 0
and after some search on the web, I found it's a NS DP83847 which is very
similar.
Signed-off-by: Andrew Morton <akpm@osdl.org>
<tharbaugh@lnxi.com>
[netdrvr e1000] disable DITR, which apparently hurts performance
<jeremy@sgi.com>
[PATCH] Fix DMA boundary overflow bug
We seem to have found an overflow problem in libata-core.c.
We were trying to DMA to the address range 0xffff8000-0xffffbfff.
In the original version of the code, given that address and
count (0xffff8000 and 0x4000), the variable "boundary" would be
set to 0, causing len to be set to 0x8000 (which is greater than
sg_len). Then at the bottom of the loop, sg_len would be set
to 0xffffc000 (0x4000 - 0x8000), which would then cause the
loop never to terminate (until much of memory was scribbled
over or the kernel died).
The code below should be functionally identical, but not be
subject to the same overflow problem (boundary needs to be a
u33).
Signed-off-by: jeremy@sgi.com
===== drivers/scsi/libata-core.c 1.94 vs edited =====
<rmk@flint.arm.linux.org.uk>
[SERIAL] 8250: We can only use the FIFO if fifosize > 1.
<mporter@kernel.crashing.org>
[PATCH] ibm_emac driver updates
Optimizes transmit windows for improved performance and to prevent
TX underruns. Fixes driver registration error handling. Fixes ZMII
and RGMII thinkos. Fixes for MDIO handling issues from Ralph
Siemsen. Please apply.
Signed-off-by: Matt Porter <mporter@kernel.crashing.org>
<achew@nvidia.com>
[PATCH] sata_nv: fix CK804 support
This patch fixes a problem introduced when CK804 support was added. mmio_base can only be set in the CK804 case,
else libata will attempt to iounmap mmio_base, which isn't iomapped for the non-CK804 case. Still need the bar 5
address, so steal from host_set->ports[0]->ioaddr.scr_addr. Jeff, let me know if this is a bad thing to do.
<rmk@flint.arm.linux.org.uk>
[SERIAL] 8250: Add serial8250_config structure definition.
This structure replaces serial_uart_config to allow the 8250 driver
to extend it without breaking all the other users.
<rmk@flint.arm.linux.org.uk>
[SERIAL] 8250: tell transmit path the data transfer size.
Some UARTs give us a transmit interrupt when the TX FIFO is less
than half empty. This means we should not transfer a FIFO-full
of data to the device. Introduce "tx_loadsz" to indicate the
size of this transfer.
<armin@melware.de>
[PATCH] ISDN Eicon driver: maint/trace fix and update
Fix of the debug/trace driver and removal of irq locks.
- Only spinlocks[bh] are used now.
- Removed obsolete direct debug /proc interface.
- Update of internal trace features and its API.
- Use common definition of MAX_DESCRIPTORS.
<hadi@znyx.com>
[PPP]: Fix assertion trigger with NET_CLS_ACT.
Missing setting of skb->input_dev when changing
skb->dev
Signed-off-by: Jamal Hadi Salim <hadi@znyx.com>
Signed-off-by; David S. Miller <davem@redhat.com>
<apm@brigitte.dna.fi>
[NETFILTER]: One missed case in arp_tables.c unaligned fixes.
Signed-off-by: Antti P Miettinen <apm@brigitte.dna.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
<yoshfuji@linux-ipv6.org>
[IPV4/IPV6]: Fix fragment creation.
We have two problem in ipv4 and ipv6 wrt. to
fragmentation on output. Both of which result
in fragmentation when it is really not needed.
When fragmenting both ipv4 and ipv6 need to make
the post IP-header portion of the packet have a
length of modulo 8. This means that if the PMTU
is not a multiple of 8 after the IP header size
is subtracted, we will fragment for full sized
frames for the modulo 8 bytes.
Furthermore, IPV6 subtracts out space for the
fragmentation header it must add, making unnecessary
fragmentation even more likely.
We still need to handle ip*_append_page() and that
will happen in a followup fix.
Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<trini@kernel.crashing.org>
kbuild: Use inttypes.h when stdint.h are not available
The following is from Jean-Christophe Dubois <jdubois@mc.com>.
On Solaris 2.8, <stdint.h> does not exist, but <inttypes.h> does.
However, on Cygwin (the other odd place that the kernel is compiled
on) <inttypes.h> doesn't exist. So we end up testing for __sun__ and
using <inttypes.h> there, and <stdint.h> everywhere else.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<trini@kernel.crashing.org>
kbuild: Use getopt_long in genksyms only when available
Use getopt_long() or getopt(), depending on the host
From: Jean-Christophe Dubois <jdubois@mc.com>.
We do not always have GNU getopt_long(), so when we don't, just use
getopt() and the short options. We do this based on __GNU_LIBRARY__
being set, or not. Originally from Jean-Christophe Dubois <jdubois@mc.com>.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<trini@kernel.crashing.org>
kbuild: Solaris fixes in various kbuild Makfiles's
Additional Makefile fixes for Solaris 2.8
On Solaris, 'head' doesn't take a -q argument. But we can use 'grep -h'
instead, so do that in Makefile.mod{inst,post}. The built-in test to
/bin/sh doesn't like 'if ! cmd' syntax, so when determining if we need
to do modversion stuff, invert the if/else cases. The built-in test
also doesn't understand -ef, so invoke a real version of test which does.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<kaos@ocs.com.au>
kbuild: Add 'make namespacecheck'
make namespacecheck lists globally visible symbols that are not used
outside the file that defines them. These symbols are candidates for
static declarations. It also lists multiply defined symbols.
namespace.pl knows about lots of special cases in the kernel code,
including exported symbols and conglomerate objects.
The patch also corrects the usage of scripts/reference*.pl, they need
$(src).
Signed-off-by: Keith Owens <kaos@ocs.com.au>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Index: 2.6.9-rc1/Makefile
===================================================================
<rmk@flint.arm.linux.org.uk>
[SERIAL] 8250: combine UART_CLEAR_FIFO/UART_USE_FIFO into one flag.
Combine UART_CLEAR_FIFO and UART_USE_FIFO into one capability -
UART_CAP_FIFO. There is only one UART with an unused FIFO - ST16650.
Since we check the fifo size before enabling, we maintain the
existing behaviour.
<rmk@flint.arm.linux.org.uk>
[SERIAL] 8250: serial8250_set_sleep
Add container function for UART sleep code. Currently only Startech
and TI16750 uses this.
<rmk@flint.arm.linux.org.uk>
[SERIAL] 8250: add UART_CAP_SLEEP capability.
<rmk@flint.arm.linux.org.uk>
[SERIAL] 8250: Rename UART_STARTECH to UART_CAP_EFR
UART_STARTECH is really telling us that the UART has an EFR register,
so call this flag UART_CAP_EFR.
<torvalds@ppc970.osdl.org>
Undo UML mis-merge of jiffies initialization.
Paolo Giarrusso points out that the UML merge incorrectly
caused INITIAL_JIFFIES to be reset back to zero, instead
of the debug value for getting an early jiffies wrap.
Fix it back up.
<stevef@smfhome1.smfdom>
[CIFS] Fix incorrect byte count in unlock SMB
<kaber@trash.net>
[NETFILTER]: Flush fragment queue on conntrack unload
Problem discovered, and original version of patch, by
Olaf Kirch.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@redhat.com>
<kaber@trash.net>
[NETFILTER]: Fix race when flushing fragment queue
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@redhat.com>
<rmk@flint.arm.linux.org.uk>
[MMC] Use local card pointer rather than md->queue.card
<rmk@flint.arm.linux.org.uk>
[MMC] Remove unused host->priv
<rmk@flint.arm.linux.org.uk>
[MMC] Add host specific block queue parameters
Allow MMC host drivers to specify their data phase capabilities
to the block queue. This will eventually allow us to perform
SG data phase operations, thereby processing a single request
in one go.
<rmk@flint.arm.linux.org.uk>
[MMC] Give the MMC host the full-sized request.
Pass the total number of MMC data blocks in the request to the
host driver. Since existing MMC host drivers do not support
scatter-gather at present, the block queue defaults have been
chosen to prevent scatter-gather block requests for MMC. A
host can alter these parameters when it wishes to take advantage
of SG capabilities.
<rmk@flint.arm.linux.org.uk>
[MMC] MMCI: Remove hardcoded MCI_IRQMASK definition
<rmk@flint.arm.linux.org.uk>
[MMC] MMCI: data FSM handling updates
- Use mmci_stop_host() to ensure that the data FSM is shut down and
any driver held data is properly released.
- FIFO size is 64 bytes not 16.
<rmk@flint.arm.linux.org.uk>
[MMC] MMCI: Manipulate IRQ masks according to the data FSM state.
Prevent IRQ race conditions between the two handlers and within the
primecell itself. Unfortunately, the primecell does not always mask
the FIFO empty interrupt we reach the end of a transfer to the card.
Also, we may receive the "data end" interrupt prior to finishing a
transfer from the card, so mask this off until we've read the last
bytes from the FIFO.
<rmk@flint.arm.linux.org.uk>
[MMC] MMCI: split the PIO data read and write paths.
<rmk@flint.arm.linux.org.uk>
[MMC] MMCI: Maintain offset rather than buffer pointer for PIO
<rmk@flint.arm.linux.org.uk>
[MMC] MMCI: use bio_kmap_irq() rather than req->buffer
This is in preparation for SG data IO.
<rmk@flint.arm.linux.org.uk>
[MMC] MMCI: Add SG support to PIO data transfers
This allows us to transfer a whole request for multiple pages in one
transaction with the MMC card, resulting in higher overall throughput.
<rmk@flint.arm.linux.org.uk>
[MMC] MMCI: Ensure that we read all data from FIFO.
When we are nearing the end of a transfer from the card, we may not
have sufficient data in the FIFO to trigger a "half FIFO full" IRQ.
Therefore, when we have less than MCI_FIFOSIZE bytes left, switch to
"FIFO contains data" IRQ mode instead.
<rmk@flint.arm.linux.org.uk>
[MMC] PXAMCI: Bracket power management calls with CONFIG_PM.
<akpm@osdl.org>
[PATCH] megaraid warning fix
The ioctl32 conversion registration stubs are in ioctl32.h now.
Signed-off-by: Andrew Morton <akpm@osdl.org>
<sam@mars.ravnborg.org>
kbuild: fix stage 2 of module build
When building allmodconfig the following error were seen:
scripts/Makefile.modpost:86: target `fs/nls/nls_koi8-ru.ko' given more than once in the same rule.
This happened for all modules with 'ko' inside their name.
This bug were introduced when head ... were replaced by grep.
Signed off by: Sam Ravnborg <sam@ravnborg.org>
<sam@mars.ravnborg.org>
bk: Ignore arch/i386/kernel/vsyscall.lds
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<bzolnier@elka.pw.edu.pl>
[PATCH] libata: ata_piix.c PIO fix
[patch] libata: ata_piix.c PIO fix
"[libata] transfer mode cleanup" introduced bug in ata_piix.c:
previously PIO number (not mode) was passed to piix_set_piomode().
Fortunately this function is only used for (disabled) PATA support.
I bet that this is the reason why MWDMA didn't work for PATA.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
<sam@mars.ravnborg.org>
kbuild: Updates to namespacecheck.pl
From: Keith Owens <kaos@ocs.com.au>
This now supports the absolute symbols from modversions, handles
recent binutils changes and supports O=.
Signed-off-by: Keith Owens <kaos@ocs.com.au>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<sam@mars.ravnborg.org>
kbuild: Add stactic analyser tools to make help
Added the tools that seems to be maintained.
There is a bunch that has not been touched for a while - ignore them for now.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<jbarnes@sgi.com>
[IA64-SGI] sn2_defconfig: Enable preempt, CPU hotplug, ext2 and IDE.
o enable preempt per Andrew's request for testing
o enable CPU hotplug for testing
o add EXT2 and IDE disk support to make simulation easy
Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<hadi@znyx.com>
[ETH]: Zap NET_CLS_ACT ifdef.
Signed-off-by: Jamal Hadi Salim <hadi@znyx.com>
Signed-off-by: David S. Miller <davem@redhat.com>
<eranian@hpl.hp.com>
[IA64] palinfo.c: typo s/BEER/BERR/
- fix a typo in the file /proc/pal/CPU*/processor_info w.r.t.
to BERR promotion. Initially reported by Danny Kwong from HP.
Signed-off-by: stephane eranian <eranian@hpl.hp.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<eranian@hpl.hp.com>
[IA64] perfmon.c: cleanup system-wide context when closed from another cpu
- fix pfm_stop() and pfm_flush_pmds() to correctly cleanup
in case of a system-wide context which is closed while running
from another processor. This was leading to an assertion failure
in pfm_loads_regs() for the next user of the PMU on the monitored
CPU.
signed-off-by: stephane eranian <eranian@hpl.hp.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<davem@nuts.davemloft.net>
[TG3]: Add 5750 A3 workaround.
Signed-off-by: David S. Miller <davem@redhat.com>
<mchan@broadcom.com>
[TG3]: Check MAC_STATUS_SIGNAL_DET in serdes polling.
Otherwise we do not handle properly the case
where the switch/hub does not support auto-
negotiation. This is what was breaking 5704
hw fiber autoneg.
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[TG3]: Add capacitive coupling support.
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[TG3]: Fix clock control programming on 5705/5750.
Need to clear one bit at a time, so if we are
clearing both 625_CORE_CLOCK and ALTCLOCK
we first clear the latter then the final
write will clear the former.
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[TG3]: Update driver version and reldate.
<ben-linux@org.rmk.(none)>
[ARM PATCH] 2055/1: S3C2410 - add timer0 deadzone definition
Patch from Ben Dooks
Add the definition of timer 0's dead-zone capability
<ben-linux@org.rmk.(none)>
[ARM PATCH] 2056/1: S3C2410 - check for IRQ pending in gettimeoffset()
Patch from Ben Dooks
Ensure we check for IRQ pending for the gettimeoffset()
function
<ben-linux@org.rmk.(none)>
[ARM PATCH] 2061/1: S3C2410 - Drive strength control for s3c2440
Patch from Ben Dooks
Register definitions, and support for modifying the
Drive Strength Control registers on the S3C2440
Signed-off-by: Ben Dooks
<shemminger@osdl.org>
[NET]: net_random_init needs to get seed later in boot process
Argh.. random_init isn't called until the device's are initialized.
Rather than mess with random.c initialization, how about this; it resets
the net_random state late in initialization when get_random_bytes is ready.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<shemminger@osdl.org>
[PKT_SCHED]: Distribution table fixes for netem.
Fix some issues with netem.
* fix memory link in q_destroy where distribution table not freed
* fix math error in tabledist that made it work for only small values
* change API for distribution table so scaling factor is constant and
table size is determined by looking at the rtnetlink payload size.
this is faster and simpler. Since haven't actually released the tools to load
the table yet, this is the chance to get it right ;-)
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[IPV4]: Push ip_append_data() frag bug fix into ip_append_page()
Based upon implementation suggestions from
Yoshifuji Hideaki.
Signed-off-by: David S. Miller <davem@davemloft.net>
<jgarzik@pobox.com>
[TG3]: Kill all on-chip send BD support code.
People can resurrect from the revision history if
we ever want to investigate using this again and
it kills tests from several fast paths.
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
<rth@twiddle.net>
[PATCH] Alpha: generic dma mapping
From: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
- big functions moved out of line;
- handle dev == NULL case, which apparently means the isa device.
As before, this is needed for Jensen. This also makes the isa sound
drivers working again with recent kernels.
<davej@redhat.com>
[PATCH] Fix up Centaur CPU feature enabling.
Nehemiah wasn't having the CX8 bit enabled before.
In fixing it up, I rewrote the code to be a little clearer.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jgarzik@pobox.com>
[netdrvr 8139cp,r8169] fix dma_addr_t sizeof test
<anton@samba.org>
[PATCH] prio-tree: remove function prototype inside function
I had a problem when compiling a 2.6 kernel with gcc 3.5 CVS. The
prototype for prio_tree_remove in mm/prio_tree.c is inside another
function. gcc 3.5 gets upset and removes the function completely.
Apparently this isnt valid C, so lets fix it up.
Details can be found here:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17205
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] Make assign_irq_vector() non-__init
Make assign_irq_vector() non-__init always (it's called from
io_apic_set_pci_routing(), which is used in the pci_enable_device() path).
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jason.davis@unisys.com>
[PATCH] platform update for ES7000
This update only applies to Unisys' ES7000 server machines. The patch adds
a OEM id check to verify the current machine running is actually a Unisys
type box before executing the Unisys OEM parser routine. It also increases
the MAX_MP_BUSSES definition from 32 to 256. On the ES7000s, bus ID
numbering can range from 0 to 255. Without the patch, the system panics if
booted with acpi=off.
This patch has been tested and verified on an authentic ES7000 machine.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<phil.el@wanadoo.fr>
[PATCH] Fix oops with nmi-watchdog=2
Contributions from Zarakin <zarakin@hotpop.com>
Intel removed two msrs: MSR_P4_IQ_ESCR_0|1 (0x3ba/0x3bb), P4 model >= 3. See
Intel documentation Vol. 3 System Programming Guide Appendix B.
nmi_watchdog=2 oopsed at boot time and oprofile at driver load.
Avoid touching them when model >= 3.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<prasanna@in.ibm.com>
[PATCH] i386 exceptions notifier for kprobes
This patch provides notifiers for i386 architecture exceptions. This patch
has been ported from x86_64 architecture as suggested by Andi Kleen.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<prasanna@in.ibm.com>
[PATCH] kprobes base patch
This patch helps developers to trap at almost any kernel code address,
specifying a handler routine to be invoked when the breakpoint is hit.
Useful for analysing the Linux kernel by collecting debugging information
non-disruptively. Employs single-stepping out-of-line to avoid probe
misses on SMP and may be especially useful in aiding debugging elusive
races and problems on live systems. More elaborate dynamic tracing tools
such as DProbes can be built over the kprobes interface.
Helps developers to trap at almost any kernel code address, specifying a
handler routine to be invoked when the breakpoint is hit. Useful for
analysing the Linux kernel by collecting debugging information
non-disruptively. Employs single-stepping out-of-line to avoid probe
misses on SMP and may be especially useful in aiding debugging elusive
races and problems on live systems. More elaborate dynamic tracing tools
such as DProbes can be built over the kprobes interface.
Sample usage:
To place a probe on __blockdev_direct_IO:
static int probe_handler(struct kprobe *p, struct pt_regs *)
{
... whatever ...
}
struct kprobe kp = {
.addr = __blockdev_direct_IO,
.pre_handler = probe_handler
};
register_kprobe(&kp);
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<prasanna@in.ibm.com>
[PATCH] Jumper Probes to provide function arguments
A special kprobe type which can be placed on function entry points, and
employs a simple mirroring principle to allow seamless access to the
arguments of a function being probed. The probe handler routine should
have the same prototype as the function being probed. Currently
implemented for x86.
The way it works is that when the probe is hit, the breakpoint handler
simply irets to the probe handler's eip while retaining register and stack
state corresponding to the function entry. After it is done, the probe
handler calls jprobe_return() which traps again to restore processor state
and switch back to the probed function. Linus noted correctly at KS that
we need to be careful as gcc assumes that the callee owns arguments. We
save and restore enough stack bytes to cover argument space.
Sample Usage:
static int jip_queue_xmit(struct sk_buff *skb, int ipfragok)
{
... whatever ...
jprobe_return();
return 0;
}
struct jprobe jp = {
{.addr = (kprobe_opcode_t *) ip_queue_xmit},
.entry = (kprobe_opcode_t *) jip_queue_xmit
};
register_jprobe(&jp);
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tiwai@suse.de>
[PATCH] Fix the unnecessary entropy call in the irq handler
Currently add_interrupt_randomness() is called at each interrupt when one
of the handlers has SA_SAMPLE_RANDOM flag, regardless whether the interrupt
is processed by that handler or not. This results in the higher latency
and perfomance loss.
The patch fixes this behavior to avoid the unnecessary call by checking the
return value from each handler.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] Update PPC MAINTAINERS & CREDITS
David Engebretsen has moved on to other things and is no longer maintaining
ppc64. This patch adds an entry in CREDITS to note his contribution in
leading the team that did the PPC64 port originally and updates various
PPC-related MAINTAINERS entries.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: rework PPC64 cpu map setup
Move all cpu map initializations to one place (except for the online map --
cpus mark themselves online as they come up). This sets up
cpu_possible_map early enough that we can use num_possible_cpus for
allocating irqstacks instead of NR_CPUS. Hopefully this should also help
set the stage for kexec.
Signed-off-by: Nathan Lynch <nathanl@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: set platform cpuids later in boot
Move the initialization of the per-cpu paca->hw_cpu_id out of the Open
Firmware client boot code and into a common location which is executed
later.
Signed-off-by: Nathan Lynch <nathanl@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: allocate irqstacks only for possible cpus
With earlier setup of cpu_possible_map the number of irqstacks shrinks from
NR_CPUS to the number of possible cpus.
Signed-off-by: Nathan Lynch <nathanl@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<haveblue@us.ibm.com>
[PATCH] ppc64: add a pfn_to_kaddr() function
This is a helper function that a few architectures already have. This just
copies the i386 implementation to ppc64.
Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<oleg@tv-sign.ru>
[PATCH] /dev/zero vs hugetlb mappings.
Hugetlbfs mmap with MAP_PRIVATE becomes MAP_SHARED silently, but
vma->vm_flags have no VM_SHARED bit. Reading from /dev/zero into hugetlb
area will do:
read_zero()
read_zero_pagealigned()
if (vma->vm_flags & VM_SHARED)
break; // fallback to clear_user()
zap_page_range();
zeromap_page_range();
It will hit BUG_ON() in unmap_hugepage_range() if region is not huge page
aligned, or silently convert it into the private anonymous mapping.
Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<oleg@tv-sign.ru>
[PATCH] hugetlbfs private mappings
Hugetlbfs silently coerce private mappings of hugetlb files into shared
ones. So private writable mapping has MAP_SHARED semantics. I think, such
mappings should be disallowed.
First, such behavior allows open hugetlbfs file O_RDONLY, and overwrite it
via mmap(PROT_READ|PROT_WRITE, MAP_PRIVATE), so it is security bug.
Second, private writable mmap() should fail just because kernel does not
support this.
I belisve, it is ok to allow private readonly hugetlb mappings,
sys_mprotect() does not work with hugetlb vmas.
There is another problem. Hugetlb mapping is always prefaulted, pages
allocated at mmap() time. So even readonly mapping allows to enlarge the
size of the hugetlbfs file, and steal huge pages without appropriative
permissions.
Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] truncate_inode_pages latency fix
Fix scheduling latency issues with large truncates.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<alan@redhat.com>
[PATCH] VLAN support for 3c59x/3c90x
This adds VLAN support to the 3c59x/90x series hardware.
Stefan de Konink ported this code from the 2.4 VLAN patches and tested it
extensively. I cleaned up the ifdefs and fixed a problem with bracketing
that made older cards fail.
--
Developer's Certificate of Origin 1.0
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I have the
right to submit it under the open source license indicated in the file; or
(b) The contribution is based upon previous work that, to the best of my
knowledge, is covered under an appropriate open source license and I have
the right under that license to submit that work with modifications,
whether created in whole or in part by me, under the same open source
license (unless I am permitted to submit under a different license), as
indicated in the file; or
(c) The contribution was provided directly to me by some other person who
certified (a), (b) or (c) and I have not modified it.
I, Stefan de Konink, certify that:
The contribution is based upon previous work that, again is based on GPL
code and I have the right under that license to submit that work with
modifications, whether created in whole or in part by me, under the same
open source license.
I, Alan Cox, certify likewise.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mpm@selenic.com>
[PATCH] tiny shmem/tmpfs replacement
A patch to replace tmpfs/shmem with ramfs for systems without swap,
incorporating the suggestions from Andi and Hugh. It uses ramfs instead.
Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ak@suse.de>
[PATCH] x86_64: emulate NUMA on non-NUMA hardware
Apply this handy patch and boot with numa=fake=4 (or how many nodes you
want, 8 max right now).
There is a minor issue with the hash function, which can make the last node
be bigger than the others. Is probably fixable if it should be a problem.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] Using get_cycles for add_timer_randomness
I tested how long it took to do a dd from /dev/random on ppc64 before and
after this patch, while doing a ping flood from another machine.
before:
# /usr/bin/time dd if=/dev/random of=/dev/zero count=1k
0+51 records in
Command terminated by signal 2
0.00user 0.00system 19:18.46elapsed 0%CPU (0avgtext+0avgdata 0maxresident)k
I gave up after 19 minutes.
after:
# /usr/bin/time dd if=/dev/random of=/dev/zero count=1k
0+1024 records in
0.00user 0.00system 0:33.38elapsed 0%CPU (0avgtext+0avgdata 0maxresident)k
Just over 33 seconds. Better.
From: Arnd Bergmann <arnd@arndb.de>
I noticed that only i386 and x86-64 are currently using a high resolution
timer source when adding randomness. Since many architectures have a
working get_cycles() implementation, it seems rather straightforward to use
that.
Has this been discussed before, or can anyone comment on the implementation
below?
This patch attempts to take into account the size of cycles_t, which is
either 32 or 64 bits wide but independent of the architecture's word size.
The behavior should be nearly identical to the old one on i386, x86-64 and
all architectures without a time stamp counter, while finding more entropy
on the other architectures.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<roland@redhat.com>
[PATCH] waitid system call
This patch adds a new system call `waitid'. This is a new POSIX call that
subsumes the rest of the wait* family and can do some things the older
calls cannot. A minor addition is the ability to select what kinds of
status to check for with a mask of independent bits, so you can wait for
just stops and not terminations, for example. A more significant
improvement is the WNOWAIT flag, which allows for polling child status
without reaping. This interface fills in a siginfo_t with the same details
that a SIGCHLD for the status change has; some of that info (e.g. si_uid)
is not available via wait4 or other calls.
I've added a new system call that has the parameter conventions of the
POSIX function because that seems like the cleanest thing. This patch
includes the actual system call table additions for i386 and x86-64; other
architectures will need to assign the system call number, and 64-bit ones
may need to implement 32-bit compat support for it as I did for x86-64.
The new features could instead be provided by some new kludge inventions in
the wait4 system call interface (that's what BSD did). If kludges are
preferable to adding a system call, I can work up something different.
I added a struct rusage field si_rusage to siginfo_t in the SIGCHLD case
(this does not affect the size or layout of the struct). This is not part
of the POSIX interface, but it makes it so that `waitid' subsumes all the
functionality of `wait4'. Future kernel ABIs (new arch's or whatnot) can
have only the `waitid' system call and the rest of the wait* family
including wait3 and wait4 can be implemented in user space using waitid.
There is nothing in user space as yet that would make use of the new field.
Most of the new functionality is implemented purely in the waitid system
call itself. POSIX also provides for the WCONTINUED flag to report when a
child process had been stopped by job control and then resumed with
SIGCONT. Corresponding to this, a SIGCHLD is now generated when a child
resumes (unless SA_NOCLDSTOP is set), with the value CLD_CONTINUED in
siginfo_t.si_code. To implement this, some additional bookkeeping is
required in the signal code handling job control stops.
The motivation for this work is to make it possible to implement the POSIX
semantics of the `waitid' function in glibc completely and correctly. If
changing either the system call interface used to accomplish that, or any
details of the kernel implementation work, would improve the chances of
getting this incorporated, I am more than happy to work through any issues.
Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<roland@redhat.com>
[PATCH] fix rusage semantics
This patch changes the rusage bookkeeping and the semantics of the
getrusage and times calls in a couple of ways.
The first change is in the c* fields counting dead child processes. POSIX
requires that children that have died be counted in these fields when they
are reaped by a wait* call, and that if they are never reaped (e.g.
because of ignoring SIGCHLD, or exitting yourself first) then they are
never counted. These were counted in release_task for all threads. I've
changed it so they are counted in wait_task_zombie, i.e. exactly when
being reaped.
POSIX also specifies for RUSAGE_CHILDREN that the report include the reaped
child processes of the calling process, i.e. whole thread group in Linux,
not just ones forked by the calling thread. POSIX specifies tms_c[us]time
fields in the times call the same way. I've moved the c* fields that
contain this information into signal_struct, where the single set of
counters accumulates data from any thread in the group that calls wait*.
Finally, POSIX specifies getrusage and times as returning cumulative totals
for the whole process (aka thread group), not just the calling thread.
I've added fields in signal_struct to accumulate the stats of detached
threads as they die. The process stats are the sums of these records plus
the stats of remaining each live/zombie thread. The times and getrusage
calls, and the internal uses for filling in wait4 results and siginfo_t,
now iterate over the threads in the thread group and sum up their stats
along with the stats recorded for threads already dead and gone.
I added a new value RUSAGE_GROUP (-3) for the getrusage system call rather
than changing the behavior of the old RUSAGE_SELF (0). POSIX specifies
RUSAGE_SELF to mean all threads, so the glibc getrusage call will just
translate it to RUSAGE_GROUP for new kernels. I did this thinking that
someone somewhere might want the old behavior with an old glibc and a new
kernel (it is only different if they are using CLONE_THREAD anyway).
However, I've changed the times system call to conform to POSIX as well and
did not provide any backward compatibility there. In that case there is
nothing easy like a parameter value to use, it would have to be a new
system call number. That seems pretty pointless. Given that, I wonder if
it is worth bothering to preserve the compatible RUSAGE_SELF behavior by
introducing RUSAGE_GROUP instead of just changing RUSAGE_SELF's meaning.
Comments?
I've done some basic testing on x86 and x86-64, and all the numbers come
out right after these fixes. (I have a test program that shows a few
Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] fix PID hash sizing
A 4GB, 4-way Opteron would create the smallest size table (16 entries) because
pidhash_init is called before mem_init which is where x86-64 sets up max_pfn.
nr_kernel_pages is setup by paging_init, called from setup_arch, which is also
where i386 sets up max_pfn.
So export nr_kernel_pages, nr_all_pages. Use nr_kernel_pages when sizing the
PID hash. This fixes the problem.
This also makes the pid hash dependant on the size of ZONE_NORMAL instead of
total size of memory.
Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] use hlist for pid hash
Use hlists for the PID hashes. This halves the memory footprint of these
hashes. No benchmarks, but I think this is a worthy improvement because
the hashes are something that would be likely to have significant portions
loaded into the cache of every CPU on some workloads.
This comes at the "expense" of
1. reintroducing the memory prefetch into the hash traversal loop;
2. adding new pids to the head of the list instead of the tail. I
suspect that if this was a big problem then the hash isn't sized
well or could benefit from moving hot entries to the head.
Also, account for all the pid hashes when reporting hash memory usage.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<nickpiggin@yahoo.com.au>
[PATCH] use hlist for pid hash: cache friendliness
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jdow@earthlink.net>
[PATCH] Amiga partition reading fix
I have a large archive of files stored on Amiga volumes. Many of these
volumes are on Fujitsu magneto-optical disks with 2k sector size. The
existing partitioning code cannot properly read them since it appears the
OS automatically deblocks the large sectors into logical 512 byte sectors,
something AmigaDOS never did. I arranged the partitioning code to handle
this situation.
Second I have some rather strange test case disks, including my largest
storage partition, that have somewhat unusual partition values. As such I
needed additional information in addition to the first and last block
number information. AmigaDOS reserves N blocks, with N greater than or
equal to 1 and less than the size of the partition, for some boot time
information and signatures. I have some partitions that use other than the
usual value of 2.
There is one more "fix" that could be put in if someone needs it. Another
value in the "Rigid Disk Blocks" description of a partition is a "PreAlloc"
value. It defines a number of blocks at the end of the disk that are not
considered to be a real part of the partition. This was "important" in the
days of 20 meg and 40 meg hard disks. It is hardly important and not used
on modern drives without special user intervention.
This partitioning information is known correct. I wrote the low level
portion of the hard disk partitioning code for AmigaDOS 3.5 and 3.9. I am
also responsible for one of the more frequently used partitioning tools,
RDPrepX, before that.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<okir@suse.de>
[PATCH] Prevent memory leak in devpts
There is a dentry refcount leak in devpts_get_tty.
struct tty_struct *devpts_get_tty(int number)
{
struct dentry *dentry = get_node(number);
struct tty_struct *tty;
tty = (IS_ERR(dentry) || !dentry->d_inode) ? NULL :
dentry->d_inode->u.generic_ip;
up(&devpts_root->d_inode->i_sem);
return tty;
}
The get_node function does a lookup on /dev/pts/<number> and returns the
dentry, taking a reference. We should dput the dentry after extracting the
tty pointer.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rusty@rustcorp.com.au>
[PATCH] Don't OOPS on stripped modules
Don't want to go overboard with the checks, but this is simple and
reasonable.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (modified)
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<apw@shadowen.org>
[PATCH] i386 bootmem restrictions
(Comment changes only)
The bootmem allocator is initialised before the kernel virtual address
space has been fully established. As a result, any allocations which are
made before paging_init() has completed may point to invalid kernel
addresses. This patch notes this limitation and indicates where the
allocator is fully available.
Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<apw@shadowen.org>
[PATCH] use page_to_nid
There are a couple of places where we seem to go round the houses to get
the numa node id from a page. We have a macro for this so it seems
sensible to use that.
Both lookup_node and enqueue_huge_page use page_zone() to locate the zone,
that to locate node pgdat_t and that to get the node_id. Its more
efficient to use page_to_nid() which gets the nid from the page flags,
especially if we are not using the zone for anything else it. Change these
to use page_to_nid().
Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ornati@fastwebnet.it>
[PATCH] tdfx linkage fix
drivers/built-in.o(.data+0x40a68): undefined reference to `cfb_fillrect'
drivers/built-in.o(.data+0x40a6c): undefined reference to `cfb_copyarea'
3dfx framebuffer driver depends on "cfb_fillrect.c" and "cfb_copyarea.c" if
it's compiled without CONFIG_FB_3DFX_ACCEL turned on...
Signed-off-by: Paolo Ornati <ornati@fastwebnet.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mpm@selenic.com>
[PATCH] netpoll: fix unaligned accesses
Avoid some alignment traps.
Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mpm@selenic.com>
[PATCH] netpoll: revert queue stopped change
Here's the first of the broken out patch set. This puts the check for
netif_queue_stopped back into netpoll_send_skb. Network drivers are not
designed to have their hard_start_xmit routines called when the queue is
stopped.
Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jmoyer@redhat.com>
[PATCH] netpoll: kill CONFIG_NETPOLL_RX
This patch removes CONFIG_NETPOLL_RX, as discussed.
Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jmoyer@redhat.com>
[PATCH] netpoll: increase NAPI budget
I've upped the poll budget to 16 and added a comment explaining why. I
definitely ran into this problem when testing netdump.
Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jmoyer@redhat.com>
[PATCH] netpoll: fix up trapped logic
This patch contains the updates necessary to fix the hangs in netconsole.
This includes the changing of trapped to an atomic_t, and the addition of a
netpoll_poll_lock. It also turns dev->netpoll_rx into a bitfield which is
used to keep from running the networking code from the netpoll_poll call path.
Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hpa@zytor.com>
[PATCH] Make i386 signal delivery work with -mregparm
This patch allows i386 signal delivery to work correctly when userspace is
compiled with -mregparm. This is somewhat hacky: it passes the arguments
*both* on the stack and in registers, but it works because there are only
one or three (depending on SA_SIGINFO) official arguments. If you're
relying on the unofficial arguments then you're doing something nonportable
anyway and can put in the __attribute__((cdecl,regparm(0))) in the correct
place.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<dhowells@redhat.com>
[PATCH] Fix a NULL pointer bug in do_generic_file_read()
The attached patch fixes a bug introduced into do_generic_mapping_read() by
which a file pointer becomes required. I'd arranged things so that the
file pointer was optional so that I could call the function directly on an
inode.
Signed-Off-By: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulkf@microgate.com>
[PATCH] synclinkmp transmit eom fix
Bug Fixes:
* Fix transmit end of message (EOM) processing to work correctly with
hardware auto CTS feature
* Fix oops in error path if hardware diags fail during device
initialization
Cosmetic change:
* Use existing macros for address space size instead of hardcoded values
Signed-off-by: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rsa@us.ibm.com>
[PATCH] interrupt driven hvc_console as vio device
This is an hvc_console patch which provides driver and ppc64 architecture
fixes to enable the hvc_console driver to register itself as a vio device
with the vio bus, provide hotplug add/remove for vty adapters, and act as
an interrupt driven driver on Power-5 hardware or remain as a polling
driver on Power-4 hardware.
arch/ppc64/kernel/hvconsole.c
=============================
- Changed hvc_get_chars() and hvc_put_chars() api to take vtermno rather
than index number.
- Added hvc_find_vtys() function which walks the bus looking for
vterm/vty devices to callback to the hvc_console driver. This provides
console output functionality prior to early console init (pre mem init
and pre device probe).
include/asm-ppc64/hvconsole.h
=============================
- Changed hvc_get_chars() and hvc_put_chars() api to take vtermno rather
than index number.
- Added hvc_find_vtys() function.
- Added hvc_instantiate() function which is implemented by a console
driver wanting to receive a callback of and early console init.
drivers/char/hvc_console.c
==========================
- Switch khvcd from kernel_threads to kthreads which got rid of
deprecated daemonize().
- Added module exit clause to be thorough (not terribly necessary with a
console driver of course)
- Added early discovery of vterm/vty adapters by doing a bus walk on
early console init which results in hvc_instantiate() callback and
addition of the vtermno into a static array of vtermnos supported as
console adapters (meaning the console api's work against these vtermnos
prior to full console initialization).
- This driver is now registered as a vio driver which means that vty
adapters are now managed via probe/remove. This means hvc_console
supports hotplug vty adapters.
- Driver now requests more device nodes than what was found on the
initial bus walk when registered as a tty driver to make room for hotplug
vty adapters. These secondary vty adapters provide a tty tunnel between
partitions.
- Removed static hvc_struct array and replaced with a linux list that has
elements (hvc_struct instances) added/removed on probe/remove AFTER early
console init. This is important because kmalloc can't be done at early
console init.
- Driver now either runs in interrupt driven mode or in polling mode on
older hardware. The khvcd is smart enough to not 'schedule()' when there
are no interrupts.
- kobjects are now used for ref counting on the hvc_struct instances.
- This driver puts the tty layer to sleep on hvc_close() if there are
pending data writes being blocked by firmware.
- Removed useless spinlocks in hvc_chars_in_buffer() and hvc_write_room.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Ryan S. Arnold <rsa@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] remove ext2_panic() prototype
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<joshk@triplehelix.org>
[PATCH] export more symbols on sparc32
Cc: William Lee Irwin III <wli@holomorphy.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bgerst@quark.didntduck.org>
[PATCH] Fix hardcoded value in vsyscall.lds
The last attempt to clean this up still left a hardcoded constant (the
offset from __FIXADDR_TOP). This patch moves VSYSCALL_BASE to
asm-offsets.c.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rbultje@ronald.bitfreak.net>
[PATCH] zr36067 driver - correct i2c-algo-bit dependency in Kconfig
attached patch correctly makes the zr36067 driver depend on i2c-ago-bit in
the kernel config. Bug reported and patch sent to me by Adrian Bunk
<bunk@fs.tum.de> (6/21). It wasn't signed off.
Signed-off-by: Ronald Bultje <rbultje@ronald.bitfreak.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rbultje@ronald.bitfreak.net>
[PATCH] zr36067 driver - use msleep() instead of schedule_timeout()
attached patch makes the zr36067 driver use msleep() instead of
schedule_timeout() with uninterruptible state. Patch originally
submitted by Nishanth Aravamudan <nacc@us.ibm.com> (7/26).
Signed-off-by: Ronald Bultje <rbultje@ronald.bitfreak.net>
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rbultje@ronald.bitfreak.net>
[PATCH] zr36067 driver - correct subfrequency carrier
attached patch changes the subfrequency carrier value in the adv7175
video output driver which is part of the zr36067 driver package. The
practical consequence is that the picture will be more stable on
non-passthrough video mode in NTSC. It does not affect PAL/SECAM. Patch
originally submitted by Douglas Fraser <ds-fraser@comcast.net> (8/21).
Signed-off-by: Ronald Bultje <rbultje@ronald.bitfreak.net>
Signed-off-by: Douglas Fraser <ds-fraser@comcast.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] hfs/hfsplus is missing .sendfile
There seem to be some crazy mac users that want to use the loop driver
on hfsplus.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] make topology.h macros safer
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] fix devfs name for microcode driver
Seem like devfsd expects it in /dev/cpu/microcode and Debian users do
as well.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<vegarwa@online.no>
[PATCH] BeFS: load default nls if none is specified in mount options
Makes the BeOS File Systen driver load the default nls if none is specified
in the "iocharset" mount option.
Signed-off-by: Vegard Wærp <vegarwa@online.no>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] fbdev: fix kernel panic from FBIO_CURSOR ioctl
1. This fixes a kernel oops when issuing an FBIO_CURSOR ioctl if struct
fb_cursor_user is filled with zero/NULLs. Reported by Yuval Kogman
<nothingmuch@woobling.org>.
2. This also fixes the cursor corruption in soft_cursor when
sprite.scan_align != 1.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] fbdev: fix copy_to/from_user in fbmem.c:fb_read/write
This patch fixes a problem reported by David S. Miller <davem@redhat.com>
"I just noticed that fb_{read,write}() uses copy_*_user() with
the kernel buffer being the frame buffer. It needs to use
the proper device address accessor functions."
The patch will do an intermediate copy of the contents to a page-sized,
kmalloc'ed buffer.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l/bttv: add sanity check (bug #3309)
Missing sanity check, overlay is supported for packed pixel formats only.
Patch below. It's not API related btw, the bug can be triggered using the
v4l2 API as well.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lcapitulino@conectiva.com.br>
[PATCH] kernel/fork.c add missing unlikely().
Signed-off-by: Luiz Capitulino <lcapitulino@conectiva.com.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jacekpoplawski@wp.pl>
[PATCH] stv0299 device naming fix
Name of device has been changed in 2.6.9-rc1 to "SkyStar2", but module stv0299
still compares name with "Technisat SkyStar2 driver", strings are different,
and result is that stv0299 detects invalid tuner type.
Cc: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: core changes
s390 core changes:
- Fix a race condition between kernel thread creation and preemption.
- Fix idal_is_needed for the border case 0x7ffff000.
- Get rid of compiler warnings in compat_signal.c and profile.c.
- Regenerate default configuration.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: kernel stack options.
This adds support for the new compiler options -mkernel-backchain,
-mstack-size, -mstack-guard, -mwarn-dynamicstack and -mwarn-framesize.
The option -mkernel-backchain enables the use of modified layout for the
stack frames of kernel functions. This breaks the ABI, modules compiled
with the option won't work on a kernel compiled with the option and vice
versa. The positive effect of the option is a drastic reduction of kernel
stack use. The trick is that the new frame layout allows to overlap the 96
(31 bit)/160 (64 bit) byte bias areas of the functions on the call chain.
This lowers the minimal stack usage of a function from 96 bytes to 16 bytes
(31 bit) and 160 bytes to 24 bytes (64 bit). The kernel stack use is
decreased to a point where it is possible to use 4K (31 bit) / 8K (64 bit)
stacks. The split into process stack and interrupt stack is already in
place.
The options -mstack-size and -mstack-guard are used to detect kernel stack
overflows. The compiler adds code to the prolog of every function that
causes an illegal operation if the kernel stack is about to overflow.
The options -mwarn-dynamicstack and -mwarn-framesize cause the compiler to
emit warnings if a function uses dynamic stack allocation or if the
function frame size is bigger then a specified limit.
To play safe all the new options are configurable.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: zfcp host adapater
zfcp host adapater changes:
- Add ability to enqueue other WKA ports besides the nameserver port.
- Document and cleanup sg_list functions.
- Add get_port_by_did/get_adapater_by_busid functions.
- Improve documentation of some functions and structures.
- Fix error handling for nameserver requests.
- Correct size check in zfcp_sg_list_copy_to_user.
- Correct parameter description for loglevel parameter.
- Remove unsused code, types and definitions.
- Add support for exchange_port_data command.
- Add infrastructure to set timers for ELS and SCSI commands.
- Avoid adapter shutdown after receiving FSF_SQ_ULP_PROGRAMMING_ERROR.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] isdn debug build fix
On x86_64:
drivers/isdn/hardware/eicon/debug.c: In function `DI_format':
drivers/isdn/hardware/eicon/debug.c:599: incompatible types in assignment
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<robertd@vantagecontrols.com>
[ARM] Fix VMALLOC range check in IXP4xx I/O routines
I found a problem in the implementation of io.h for the ixp425.
It wasn't letting me access memory at VMALLOC_START, only after it.
I've included a patch to fix this problem. This patch is for the
2.4.x kernel, but it looks like it needs fixing in the 2.6.x kernel as
well.
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<sam@mars.ravnborg.org>
kbuild: Fix modules_install
modules_install failed for modules with 'ko' in their name.
Fixes this.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<torvalds@ppc970.osdl.org>
Revert "mark pcxx as broken"
Not only did it mark the wrong driver, Christoph reports that
somebody might have even made the driver compile these days..
Cset exclude: hch@lst.de[torvalds]|ChangeSet|20040831174055|41082
<davem@nuts.davemloft.net>
[SPARC64]: SA_SAMPLE_RANDOMNESS fix.
Signed-off-by: David S. Miller <davem@redhat.com>
<davej@redhat.com>
[CPUFREQ] Fix up ARM drivers 'out of sync' problem.
The SA1100 and SA1110 platforms can handle situations well where the
CPU frequency is different to the value the cpufreq (and timing) code
thinks it is, e.g. when resuming from sleep. So, remove the flags
noting the opposite.
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.de>
Signed-off-by: Dave Jones <davej@redhat.com>
<davej@redhat.com>
[CPUFREQ] Remove duplicate information brought in with the new governor.
The current CPU frequency is already exported one directory upwards, so there
is no need to duplicate it in the ondemand governor.
From: Dominik Brodowski <linux@dominikbrodowski.de>
Signed-off-by: Dave Jones <davej@redhat.com>
<davej@redhat.com>
[CPUFREQ] Fix cosmetic issue in powernow-k8 error handling
I tried to load the new SMP capable powernow k8 driver on a machine
with an too old BIOS. I got a lot of cryptic "init not cpu 0"
messages until the "MP systems not supported by PSB ..." message.
This patch switches the order of the checks around to print the
other message first. It will be still printed multiple times
because the cpufreq setup will probe all CPUs, but that's probably
ok.
From: Andi Kleen <ak@muc.de>
Signed-off-by: Dave Jones <davej@redhat.com>
<viro@www.linux.org.uk>
[PATCH] missing includes from irq changes
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] mmc annotation
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] missing include compiler.h in arm memory.h
use of __deprecated requires compiler.h
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] alpha warning fixes
pci_dma_sync_single_for_device() had wrong prototype [who TF had come up
with that name, anyway?]
->cpu in thread_info was long; it should be unsigned int.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] usx2y cleanups and fixes
Sigh...
a) mixing of userland and kernel pointers is bad
b) so's not checking result of kmalloc()
c) so's not checking result of copy_from_user()
d) use of do { .... break; ... break; ... } while(0); is *highly*
unidiomatic. Do not confuse kernel with IOCCC, please. And if you have
religious aversion to multiple return statements in a function, at least
learn the reasons why it is frowned upon in many situations. Hint: they
all apply to use of break in that manner.
e) 0 instead of NULL
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] missing include in pcm_native.c
compile fix for alpha - io.h is needed there for io_remap_...()
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] acpi/processor.c 64bit portability
wrong type of return value for ->write()
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] acpiphp_ibm.c 64bit portability
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] alpha csum_partial_copy.c annotations
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] netfilter warning (alpha)
On alpha u64 is unsigned long; %llu is unsigned long long...
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] mixart cleanups
* check result of pci_set_dma_mask() instead of looking at pci_dma_supported()
* size_t => %zd
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] sparc64 vga.h fix
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] __setup fixes
fd_mcs and NCR53c406a forget to parse string -> int array in their
setup functions.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] more NULL noise removal
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] eicon annotation
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] megaraid annotation
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davem@nuts.davemloft.net>
[SPARC]: Add sys_waitid support.
Signed-off-by: David S. Miller <davem@davemloft.net>
<torvalds@ppc970.osdl.org>
Annotate sys_wait4() user pointers
<torvalds@ppc970.osdl.org>
Allow the compiler to notice "constant" header file.
Both gcc and sparse will speed up tokenization by noticing
when a header file is protected by the standard preprocessor
#ifndef .. #endif exclusion.
However, that requires that the headers actually _use_ that
standard exclusion. Some did their own little broken dance.
<viro@www.linux.org.uk>
[PATCH] afs ->follow_link() fixes
* fixed leaks on failure exits
* got rid of useless struct nameidata instance
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] sysfs ->follow_link() switched to new scheme
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] ncpfs ->follow_link() switched to new scheme
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] cifs ->follow_link() switched to new scheme, cleaned up
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] reduce stack use in altroot handling
Massaged altroot handling to avoid on-stack struct nameidata instance (and
got it faster, actually). We are in the middle of do_follow_link() recursion
here, so the stack footprint is critical.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] misc cleanup in symlink-handling part of namei.c
page_follow_link_light() should just call nd_set_link() - error handling will
come for free.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] nfs ->follow_link() switched to new scheme
NFS takes some thought to switch to the new symlink scheme, because we
can't rely on the pagecache lookup to find the symlink page when freeing
it - the cache might have been invalidated in the meantime.
So we hide the page information in the symlink data area itself,
by stealing the last pointer in the page used for the cache. That
way nfs_put_link() can just look up the page directly.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trini@kernel.crashing.org>
[PATCH] ppc32: fix the 'checkbin' target
The checkbin target on PPC32 isn't quite right.
First, one of the tests (to ensure that some instructions are known to
gas) is never actually invoked because 'checkbin' doesn't know about
stuff set in .config, so we always have the 'else' case run. This
changes to always running the test and telling the user to upgrade to at
least binutils 2.12.1.
The next problem is that we were doing $(AS) -o /dev/null ... in both
that test, as well as another. The problem here is that the checkbin
target is run on the install targets, meaning that /dev/null will get
unlinked when the test passes. To get around this we use .tmp_gas_check
as the output file instead.
Acked by Sam.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sam@mars.ravnborg.org>
kbuild: Remove last signs of LDFLAGS_BLOB
From: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
The LDFLAGS_BLOB var (which used to be defined in arch Makefiles)
is now unused,as specified inside usr/initramfs_data.S. So this
patch removes the remaining references.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<blaisorblade_spam@yahoo.it>
kbuild: Set cflags before including arch Makefile
Please note that this patch, even if UML-related, should be immediately
discussed for merging in mainline, if possible. The UML patch to handle
this has therefore been separated.
Patch purpose:
If arch/$(ARCH)/Makefile is included before adding -O2 (and the rest) to
CFLAGS, I must duplicate the addition of it to USER_CFLAGS for UML.
So let's fix this.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<davem@nuts.davemloft.net>
[SPARC64]: Fix set_utsname returning with uts semaphore held.
Based upon a patch from Alexander Stohr.
This thing was also reimplementing strnchr() as well.
Signed-off-by: David S. Miller <davem@redhat.com>
<janitor@sternwelten.at>
[SPARC64]: Use list_for_each in pci_common.c
Replace for/while loops with list_for_each*.
Signed-off-by: Domen Puncer <domen@coderock.org>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[SPARC64]: Zap pci_controller_lock.
It is only taken during boot time bus probe, thus
protects nothing at run time and causes bogus bug
messages when PREEMPT is enabled. When we support
PCI controller hot plug we will add a suitable locking
mechanism.
Signed-off-by: David S. Miller <davem@davemloft.net>
<bdschuym@pandora.be>
[BRIDGE]: Add ipv6 packet filtering.
Signed-off-by: Bart De Schuymer <bdschuym@pandora.be>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[SPARC64]: Kill unused 'flags' in pci_sabre.c
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[SPARC64]: Add sparc64die_chain as on x86{,_64}
<stevef@stevef95.austin.ibm.com>
[CIFS] fix recent cifs symlink change so as not call kfree on null path
Signed-off-by: Steve French (sfrench@us.ibm.com)
<torvalds@ppc970.osdl.org>
Use "ifdef" rather than "if" to test for __KERNEL__
Both work, but the latter can cause warnings in user space
from compilers that don't like using undefined identifiers
in preprocessor expressions (quite reasonable).
Pointed out by Randy Dunlap.
<davem@nuts.davemloft.net>
[KPROBES]: Pass integer addresses, not pointers, to flush_icache_range().
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[SPARC64]: Initial KPROBES implementation.
Signed-off-by: David S. Miller <davem@davemloft.net>
<janitor@sternwelten.at>
[SPARC64]: Use list_for_each in pci_sabre.c
Signed-off-by: Domen Puncer <domen@coderock.org>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[SPARC64]: Update defconfig.
<kksx@maul.ru>
[IPV4]: Need to clear nf_debug parp_redo().
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<laforge@netfilter.org>
[NETFILTER]: Add some missing help entries.
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<laforge@netfilter.org>
[NETFILTER]: Sort Kconfig entries into reasonable order.
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<stevef@smfhome1.smfdom>
[CIFS] Fix CIFS symlink regression when long symlink paths
Signed-of-by: Steve French (sfrench@us.ibm.com)
<davem@nuts.davemloft.net>
[NET]: Free neigh_parms using RCU to fix neigh_create/inetdev_destroy race.
Signed-off-by: David S. Miller <davem@davemloft.net>
<herbert@gondor.apana.org.au>
[IPV4/IPV6]: Fixup checksums properly when fragmenting.
If we end up with a fraggap, when we copy the data
over to the next frag being built we must compute
a checksum for the bit we copy over for the new
fragment and subtract that checksum from the place
we are copying it from.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
<hadi@cyberus.ca>
[PKT_SCHED]: Add gact generic actions.
Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[PKT_SCHED]: Kill bogus spaces in Kconfig strings.
Signed-off-by: David S. Miller <davem@davemloft.net>
<dsaxena@plexity.net>
[ARM] IXP2000 cleanups to get code upstream
This changeset fixes up all the IXP2000 issues mentioned in the following message:
http://lists.arm.linux.org.uk/pipermail/linux-arm-kernel/...
- Remove page table fixups for IXP2400 systems. There is actually some
confusion b/w myself and Intel on what mappings really needs this and
we still need to determine a proper clean way to do this. When we have
that, we'll add support back in. For now I am still able to boot
on IXP2400 systems.
- Replaced __asm__ __volatile__("":::"memory") with barrier()
- Remove inclusion of mach-types.h in ixdp2x01.h. The machine_is_ixdp2x01()
macro was only being used in one place, so just check for
(machine_is_ixdp2401() || machine_is_ixdp2801())
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<dsaxena@plexity.net>
[ARM] Remove support for XScale BDI2000
This accidently made it into my upstream tree and is not meant
to go upstream.
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<airlied@starflyer.(none)>
Mark gamma as broken
Signed-off-by: Dave Airlie <airlied@linux.ie>
<airlied@starflyer.(none)>
Initial DRM function table removes some if the DRIVER_ macros.
Signed-off-by: Dave Airlie <airlied@linux.ie>
<davej@redhat.com>
[PATCH] Eicon ISDN: fix leak in eicon debug code.
Spotted with the source checker from Coverity.com.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Armin Schindler <armin@melware.de>
<laforge@netfilter.org>
[IPV4]: Use nf_reset() in parp_redo().
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<eric.lemoine@gmail.com>
[NET]: Allow get/set of dev->weight via netlink.
Signed-off-by: David S. Miller <davem@davemloft.net>
<kaber@trash.net>
[IPV4/IPV6]: Fix suboptimal fragment sizing for last fragment
Yoshifuji's recent fragment patch prevents unnecessary fragmentation
when the data can be kept in a single packet, but only for the first
packet. When fragmenting, all fragments are still truncated to
multiples of 8 and we might end up creating an unnecessary fragment.
This dump shows the problem (MTU 1499):
172.16.1.123.32771 > 172.16.195.3.4135: udp 2937 (frag 7066:1472@0+)
172.16.1.123 > 172.16.195.3: udp (frag 7066:1472@1472+)
172.16.1.123 > 172.16.195.3: udp (frag 7066:1@2944)
This patch always builds mtu sized fragments and truncates the previous
fragment to a multiple of 8 bytes when allocating a new one. With the
patch the dump looks like this:
172.16.1.123.32772 > 172.16.195.3.4135: udp 2937 (frag 49641:1472@0+)
172.16.1.123 > 172.16.195.3: udp (frag 49641:1473@1472)
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davej@redhat.com>
[PATCH] Fix NULL derefence in OSS MAUI driver.
Spotted with the source checker from Coverity.com.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] Fix leak in PNP interface code.
Spotted with the source checker from Coverity.com.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] Remove pointless code from ALSA emu10k1 midi driver.
Spotted with the source checker from Coverity.com.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] Clean up failure path in DAC960
1. If the ScatterGatherPool allocation fails, its pointless
trying to allocate a RequestSensePool.
2. Free up the ScatterGatherPool if the RequestSensePool allocation fails.
Spotted with the source checker from Coverity.com.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] Remove pointless check in zlib
We dereference 'z' a few lines above this check.
If it was possible to hit this condition, it wouldve
triggered long ago, in the form of a crash.
Spotted with the source checker from Coverity.com.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] Fix NULL dereference in OSS v_midi driver
Spotted with the source checker from Coverity.com.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] Fix another PNP leak.
Spotted with the source checker from Coverity.com.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] Fix leaks in ISOFS.
Spotted with the source checker from Coverity.com.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] Fix potential leaks in pc300_tty driver
It appears that 'new' can be allocated, and next time around
the loop, if something goes wrong, we lose the reference..
Spotted with the source checker from Coverity.com.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] Fix leak in atmel wireless driver.
Spotted with the source checker from Coverity.com.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] Fix leak in ISAPNP core
This looks odd, but there doesn't seem to be an
isapnp_free() or similar..
Spotted with the source checker from Coverity.com.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] More PNP leaks.
Spotted with the source checker from Coverity.com.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] Check find_vma return code in make_pages_present()
It can return NULL, so check for it.
Spotted with the source checker from Coverity.com.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<cw@f00f.org>
[PATCH] i386 reduce spurious interrupt noise
i386 hardware can (and does) see spurious interrupts from time to
tome. Ideally I would like the printk removed completely but this is
probably good enough for now.
Signed-off-by: Chris Wedgwood <cw@f00f.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kksx@mail.ru>
[PATCH] fixed pidhashing patch
This patch fixes strange and obscure pid implementation in current kernels:
- it removes calling of put_task_struct() from detach_pid()
under tasklist_lock. This allows to use blocking calls
in security_task_free() hooks (in __put_task_struct()).
- it saves some space = 5*5 ints = 100 bytes in task_struct
- it's smaller and tidy, more straigthforward and doesn't use
any knowledge about pids using and assignment.
- it removes pid_links and pid_struct doesn't hold reference counters
on task_struct. instead, new pid_structs and linked altogether and
only one of them is inserted in hash_list.
Signed-off-by: Kirill Korotaev (kksx@mail.ru)
Signed-off-by: William Irwin <wli@holomorphy.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pjones@redhat.com>
[SPARC64]: Support 64-bit initrd addresses.
Needs a SILO update too which is forthcoming.
Signed-off-by: Peter Jones <pjones@redhat.com>
Signed-off-by: Ben Collins <bcollins@debian.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<herbert@gondor.apana.org.au>
[IPV4/IPV6]: Use csum_sub() instead of csum_block_sub() w/zero 3rd arg.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
<ianw@gelato.unsw.edu.au>
[IA64] VIRTUAL_MEM_MAP can be set when DISCONTIGMEM isn't; handle it
Patch developed by Ian Wienand under advice from Bill Irwin.
Signed-off-by: William Irwin <wli@holomorphy.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<torvalds@ppc970.osdl.org>
The coverity source checker is wrong. Revert some of the "leak fixes".
Thanks to Davem for noticing. We probably should _not_ trust the
coverity reports that much.
Cset exclude: davej@redhat.com[torvalds]|ChangeSet|20040902213928|62770
Cset exclude: davej@redhat.com[torvalds]|ChangeSet|20040902213829|63705
<trond.myklebust@fys.uio.no>
[PATCH] NFS: clean up the new symlink code
- Now that the VFS no longer uses it, we don't need to cache the symlink
string length.
- Make ->readlink() take page offset+length arguments
- Fix up page under/overflow checking on the readlink XDR code so that
it matches read/write.
Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trond.myklebust@fys.uio.no>
[PATCH] NFS: fix problem of ESTALE errors on NFSv2 symlinks
NFSv2: Fix another bad filehandle cast.
NFSv2: The symlink operation does not return a valid filehandle.
Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trond.myklebust@fys.uio.no>
[PATCH] NFSv3: Fix up an unaligned access error in nfs3_proc_unlink_setup()
Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] NFS: older gcc's don't like unsized arrays
The NFS symlink code cleanup causes older gcc's to barf.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davem@nuts.davemloft.net>
[SPARC64]: Update defconfig.
<kaber@trash.net>
[NETFILTER]: Fix confusing naming in NAT-helpers
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<kaber@trash.net>
[NETFILTER]: Fix deadlock condition in conntrack/nat-helpers
There is a possible deadlock condition with conntrack/nat-helpers:
CPU1:
conntrack-helper:help: lock(private_lock)
ip_conntrack_expect_related: write_lock(ip_conntrack_lock)
CPU2:
nat-core:do_bindings: read_lock(ip_conntrack_lock)
nat-helper:help: lock(private_lock)
The lock in the nat-helper is unneccessary because the expectation
is never changed and is protected by ip_conntrack_lock.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[PKT_SCHED]: Fixed missed return in tcf_hash_init().
Noticed by Andrew Morton.
Signed-off-by: David S. Miller <davem@davemloft.net>
<laforge@netfilter.org>
[CREDITS]: Update netfilter entries.
Add missing entries for netfilter core team
members, and update Rusty's personal URL.
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<airlied@starflyer.(none)>
Remove DRIVER_CTX_[CD]TOR, HAVE_KERNEL_CTX_SWITCH, DRIVER_BUF_PRIV_T, DRIVER_AGP_BUFFERS_MAP
Signed-off-by: Dave Airlie <airlied@linux.ie>
<airlied@starflyer.(none)>
remove DRIVER_FOPS and related macros
Signed-off-by: Dave Airlie <airlied@linux.ie>
<airlied@starflyer.(none)>
Dump __HAVE_DMA_FREELIST is only used by gamma.
Signed-off-by: Dave Airlie <airlied@linux.ie>
<airlied@starflyer.(none)>
remove __HAVE_DMA_SCHEDULE was only used by gamma.
Signed-off-by: Dave Airlie <airlied@linux.ie>
<airlied@starflyer.(none)>
remove HAVE_DMA_WAITLIST as it was only used by gamma
Signed-off-by: Dave Airlie <airlied@linux.ie>
<airlied@starflyer.(none)>
remove DRM_IOREMAP* and DRM_FIND_MAP macros replace them with inline fns
Signed-off-by: Dave Airlie <airlied@linux.ie>
<herbert@gondor.apana.org.au>
[NET]: Add reference counting to neigh_parms.
I've added a refcnt on neigh_parms as well as a dead flag. The latter
is checked under the tbl_lock before adding a neigh entry to the hash
table.
The non-trivial bit of the patch is the first chunk of net/core/neighbour.c.
I removed that line because not doing so would mean that I have to drop
the reference to the parms right there. That would've lead to race
conditions since many places dereference neigh->parms without holding
locks. It's also unnecessary to reset n->parms since we're no longer
in a hurry to see it go due to the new ref counting.
You'll also notice that I've put all dereferences of dev->*_ptr under
the rcu_read_lock(). Without this we may get a neigh_parms that's
already been released.
Incidentally a lot of these places were racy even before the RCU change.
For example, in the IPv6 case neigh->parms may be set to a value that's
just been released.
Finally in order to make sure that all stale entries are purged as
quickly as possible I've added neigh_ifdown/arp_ifdown calls after
every neigh_parms_release call. In many cases we now have multiple
calls to neigh_ifdown in the shutdown path. I didn't remove the
earlier calls because there may be hidden dependencies for them to
be there. Once the respective maintainers have looked at them we
can probably remove most of them.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
<dev@sw.ru>
[PATCH] Fix do_each_task_pid() loop with 'continue' inside
Dmitry Torokhov triggered a problem in the new pidhash macros: These
do_each_task_pid()/while_each_task_pid() do loop forever if you use a
'continue' inside them.
The end of the loop has to be inside the "while()" statement, so as to
not make "continue" jump over it.
<akpm@osdl.org>
[PATCH] x86_64 waitid syscall number fix
I mucked this up.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] Fix shmem.c stubs
Fix the build with CONFIG_SHMEM=n
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tiwai@suse.de>
[PATCH] sparc ALSA fix
sound/core/pcm_native.c was assuming that all architectures implement
io_remap_page_range() in the same way. They don't, so the sparc64 build
broke.
mmap callback is added to PCM ops. The driver can implement its own mmap
method.
Also, mmapping of the status and control records is available only on known
coherent architectures now.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] add_to_swap(): suppress oom message
Page allocation failures are expected when add_to_swap() tries to allocate
radix-tree nodes without PF_MEMALLOC. Kill the __alloc_pages() warnings.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<olh@suse.de>
[PATCH] request_region for winbond and smsc parport drivers
An attempt to fix the random poking in legacy io space...
ask for permissions before poking at io ports. this affects
detect_and_report_winbond() and detect_and_report_smsc().
Its unclear what port number is returned in show_parconfig_winbond(), so
just request the region as well and free the probing region.
Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jd@rightthere.net>
[PATCH] ES7000: increase MAX_MP_BUSSES
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<johnstul@us.ibm.com>
[PATCH] fix target_cpus() for summit subarch
I've been hunting down a bug affecting IBM x440/x445 systems where the
floppy driver would get spurious interrupts and would not initialize
properly.
After digging James Cleverdon and Bill Irwin pointed out that target_cpus()
is routing the interrupts to the clustered apic broadcast mask using
destFixed deliver mode. This was causing multiple interrupts to show up,
breaking the floppy init code.
This fix simply changes the delivery mode to dest_LowestPrio and initially
routes interrupts to the first cpu to resolve this issue.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] ipr.c build fix
drivers/scsi/ipr.c: In function `ipr_worker_thread':
drivers/scsi/ipr.c:1825: wrong type argument to unary exclamation mark
drivers/scsi/ipr.c: In function `ipr_read_dump':
drivers/scsi/ipr.c:2426: wrong type argument to unary exclamation mark
Cc: James Bottomley <James.Bottomley@steeleye.com>
Cc: Brian King <brking@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<benh@kernel.crashing.org>
[PATCH] ppc[64]: increase max auxv entries
... but a better solution should probably be found, that's saved_auxv
in struct mm_struct is ... hrm... disgusting at least ;)
So the problem is that we currently do
unsigned long saved_auxv[40];
That is we assume that all archs will have an AUXV entry of no more than
2 unsigned longs and we'll have no more than 20 entries in the table.
Unfortunately, this is wrong.
PPC/PPC64 adds 5 platform entries. then we add 14 in the common code,
and then we have
if (k_platform) {
NEW_AUX_ENT(AT_PLATFORM, (elf_addr_t)(unsigned long)u_platform);
}
if (bprm->interp_flags & BINPRM_FLAGS_EXECFD) {
NEW_AUX_ENT(AT_EXECFD, (elf_addr_t) bprm->interp_data);
}
which may add a 20th entry... which means we are already out of room for
the terminating AT_NULL entry... bad bad bad.
Now I'm adding AT_SYSINFO_EHDR to ppc/ppc64 and it breaks all the time.
The quick fix is to bump the number of entries in struct mm_struct to 42,
though that's worth a big BOLD comment in binfmt_elf in case anybody adds
a new entry in there. (Patch below). I wonder if we shouldn't add a
ARCH_MAX_AUXV_ENTRIES macro to the asm-arch/elf.h though to get the max
amount of entry the arch may add to the normal count, and have the mm
struct array use that plus the number of "normal" entries...
This patch increase the max amount of auxv entries in struct mm_struct to
42 so that ppc & ppc64 don't get a chance to blow the array up.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<david@gibson.dropbear.id.au>
[PATCH] ppc64: pin the kernel stack's SLB entry
This has been given basic testing on Power4 pSeries and iSeries machines.
At present, the SLB miss handler has to check the SLB slot it is about to
use to ensure that it does not contain the SLBE for the current kernel
stack - throwing out the SLBE for the kernel stack can trigger the
"megabug": we have no SLBE for the stack, but we don't fault immediately
because we have an ERAT entry for it. The ERAT entry is then lost due to a
tlbie on another CPU during the unrecoverable section of the exception
return path.
This patch implements a different approach - with this patch SLB slot 2
always (well, nearly always) contains an SLBE for the stack. This slot is
never cast out by the normal SLB miss path. On context switch, an SLBE for
the new stack is pinned into this slot, unless the new stack is the the
bolted segment.
For iSeries we need a special workaround because there is no way of
ensuring the stack SLBE is preserved an a shared processor switch. So, we
still need to handle taking an SLB miss on the stack, in which case we must
make sure it is loaded into slot 2, rather than using the normal
round-robin.
This approach shaves a few ns off the slb miss time (on pSeries), but more
importantly makes it easier to experiment with different SLB castout
aporoaches without worrying about reinstating the megabug.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: enable DEBUG_SPINLOCK_SLEEP
DEBUG_SPINLOCK_SLEEP is useful on ppc64, so allow it to be selected.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64: test for EEH error in PCI Config-Read path
This patch adds explicit checking for EEH slot isolation events into the
PCI config space read path. The change itself would have been minor,
except that pci config reads don't have a pointer to a struct pci_dev.
Thus, I had to restructure the eeh code to accomodate this, which seems to
be a good thing anyway, making it a tad cleaner.
Signed-off-by: Linas Vepstas <linas@linas.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: print backtrace in EEH code
We should print a stack backtrace when we get EEH errors, it makes
debugging the cause of the fail easier.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<apw@shadowen.org>
[PATCH] ppc64: topdown support
Recent patches introduced a top down user process address space allocation
policy; further patches enable this for ppc64. Although these work
correctly for normal maps, the topdown algorithm does not take into account
stringent mixing constraints for small and large pages on this
architecture. These patches introduce a ppc64 specific
arch_get_unused_area_topdown() variant. The first introduces
infrastructure to allow replacement of the generic
arch_get_unused_area_topdown() and the second utilises this infrastructure.
In this patch I have followed the pattern set by the arch_get_unused_area()
using HAVE_ARCH_UNMAPPED_AREA_TOPDOWN to be consistent. However, it would
also be possible to simply have a ppc64_get_unused_area_topdown() in the
arch/ppc64/mm/mmap.c or to use weak bindings.
This patch:
Allow an architecture to override the default definition of
arch_get_unmapped_area_topdown().
Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<apw@shadowen.org>
[PATCH] ppc64 topdown support: arch-specific get_unmapped_area()
ppc64 has constraints on the mixing of small and large pages, such that
they cannot be mixed in the same 256Mb segment. This patch provides an
architecture specific arch_get_unmapped_area_topdown() which implements
these contraints.
Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<olof@austin.ibm.com>
[PATCH] ppc64: Setup fw_features before init_early calls on pSeries
To be able to use the cur_cpu_spec->firmware_features values in early
setup, the function initializing them has to be moved up to before the
early init calls.
Signed-off-by: Olof Johansson <olof@austin.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<olof@austin.ibm.com>
[PATCH] ppc64: Make use of batched IOMMU calls on pSeries LPARs
Implement the HCALLs to do more than one TCE setup or invalidation at a
time on pSeries LPAR. Previous implementation did one hypervisor call per
setup or teardown, resulting in significant overhead.
A simple test of "time dd if=/dev/sda of=/dev/null bs=128k" shows the
amount of system time go down by about 5% by using the multi-tce calls.
Signed-off-by: Olof Johansson <olof@austin.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulus@samba.org>
[PATCH] ppc64 another log buffer length fix
This patch uses the firmware-defined error log buffer length for calls to
the firmware routine 'check-exception'. It also simplifies code in rtasd.c
that is attempting to obtain the error log length.
Signed-off-by: Linas Vepstas <linas@linas.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: dynamically allocate emergency stacks
Now we set up cpu_possible_map early we can dynamically allocate the
emergency stacks. Previously we would allocate NR_CPUS * PAGE_SIZE,
potentially wasting quite a lot of memory.
Clean a comment up in irqstack_early_init and use unsigned int for cpu ids
while in the area.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: update pSeries_defconfig
Update pSeries_defconfig. This config should better cover POWER5 systems
with SPLPAR spinlocks, IPR SCSI, NR_CPUS = 128, NUMA, HVCS, and irq stacks
enabled, VSCSI and VETH as modules.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: update iSeries_defconfig
Update iSeries_defconfig.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: quieten NUMA boot messages
On some machines we would print hundreds of lines of NUMA debug output.
The following patch cleans it up so we only print a summary of cpus and
memory vs nodes:
Node 0 CPUs: 0-1
Node 1 CPUs: 16-17
Node 2 CPUs: 32-33
Node 3 CPUs: 48-49
Node 0 Memory: 0x0-0x400000000
Node 1 Memory: 0x400000000-0x800000000
I lifted the code to do this out of xmon.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: allocate NUMA node data node locally
Instead of statically allocating the NUMA node structures, do it at runtime
with node local memory where possible. With NR_CPUS=128 we had over 800kB
of memory allocated before this patch, now we allocate only as many nodes
as the machine requires.
We have to do some fancy footwork in do_init_bootmem since we use both the
LMB allocator and the bootmem allocator at the same time. The problem has
always been there although I only recently found a test case that hit it.
Wrap that logic in careful_allocation which uses the LMB allocator then
falls back to the bootmem allocator if required.
Now alloc_bootmem on a node with no memory doesnt panic, we dont need the
hack in paging_init so remove it.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: cleanup asm/processor.h
Wrap a lot more of processor.h in #ifdef __KERNEL__ / __ASSEMBLY__. Remove
now unised EXC_FRAME_SIZE.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hbabu@us.ibm.com>
[PATCH] ppc64: implement page_is_ram
This patch contains - Removes __initdata from lmb definition (struct lmb
lmb;) and modified the existing page_is_ram function.
Also changed the current argument from physical address to pfn to make it
compatible across architectures. Please review them and send me your
comments/suggestions. If you are OK with any one patch, please include it
in the mainline kernel.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ak@muc.de>
[PATCH] Add support for NUMA discovery on AMD dual core to x86-64
Following the CPUID extensions and APIC-ID setup presented by Richard
Brunner at Kernel Summit.
Without this the kernel's node discovery would assign the wrong nodes on
dual core systems and cause performance degradation.
Only handles power of two cored CPUs, others will be ignored.
/proc/cpuinfo has a new field cpu cores: <number of CPU cores> and also
show the other core as HT sibling (this is needed to make old CPU based
license managers to count one CPU package as only one physical CPU)
FIXME this currently misses the disable code for SMT idle. That's because
2.6.9rc1-bk6 removed the arch hooks need for that. Needs to be readded
later.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ak@muc.de>
[PATCH] Fix boot_cpu_data on x86-64
From: Andreas Gruenbacher
Add brackets to boot_cpu_data to fix compilation of centrino cpufreq driver.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ak@muc.de>
[PATCH] Increase bus/apic limits on x86-64
This patch increases some hardcoded limits people have already run into or
plan to go towards eventually.
Increase max MP busses on x86-64. Needed for some machines. Suggested by
Andrew Chen and James Cleverdon.
MAX_IRQ_SOURCES kept at 256 for now, matching i386.
Increase MAX_IO_APICS to 32 following i386.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ak@muc.de>
[PATCH] Fix argument checking in sched_setaffinity
This patch fixes the argument length checking in sched_setaffinity.
Previously it would error out when the length passed was smaller than
sizeof(cpumask_t). And any bits beyond cpumask_s would be silently
ignored.
First this assumes that the user application knows the size of cpumask_t,
which should be kernel internal. When you increase cpumask_t old
applications break and there is no good way for the application to find out
the cpumask_t size the kernel uses.
This patch changes it to do similar checking to the NUMA API calls:
- Any length is ok as long as all online CPUs are covered (this could
still cause application breakage with more CPUs, but there is no good way
around it)
- When the user passes more than cpumask_t bytes the excess bytes are
checked to be zero.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<dsaxena@plexity.net>
[PATCH] Add IXDP2x01 board support to CS89x0 driver
The following patch modifies the CS89x0 driver to work on Intel's IXDP2401
and IXDP2801 (Intel ARm/XScale based) platforms:
- The main change requried is that the IXDP2x01 boards have the
chip connected through a CPLD so all registers appear at
dword-aligned addresses. A macro in the header adjusts the register
offsets appropriately.
- The boards do not have ISA, so we need to explicitly check for
IXDP2X01 in Kconfig.
- There is what I believe is a bug in the driver as it currently
only asks for the signature if ioaddr & 1 is set but then
reads and checks against the expected signature even when
!(ioaddr & 1). This causes the driver to not load on the IXDP2x01
since our ioaddr does not have bit 1 set.
- #ifdef out some bits of code that assume the chip is really
sitting on an ISA bus.
The main IXDP2x01 support will be coming in through rmk's tree at
a later date when all the drivers are merged upstream.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<roland@topspin.com>
[PATCH] fix proc_symlink() warning with CONFIG_PROC_FS=n
The last parameter of proc_symlink is usually a "const char *", but the
stub in <linux/proc_fs.h> for CONFIG_PROC_FS=n omits the const and makes
its last parameter a "char *". This causes a warning about discarding
qualifiers for any code that passes something const for that last
parameter.
This patch fixes that up and also, for neatness's sake, makes the stub for
create_proc_read_entry() match the usual prototype more exactly (use
read_proc_t rather than the underlying function pointer type).
Signed-off-by: Roland Dreier <roland@topspin.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<cus@fazekas.hu>
[PATCH] urandom initialisation fix
The urandom driver returns the same thing after every boot.
The urandom pool is only cleared, and not initialized, and because there is
nothing in the primary pool, the reseeding is not successful. The solution
is also the same, initialize not just the primary and secondary, but also
the urandom pool.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<juhl-lkml@dif.dk>
[PATCH] read_ldt() neglects to check clear_user() return value
akpm: It's a bit debatable. The user passed in a buffer of a particular size,
and we successfully sopied the LDT info into it, but we got a fault when
clearing out the rest of the user's buffer. Is that worth a -EFAULT?
I suppose so...
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<juhl-lkml@dif.dk>
[PATCH] x86_64: read_ldt() clear_user() return value checking
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Cc: Andi Kleen <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hirofumi@mail.parknet.co.jp>
[PATCH] FAT: document fix/update
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hirofumi@mail.parknet.co.jp>
[PATCH] NLS: nls_cp932 fix
Some unicode chars is missing to convert on nls_cp932.
This patch fixes the following chars.
U+00A2, U+00A3, U+00A7, U+00A8, U+00AC, U+00B0, U+00B1, U+00B4,
U+00B6, U+00D7, U+00F7, U+FFE2
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: i2c cleanups
This patch has some minor cleanups for the v4l i2c modules: Don't ignore
the i2c_add_driver return value and mark the init+exit functions with
__init + __exit.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: i2c tuner modules update
This patch updates the tuner and tda9887 i2c modules which handle the tv
card tuning.
- some cleanups (don't ignore i2c_add_driver return value, add __init and
__exit).
- add support for new tuners.
- allow to pass configuration info (tv card specific stuff) to the
tda9887 module.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: bttv driver update.
This patch is a minor update for the bttv driver.
- add a few new tv cards.
- add some infrastructure needed by the dvb drivers (for bt878-based dvb
cards).
- improve croma line selection for planar video formats,
- some new debug printk's
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kraxel@bytesex.org>
[PATCH] v4l: saa7134 driver update
This is a minor update for the saa7134 driver. Changes:
- i2c cleanups (i2c_add_driver return value, add __init & __exit).
- fix radio tuning (last update broke this ...).
- adds support for new tv cards.
- add config info for the tda9887 (thus this one depends on the tuner
update patch mailed earlier).
- add configuration help printk's for some cards, for stuff which can't
be autodetected.
- make automute switchable via v4l2 API, without driver reload.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] pcxx.c build fix
CC drivers/char/pcxx.o
drivers/char/pcxx.c: In function `pcxe_cleanup':
drivers/char/pcxx.c:209: warning: unused variable `e2'
drivers/char/pcxx.c: At top level:
drivers/char/pcxx.c:229: `pcxe_init' undeclared here (not in a function)
drivers/char/pcxx.c:230: warning: type defaults to `int' in declaration of `module_cleanup'
drivers/char/pcxx.c:230: warning: parameter names (without types) in function declaration
drivers/char/pcxx.c:230: warning: data definition has no type or storage class
drivers/char/pcxx.c:1016: redefinition of `__initcall_pcxe_init'
drivers/char/pcxx.c:229: `__initcall_pcxe_init' previously defined here
drivers/char/pcxx.c:1016: `pcxe_init' undeclared here (not in a function)
drivers/char/pcxx.c:1017: `pcxe_exit' undeclared here (not in a function)
drivers/char/pcxx.c: In function `pcxe_tiocmget':
drivers/char/pcxx.c:2009: `mstat' undeclared (first use in this function)
drivers/char/pcxx.c:2009: (Each undeclared identifier is reported only once
drivers/char/pcxx.c:2009: for each function it appears in.)
drivers/char/pcxx.c: In function `pcxe_tiocmset':
drivers/char/pcxx.c:2072: warning: control reaches end of non-void function
drivers/char/pcxx.c: At top level:
drivers/char/pcxx.c:1044: warning: `pcxe_init' defined but not used
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<alan@redhat.com>
[PATCH] Root reservations for strict overcommit
This was on my TODO list for a while and it turns out someone already fixed
the armwaving overcommit mode for the same problem. It is easy to get into
a situation where you have no overcommit and nothing can be done because
there is no memory to clean up the stable but non-useful state of the
machine.
The fix is trivial and duplicated from the armwaving overcommit code path.
The last 3% of the memory can be claimed by root processes only. It isn't
a cure but it does seem to solve the real world problems - at least
providing you have enough memory for 3% to be useful 8).
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<alan@redhat.com>
[PATCH] fix the barrier IDE detection logic
This fixes the logic so we always check for the cache. It also defaults to
safer behaviour for the non cache flush case now we have the right bits in
the right places. I've also played a bit with timings - the worst case
timings I can get for the flush are about 7 seconds (which I'd expect as
the engineering worst cases will include retries)
Probably what should happen is that the barrier logic is enabled providing
the wcache is disabled. I've not meddled with this as I don't know what
the intended semantics and rules are for disabling barrier on a live disk
(eg when a user uses hdparm to turn on the write cache). In the current
code as with Jens original that cannot occur.
I've also fixed the new printk's as per a private request from Matt Domsch.
Cc: Jens Axboe <axboe@suse.de>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<luca.risolia@studio.unibo.it>
[PATCH] Disable colour conversion in the CPiA Video Camera driver
Since in-kernel colorspace conversion is not allowed, this patch disables it
in the CPiA video camera driver by default. Users should fix the applications
in case they don't work without conversion reenabled by setting the new
'colorspace_conv' module parameter to 1. This is a temporary solution, so
within a few months deprecated code will be entirely removed.
Signed-off-by: Luca Risolia <luca.risolia@studio.unibo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<wli@holomorphy.com>
[PATCH] make bad_page() print all of page->flags
bad_page() only prints out 8 hexadecimal digits of page->flags regardless
of sizeof(page_flags_t). This leads to confusing and/or incomplete bug
reports. The following patch uses a field width argument to replace the
hardcoded %08lx so that bad_page() may print the whole of page->flags.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] fix compile warning in ppc64 pmac_feature.c
dump_HT_speeds is only used by #if 0'ed code so if 0 it as well.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] fix compile warnings in via-pmu.c for !CONFIG_PMAC_PBOOK
There's some scoping problems so we get unused variables for that config.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] stop ->put_inode abuse in vxfs
->clear_inode is the right place to free private inode parts. No idea what
I though when using ->put_inode and i_count check.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] some missing statics in mm/
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] remove ptrinfo
It's defined in slab.c but not used anywhere.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] fix compile warning in rivafb on ppc
riva_get_EDID_i2c is only used on !CONFIG_PPC_OF, so don't compile it on
ppc either.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<lcapitulino@conectiva.com.br>
[PATCH] fix drivers/net/cs89x0.c warning.
drivers/net/cs89x0.c: In function `net_close':
drivers/net/cs89x0.c:1601: warning: unused variable `lp'
'lp'is only used when ALLOW_DMA is defined.
Signed-off-by: Luiz Capitulino <lcapitulino@conectiva.com.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] announce hpet devices claimed
I think the HPET driver should announce the hardware it claims. Here's
a patch that prints this:
hpet0: at MMIO 0xc0000ffffc002000, IRQs 74, 75, 76
hpet0: 4ns tick, 3 64-bit timers
hpet1: at MMIO 0xc0000ffffc082000, IRQs 77, 78, 79
hpet1: 4ns tick, 3 64-bit timers
This has been acked by Bob. I haven't heard from Venkatesh.
Print basic information (MMIO address, IRQs used, tick rate, number
of timers) when claiming an HPET device.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bjorn.helgaas@hp.com>
[PATCH] silence sn_console driver on non-SGI boxes
Acked by Jesse.
sn_console: don't print anything unless we're actually on an SGI box.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/amiserial.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/epca.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/esp.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/isicom.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/mxser.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/pcmcia/synclink_cs.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/pcxx.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/riscom8.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/rocket.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/rocket_int.h MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/selection.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/serial167.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/specialix.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/synclink.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/char/synclinkmp.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] include/linux/isicom.h MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] drivers/tc/zs.c MIN/MAX removal
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] ds1620: replace schedule_timeout() with msleep()
Uses msleep() instead of schedule_timeout() to guarantee the task delays at
least the desired time amount.
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] dsp56k: replace schedule_timeout() with msleep()
Use msleep() instead of schedule_timeout() to guarantee the task delays at
least the desired time amount.
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] ec3104: replace schedule_timeout() with msleep()
Uses msleep() instead of schedule_timeout() to guarantee the task delays at
least the desired time amount.
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] isicom: replace schedule_timeout() with msleep()
Uses msleep() instead of schedule_timeout() to guarantee the task delays at
least the desired time amount.
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] nwflash: replace schedule_timeout() with msleep()
Uses msleep() instead of schedule_timeout() to guarantee the task delays at
least the desired time amount.
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] pcwd: replace schedule_timeout() with msleep()
Replace
set_current_state(TASK_INTERRUPTIBLE);
schedule_timeout(some_time);
with
msleep(jiffies_to_msecs(some_time));
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] synclink: replace jiffies_from_ms() with msecs_to_jiffies()
Uses msecs_to_jiffies() instead of the custom jiffies_from_ms().
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] Add msleep_interruptible() function to kernel/timer.c
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jaharkes@cs.cmu.edu>
[PATCH] coda: fix ifdefs for CONFIG_CODA_FS_OLD_API
Trivial fix to make the CODA_FS_OLD_API config option actually work as
expected.
Signed-off-by: Jan Harkes <jaharkes@cs.cmu.edu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jaharkes@cs.cmu.edu>
[PATCH] coda: add sendfile wrapper
Add a wrapper for sendfile support in Coda.
Signed-off-by: Jan Harkes <jaharkes@cs.cmu.edu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<juhl-lkml@dif.dk>
[PATCH] Sort the CREDITS file properly (and add Jesper)
Many entries in the CREDITS file are not properly sorted in alphabetical
order, despite the note in the file that it is supposed to be sorted like
that.
This patch attempts to sort the CREDITS file properly. No existing entries
were changed, merely moved around in the file. There where a few tricky
names that I was unsure how to sort (names with characters such as ü, ö,
and people with many names where it was unclear to me what name to sort by
etc), in those cases I've usually left the names where they were unless it
was glaringly obvious they were in the wrong spot.
I've also taken the liberty to add my own name to the file - I have
contributed several tiny/small fixes/cleanups etc over the years.
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] cdu31a: replace schedule_timeout() with msleep()
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] mcd: replace schedule_timeout() with msleep()
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] radio/radio-maestro: replace schedule_timeout() with msleep()
Replaced sleep_125ms() with msleep(125), udelay2() with udelay(2),
udelay4() with udelay(4) and udelay16() with udelay(16) and removed the
replaced functions' definitions.
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] radio/radio-cadet: replace schedule_timeout() with msleep()
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] radio/radio-aimslab: replace while/schedule() with msleep()
Uses msleep() instead of a while-loop and schedule(). Thus the CPU is
given up for the time desired.
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] radio/miropcm20-rds: replace schedule_timeout() with msleep()
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] radio/radio-maxiradio: replace schedule_timeout() with msleep()
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] saa7146_i2c.c: use msleep()
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] radio/radio-sf16fmi: replace schedule_timeout() with msleep()
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] radio/radio-sf16fmr2: replace schedule_timeout() with msleep()
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] message/mptscsih: replace schedule_timeout() with msleep()
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] message/i2o_core: replace schedule_timeout() with msleep()
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] mtd/cfi_cmdset_0001: replace schedule_timeout() with msleep()
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<janitor@sternwelten.at>
[PATCH] update parport MAINTAINERS entry
Add correct email for parport entry in MAINTAINERS.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<arjanv@redhat.com>
[PATCH] make hugetlb expansion allocation nowarn
a user can do echo 32000 > /proc/sys/vm/nr_hugepapges; at which point most
boxes will get spew about allocation failure. This of course isn't a real
bug so the patch below quiets that.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] Fix warning in pc300_tty driver.
..caused by my last patch to this file.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ornati@fastwebnet.it>
[PATCH] tdfxfb linkage fix v2.0 (the previous one is broken)
This patch _really_ fixes tdfxfb linkage
<wli@holomorphy.com>
[PATCH] fix sched_domains hotplug bootstrap ordering vs. cpu_online_map issue
cpu_online_map is not set up at the time of sched domain initialization
when hotplug cpu paths are used for SMP booting.
At this phase of bootstrapping, cpu_possible_map can be used by the
various architectures using cpu hotplugging for SMP bootstrap, but the
manipulations of cpu_online_map done on behalf of NUMA architectures,
done indirectly via node_to_cpumask(), can't, because cpu_online_map
starts depopulated and hasn't yet been populated.
On true NUMA architectures this is a distinct cpumask_t from
cpu_online_map and so the unpatched code works on NUMA; on non-NUMA
architectures the definition of node_to_cpumask() this way breaks and
would require an invasive sweeping of users of node_to_cpumask() to
change it to e.g. cpu_possible_map, as cpu_possible_map is not suitable
for use at runtime as a substitute for cpu_online_map.
Signed-off-by: William Irwin <wli@holomorphy.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] 3c527 possible oops.
If the alloc_skb() fails, we dereference it in the skb_reserve() call.
Move the skb_reserve() call to after the NULL check.
Also clean up some CodingStyle violations whilst in the vicinity.
Signed-off-by: Dave Jones <davej@redhat.com>
<davej@redhat.com>
[PATCH] wavelan uninitalised var.
This seems a little odd, printing out the value of a variable
we haven't read yet.
Signed-off-by: Dave Jones <davej@redhat.com>
<akpm@osdl.org>
[PATCH] airo build fix
drivers/net/wireless/airo.c: In function `issuecommand':
drivers/net/wireless/airo.c:3812: warning: implicit declaration of function `kernel_locked'
*** Warning: "kernel_locked" [drivers/net/wireless/airo.ko] undefined!
Signed-off-by: Andrew Morton <akpm@osdl.org>
<manfred@colorfullife.com>
[PATCH] fix media detection for nForce 2 nics
attached is a patch that polls the media setting for non GigE nForce
nics:
Without polling, media changes are not autodetected. This is fatal,
because the nic initialization is asynchroneous, thus "modprobe;ifup"
resulted in a dead network connection. The attached patch fixes that
problem.
It's a repost of a patch I sent around three weeks ago: you objected
that I rely on the nic irq instead of a software timer. I've documented
why this is ok.
<torvalds@ppc970.osdl.org>
Remove extra tests from get_user_cpu_mask().
They aren't internally consistent.
<Andries.Brouwer@cwi.nl>
[PATCH] fat: add static
In the long sequence of static additions, here some fat ones.
<zwane@linuxpower.ca>
[PATCH] out-of-line locks / generic
This patch achieves out of line spinlocks by creating kernel/spinlock.c
and using the _raw_* inline locking functions.
Now, as much as this is supposed to be arch agnostic, there was still a
fair amount of rummaging about in archs, mostly for the cases where the
arch already has out of line locks and i wanted to avoid the extra call,
saving that extra call also makes lock profiling easier. PPC32/64 was
an example of such an arch and i have added the necessary profile_pc()
function as an example.
Size differences are with CONFIG_PREEMPT enabled since we wanted to
determine how much could be saved by moving that lot out of line too.
ppc64 = 259897 bytes:
text data bss dec hex filename
5489808 1962724 709064 8161596 7c893c vmlinux-after
5749577 1962852 709064 8421493 808075 vmlinux-before
sparc64 = 193368 bytes:
text data bss dec hex filename
3472037 633712 308920 4414669 435ccd vmlinux-after
3665285 633832 308920 4608037 465025 vmlinux-before
i386 = 416075 bytes
text data bss dec hex filename
5808371 867442 326864 7002677 6ada35 vmlinux-after
6221254 870634 326864 7418752 713380 vmlinux-before
x86-64 = 282446 bytes
text data bss dec hex filename
4598025 1450644 523632 6572301 64490d vmlinux-after
4881679 1449436 523632 6854747 68985b vmlinux-before
It has been compile tested (UP, SMP, PREEMPT) on i386, x86-64, sparc,
sparc64, ppc64, ppc32 and runtime tested on i386, x86-64 and sparc64.
Signed-off-by: Zwane Mwaikambo <zwane@fsmlabs.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<zwane@linuxpower.ca>
[PATCH] out-of-line locks / arm
Signed-off-by: Zwane Mwaikambo <zwane@fsmlabs.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<zwane@linuxpower.ca>
[PATCH] out-of-line locks / i386
Signed-off-by: Zwane Mwaikambo <zwane@fsmlabs.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<zwane@linuxpower.ca>
[PATCH] out-of-line locks / x86_64
Signed-off-by: Zwane Mwaikambo <zwane@fsmlabs.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<zwane@linuxpower.ca>
[PATCH] out-of-line locks / ppc32
Signed-off-by: Zwane Mwaikambo <zwane@fsmlabs.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<zwane@linuxpower.ca>
[PATCH] out-of-line locks / ppc64
Signed-off-by: Zwane Mwaikambo <zwane@fsmlabs.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<zwane@linuxpower.ca>
[PATCH] out-of-line locks / sparc64
Signed-off-by: Zwane Mwaikambo <zwane@fsmlabs.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<zwane@linuxpower.ca>
[PATCH] out-of-line locks / other
Signed-off-by: Zwane Mwaikambo <zwane@fsmlabs.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<airlied@starflyer.(none)>
Remove __HAVE_AGP and __HAVE_MTRR, add driver features bitmask,
Cleaned up a lot of #ifdef in functions using suggestions from Arjan.
Signed-off-by: Dave Airlie <airlied@linux.ie>
<torvalds@ppc970.osdl.org>
ppc64: move C declaration in ptrace.h into "ifndef __ASSEMBLY__"
The assembler gets quite confused otherwise.
<airlied@starflyer.(none)>
Drop __HAVE_CTX_BITMAP, __HAVE_SG, __HAVE_PCI_DMA, these are
fairly straightforward removals..
Signed-off-by: Dave Airlie <airlied@linux.ie>
<airlied@starflyer.(none)>
remove DRIVER_FILE_FIELDS, replace with a private driver structure
allocated in open helper and freed in free_filp_priv.
Signed-off-by: Dave Airlie <airlied@linux.ie>
<viro@www.linux.org.uk>
[PATCH] adfs endianness fixes
Thus starts the series of endianness problems found by sparse tricks..
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] ext2 endianness fixes
Several places printk a little-endian number without any conversions.
Ones in super.c are particulary unpleasant - there we are getting told that
fs couldn't be mounted because of the following set of incompat features
and it would be nice to have the printed number matching what one could
find in headers...
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] msdos and vfat endianness fixes
Some callers of fat_date_unix2dos() (in msdos/namei.c and vfat/namei.c)
forgot to convert returned host-endian date and time to little-endian.
Since all callers want to get little-endian values, moved the conversion
into function itself.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] acorn partitions endianness fixes
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] UDF endianness fixes
Lots of crap. It looks like the thing had never been really tested on
big-endian boxen... Aside of usual "forgot to convert" bugs there's a cute
one - foo->le16field = cpu_to_le32(bar) does not work on big-endian...
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@www.linux.org.uk>
[PATCH] quota minor endianness fixes
missing le32_to_cpu() in printk
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<david-b@net.rmk.(none)>
[ARM PATCH] 2060/1: make /proc/cpuinfo report missing EDSP and Java support
Patch from David Brownell
This makes /proc/cpuinfo more accurate on many ARM processors, so that
for example ARMv5TEJ processors always show they have Thumb (T),
EDSP (E), and Java (J) capability.
<ben-linux@org.rmk.(none)>
[ARM PATCH] 2062/2: Initial support for s3c2440 cpus
Patch from Ben Dooks
Resend of Patch 2062/1 with the commenbts from rmk
applied, so that CPU_S3C2410 / CPU_S3C2440 are
automatically selected without user intervention
Signed-off-by: Ben Dooks
<ben-linux@org.rmk.(none)>
[ARM PATCH] 2063/1: BAST - CPLD register updates
Patch from Ben Dooks
Added CTRL2,CTLR3 and CTRL4 definitions to bast-cpld.h
Signed-off-by: Ben Dooks
<bo.henriksen@com.rmk.(none)>
[ARM PATCH] 2065/1: LH7A40X UDC ARCH changes
Patch from Bo Henriksen
This patch is part of the UDC driver for the lh7a40x sdk.
Please submit this patch for 2.6.9, otherwise the UDC driver will not work.
<elf@com.rmk.(none)>
[ARM PATCH] 2072/1: lh7a40x Timer device change
Patch from Marc Singer
This patch changes the system jiffies timer to use TIMER2 so that a
given platform can use TIMER1 to drive the buzzer. Note that only
TIMER1 can be used to drive a buzzer.
Signed-off-by: Marc Singer
<ben-linux@org.rmk.(none)>
[ARM PATCH] 2074/1: S3C2410 - fix reboot by watchdog
Patch from Ben Dooks
Fix erroneously removed IO region which causes the reboot
by watchdog to fail to reboot with an OOPS.
Thanks to Herber Potzl for finding this.
Signed-off-by: Ben Dooks
<ben-linux@org.rmk.(none)>
[ARM PATCH] 2028/1: S3C2410 - SDIO/MMC register definitions
Patch from Ben Dooks
Definitions for the SDIO/MMC controller on the S3C2410
<ben-linux@org.rmk.(none)>
[ARM PATCH] 2029/1: S3C2410 - nand controller register definitions
Patch from Ben Dooks
NAND flash controller register definitions
<drzeus-list@drzeus.cx>
[PATCH] x86-64: split timer resources
This splits timer resource from 0x40-0x5f to 0x40-0x43, 0x50-053 for
x86_64. A patch doing this for i386 was released earlier. Forgot that
we have two x86 platforms.
<ben-linux@org.rmk.(none)>
[ARM PATCH] 2058/2: S3C2410 - Add PWM devices, update ID on existing devices
Patch from Ben Dooks
Add PWM timers 0 through 3
Update ID on single devices to -1
Signed-off-by: Ben Dooks
<khc@pm.waw.pl>
[PATCH] fix for integer overflow in hd6457[02] driver code
The attached patch fixes an integer overflow in drivers for N2, C101,
PCI200SYN WAN cards (brv * port->settings.clock_rate overflowed at
requested clock rate of 8*1024*1024 bps, problem noted by Nagaraj Kanniah).
<dave.jiang@com.rmk.(none)>
[ARM PATCH] 2033/1: IOP3xx patch submission (1/6)
Patch from Dave Jiang
This patch depends on the applied patches of 1963/1 2017/1
This is the arch/arm/boot directory
As to address RMK's previous questions in head-xscale.S, all that
are workarounds for improper things coming from redboot. Currently
the distribution redboot for IOP does not pass in correct MACH ID
or setup the memory map correctly after exec (according to
Deepak). So we have to fix it. I'm working on pushing the IOP
redboot developer to fix those things at a later date.
<margitsw@t-online.de>
[PATCH] prism54 Bug - Fix frequency reporting
* prism54_get_freq is incorrectly returning channel
* and not frequency. Wireless tools detect this, but
* other programs do not, leading to insane reported
* values. (As Jean documents, drivers should really be
* reporting the frequency).
* An example is wavemon.
<dave.jiang@com.rmk.(none)>
[ARM PATCH] 2034/1: 2033/2 - IOP3xx patch submission (2/6)
Patch from Dave Jiang
arch/arm/configs
updates for defconfigs for all IOP platforms
<dave.jiang@com.rmk.(none)>
[ARM PATCH] 2035/1: 2033/3 - IOP3xx patch submission (3/6)
Patch from Dave Jiang
arch/arm/kernel changes
<dave.jiang@com.rmk.(none)>
[ARM PATCH] 2048/1: Patch 2036/1 (2033/4) resubmission
Patch from Dave Jiang
arch/arm/mach-iop3xx update
Removed busy while loop and replaced with mdelay() from patch 2036/1
<dave.jiang@com.rmk.(none)>
[ARM PATCH] 2049/1: 2037/1 (2033/5) resubmission
Patch from Dave Jiang
arch/arm/mm
Removed offending #ifdefs for MACH names. Grouped into different IOP families.
<dave.jiang@com.rmk.(none)>
[ARM PATCH] 2039/1: 2033/6 resubmission
Patch from Dave Jiang
Rewrite if uncompress.h to use the proper machine_is_X function call.
<bgerst@quark.didntduck.org>
kbuild: use KERNELRELEASE
This patch changes several places where the kernel version string is put
together from it's components with $KERNELRELEASE.
From: Brian Gerst <bgerst@quark.didntduck.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<ianw@gelato.unsw.edu.au>
kbuild: Support LOCALVERSION
Add LOCALVERSION so we can append strings that show up in uname
without having to fiddle with the Makefile and EXTRAVERSION, etc.
* localversion* files are read first
* config variable is appended last
* LOCALVERSION from the command line overrides all of this
* check is forced on build, since we can't really know when
the config or environment options change.
Signed-off-by: Ian Wienand <ianw@gelato.unsw.edu.au>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<sam@mars.ravnborg.org>
kbuild: Simplify generating vmlinux
Generating vmlinux in top-level Makefile were getting a bit messy after kallsyms
support were added. Also the full link of all the .o files were duplicaed a number of times.
This patch does the following:
- Introduce built-in.o which is a prelink of most .o files
- Make the build process a bit more verbose telling when linking .tmpvmlinux*
- Use less magic when determing when to generate a new version
- Allow architectures to override the defineition of cmd_vmlinux__
- Add more comments to the MAkefile and clean up soem other comments
- Display more commends during V=1 builds
The resulting kernel boots and rn here.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<elenstev@mesatop.com>
scripts: Update ver_linux for recent reiserfsprogs
The ver_linux script is fixed to report recent versions of
reiserfsprogs. (Older versions had "reiserfsprogs" in the
line containing the version number, while recent versions
report "reiserfsck" followed by version number).
The ver_linux script is updated to report the reiser4progs
version number.
This was tested with reiserfsprogs 3.6.11, 3.6.18 and
reiser4progs 1.0.0.
Signed-off-by: Steven Cole <elenstev@mesatop.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<ben-linux@org.rmk.(none)>
[ARM PATCH] 2076/1: S3C2410 - s3c2440 support and machine updates
Patch from Ben Dooks
Include the central code for detecting the cpu in use,
and initialising it's IO. Updated all mach-XXX.c files to
use this new init.
Added the first stage of the new serial port code by
calling s3c2410_init_uarts() instead of just setting
a variable.
Updates mach-h1940.c to prefix with h1940_ instead of ipaq_
Small fixes for redundant code
Signed-off-by: Ben Dooks
<tes@sgi.com>
[XFS] Fix up header length miscalculation affecting version 1 logs.
SGI Modid: xfs-linux:xfs-kern:178055a
Signed-off-by: Nathan Scott <nathans@sgi.com>
<hch@sgi.com>
[XFS] Remove a readahead page allocation failure warning, this will
happen under normal workloads and does not indicate a problem.
<hch@sgi.com>
[XFS] Fix use of AIO wait_on_sync_kiocb and a deadlock in O_SYNC
inode semaphore handling.
<rth@kanga.twiddle.home>
[ALPHA] Fix raising of ieee exceptions from userland software.
<zwane@linuxpower.ca>
[PATCH] Correct ELF section used for out of line spinlocks
Anton Blanchard noted that vmlinux.lds is using .lock.text but
__lockfunc was using .spinlock.text.
Make them consistent.
Signed-off-by: Zwane Mwaikambo <zwane@linuxpower.ca>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<airlied@starflyer.(none)>
drm: remove __HAVE_DMA/IRQ and mapping offset macros
Remove __HAVE_DMA and __HAVE_IRQ and associated macros.
Also remove GET_MAP related macros...
Signed-off-by: Dave Airlie <airlied@linux.ie>
<airlied@starflyer.(none)>
drm: Sparc64 ffb compile fixes
Fixup ffb driver and interfaces it uses, also avoid bus_to_virt
on sparc, I'll look into using the proper APIs for the DRM soon.
Signed-off-by: Dave Airlie <airlied@linux.ie>
<sam@mars.ravnborg.org>
kbuild: Enable compile after localversion change
Last minute change to localversion patch were faulty.
filechk needs a valid '$^' file. In this case unused but make sure to supply one.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<rmk@flint.arm.linux.org.uk>
[MMC] MMC_RSP_xxx combined response types.
Create a set of MMC_RSP_xxx definitions which correspond to the
response type we expect at a high level. These are created from
a set of flags; a MMC host driver can either interpret the flags
as the high level response type, or the low level individual
flags.
<sam@mars.ravnborg.org>
kbuild: Drop use of built-in.o in top level makefile
built-in.o were introduced in top-level Makefile to saves us from
linking the same .o files several times when kallsyms were enabled.
Unfortunately this caused a hard lock-up on x86_64 - so this patch drops
built-in.o again. Please note is was working on i386.
This patch also fixes some wording/spellings noticed by: Horst von Brand <vonbrand@inf.utfsm.cl>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<airlied@starflyer.(none)>
drm: remove virt_to_bus
remove virt_to_bus completely.. will fix up drm to use proper
interfaces instead later..
Signed-off-by: Dave Airlie <airlied@linux.ie>
<torvalds@x86-64.osdl.org>
x86-64: tell sparse we're a 64-bit platform.
Otherwise sparse will complain about constants
that don't fit in "long" etc.
<anton@samba.org>
[PATCH] ppc64: Fix POWER5/JS20 SMP init
My recent change to dynamically allocate emergency stacks broke JS20
blades and POWER5. Since we use the emergency stacks in real mode during
secondary CPU bringup they must be below the RMO.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<rmk@flint.arm.linux.org.uk>
[ARM] Move flush_dcache_page
Move flush_dcache_page into flush.c - it shouldn't be in the middle
of the VIVT mmap alias coherency code.
<rmk@flint.arm.linux.org.uk>
[ARM] Optimise __flush_dcache_page calls.
<rmk@flint.arm.linux.org.uk>
[ARM] Add cache_is_xxxx() functions for cache type identification.
Add cache_is_xxxx() functions so we can easily identify the cache
type of the CPU we're running on.
<rmk@flint.arm.linux.org.uk>
[ARM] Fix copy/clear user page functions for VIPT aliasing caches.
This fixes the copy and clear user page functions for ARMv6 aliasing
caches. When we copy data into a page destined for user space, we
must make sure that there are no dirty cache lines associated with
the kernel space mapping of this page.
<rmk@flint.arm.linux.org.uk>
[ARM] Fix/Optimise flush_dcache_page() for VIPT aliasing caches.
Fix flush_dcache_page() for ARMv6 VIPT aliasing caches, and ignore
it for non-aliasing caches.
<rmk@flint.arm.linux.org.uk>
[ARM] Add flush_cache_user_page() for sys_cacheflush()
Add flush_cache_user_page() to handle sys_cacheflush. Userspace
wants to use this call to ensure I/D cache coherency for runtime-
built code (eg, used by Java etc). This does not fit well with
the purpose of flush_cache_range(), so provide
flush_cache_user_range() instead.
<davem@nuts.davemloft.net>
[SPARC64]: Fix spinlock macros.
This undoes bugs introduced by the generic
out-of-line spinlock patches.
Signed-off-by: David S. Miller <davem@davemloft.net>
<nico@org.rmk.(none)>
[ARM PATCH] 2052/2: extra IRQ handling for PXA27x
Patch from Nicolas Pitre
Signed-off-by: Nicolas Pitre
<nico@org.rmk.(none)>
[ARM PATCH] 2053/2: more atomic ops factorization
Patch from Nicolas Pitre
Reduce code duplication. Resulting assembly is identical.
Signed-off-by: Nicolas Pitre
<davem@nuts.davemloft.net>
[TCP]: Make TSO play nice with congestion window.
Previously TSO would not abide by the congestion
window properly. Essentially, each TSO packet would
be trated just like 1 normal packet, even though a TSO
packet generates more than 1 normal packet. This
violates congestion window rules entirely.
So now we record the TSO factor, a count of how many
real packets a TSO packet will generate, and include
this in all the packet counting routines.
This initial version has a bug in that skb_entail() is
not the correct time to figure out the TSO factor for
the SKB, and tp->mss_tso_factor is not necessarily the
right value for a given SKB. Will fix this up next.
Signed-off-by: David S. Miller <davem@davemloft.net>
<nico@org.rmk.(none)>
[ARM PATCH] 2064/2: fix some gcc-3.4 warnings
Patch from Nicolas Pitre
warning: use of conditional expressions as lvalues is deprecated
Signed-off-by: Nicolas Pitre
<nico@org.rmk.(none)>
[ARM PATCH] 2068/2: fix more gcc-3.4.1 warnings
Patch from Nicolas Pitre
This patch removes a bunch of inline functions from unistd.h on ARM. Some of
them were conflicting with gcc's idea of how they should normally be declared,
and none of them are used anymore.
Signed-off-by: Nicolas Pitre
<nico@org.rmk.(none)>
[ARM PATCH] 2069/2: fix compile error with newer gcc
Patch from Nicolas Pitre
At least with gcc-3.4.1...
Error: use of old and new-style options to set FPU type
Signed-off-by: Nicolas Pitre
<davem@nuts.davemloft.net>
[TCP]: Calculate SKB tso factor more accurately.
Eliminate tp->mss_tso_factor. Instead, we calculate the
SKB tso factor as we walk the write queue for initial
transmit or fragment SKBs.
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[TCP]: Make sure SKB tso factor is setup early enough.
It needs to be set so that congestion window
calculations have a valid value to work with.
This means that doing it at write queue running
time is too late.
Signed-off-by: David S. Miller <davem@davemloft.net>
<rmk@flint.arm.linux.org.uk>
[ARM] Don't include asm/arch/param.h for non-kernel build uses.
<rmk@flint.arm.linux.org.uk>
[ARM] Eliminate ARM private __KERNEL_HZ.
<ak@muc.de>
[NET]: Fix CONFIG_COMPAT build with networking disabled.
Signed-off-by: David S. Miller <davem@davemloft.net>
<eric.lemoine@gmail.com>
[SUNGEM]: Add NAPI support.
Signed-off-by: David S. Miller <davem@davemloft.net>
<davej@redhat.com>
[AX25]: Fix digipeat leak.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davej@redhat.com>
[PACKET]: Fix deref before NULL check in packet_release()
Using the automated source checker at coverity.com, they picked up
on some code in packet_release() where a NULL check was done
after dereferencing. Patch below.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
<herbert@gondor.apana.org.au>
[NET]: Fully plug netigh_create/inetdev_destroy race.
So here is a patch to make sure that there is a barrier between the
reading of dev->*_ptr and *dev->neigh_parms.
With these barriers in place, it's clear that *dev->neigh_parms can no
longer be NULL since once the parms are allocated, that pointer is never
reset to NULL again. Therefore I've also removed the parms check in
these paths.
They were bogus to begin with since if they ever triggered then we'll
have dead neigh entries stuck in the hash table.
Unfortunately I couldn't arrange for this to happen with DECnet due
to the dn_db->parms.up() call that's sandwiched between the assignment
of dev->dn_ptr and dn_db->neigh_parms. So I've kept the parms check
there but it will now fail instead of continuing. I've also added an
smp_wmb() there so that at least we won't be reading garbage from
dn_db->neigh_parms.
DECnet is also buggy since there is no locking at all in the destruction
path. It either needs locking or RCU like IPv4.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
<ak@suse.de>
[NET]: Do less atomic count changes in dev_queue_xmit.
With suggestions from Herbert Xu
Signed-off-by: David S. Miller <davem@davemloft.net>
<acme@conectiva.com.br>
[NET]: Move SOCK_foo types into linux/net.h
Every arch defines them the same without exception
and with this we only need to update one spot when
adding new socket types.
Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
Signed-off-by: David S. Miller <davem@davemloft.net>
<hadi@znyx.com>
[PKT_SCHED]: Fix gact compile warnings.
Signed-off-by: David S. Miller <davem@davemloft.net>
<wensong@linux-vs.org>
[IPVS] fixed to call nf_reset() to reset netfilter related fields
Recommended by Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<wensong@linux-vs.org>
[IPVS] add the MAINTAINERS entry
Signed-off-by: David S. Miller <davem@davemloft.net>
<shemminger@osdl.org>
[BRIDGE]: deadlock on device removal
Fixes: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=131569
Dead lock in bridge when removing device interface module. br_del_if
assumes br->lock not held.
This fixes case of:
brctl addbr b0
brctl addif b0 eth0
rmmod eth0
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<dwmw2@infradead.org>
[NET]: Fix compat layer setsockopt overzealous conversions.
compat_sys_setsockopt() is a little overzealous about converting 32-bit
stuff into 64-bit. It should match on level _and_ optname, not just
optname. Currently it eats the IPV6_V6ONLY sockopt because its value
(26) happens to match SO_ATTACH_FILTER.
This makes it at least check 'level' for everything but
IPT_SO_SET_REPLACE == IPT6_SO_SET_REPLACE, because that does seem to be
the same in different levels. But do_netfilter_replace() is another can
of worms entirely -- it doesn't actually work either, because some
netfilter modules (like ipt_limit) include kernel-only bits which change
size in the structure they share with userspace.
Signed-off-by: David S. Miller <davem@davemloft.net>
<hch@lst.de>
[IPV4]: Mark inet_family_ops static
Signed-off-by: David S. Miller <davem@davemloft.net>
<hch@lst.de>
[NET]: Unexport {alloc,free}_divert_blk()
these are called by dev.c for every device (and nowhere else)
Signed-off-by: David S. Miller <davem@davemloft.net>
<rusty@rustcorp.com.au>
[NETFILTER]: Fix build error with CONFIG_SYSCTL disabled.
ip_ct_log_invalid was added without testing that it compiles without
CONFIG_SYSCTL. Since sysctl is the only way of turning it on, there
should be no references to it if \!CONFIG_SYSCTL. Also, that turns off
CONFIG_PROC_FS, which elicits more warnings. Squish them too.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
<sam@mars.ravnborg.org>
kbuild: fix make -j N build
Make did say:
make[1]: warning: jobserver unavailable: using -j1.
Added '+' flag in relevant places to supress this warning.
Also removed some trailing tabs in same area spotted by Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<pozsy@uhulinux.hu>
[PKT_SCHED]: Add missing MODULE_LICENSE.
Signed-off-by: Pozsar Balazs <pozsy@uhulinux.hu>
Signed-off-by: David S. Miller <davem@davemloft.net>
<peter@pantasys.com>
[IPCONFIG]: Verify DHCPACK packets.
Signed-off-by: Peter Buckingham <peter@pantasys.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
<tkooda-patch-kernel@devsec.org>
[CRYPTO]: xtea_encrypt() should use XTEA_DELTA instead of TEA_DELTA.
Signed-off-by: Thor Kooda <tkooda-patch-kernel@devsec.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<pj@sgi.com>
[PATCH] SN2 build fix CONFIG_VIRTUAL_MEM_MAP and CONFIG_DISCONTIGMEM
The change on 2004-09-03 by ianw@gelato.unsw.edu.au appears to have
a typo, which causes builds of configurations which define both
CONFIG_VIRTUAL_MEM_MAP and CONFIG_DISCONTIGMEM to emit some 890
warnings for redefines of each of pfn_valid, page_to_pfn,
pfn_to_page.
This shows up compiling sn2_defconfig, the SN2 config of arch ia64. I
believe that this is a simply typo, an extra "#else" line. Removing
this exta line enables sn2_defconfig to build as before.
Acked by Jesse Barnes <jbarnes@engr.sgi.com>
Signed-off-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<olh@suse.de>
ppc: remove tmpfile for ppc binutils check
make distclean does not remove the new tmp file .tmp_gas_check.
Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<airlied@starflyer.(none)>
We dereference dev->priv a few lines above, meaning we'd
oops before we got to this sanity check. As it hasn't
triggered in any bug reports I've been able to find, I think
it's safe to nuke it.
Signed-off-by: Dave Jones <davej@redhat.com>
<airlied@starflyer.(none)>
drm: correct i915 packet length calculations
Correct a couple of packet length calculations.
From: Keith Whitwell
Signed-off-by: Dave Airlie <airlied@linux.ie>
<airlied@starflyer.(none)>
Missing ctx_count decrement when releasing driver.
From: Erdi Chen
Signed-off-by: Dave Airlie <airlied@linux.ie>
<airlied@starflyer.(none)>
drm: update Kconfig for r128/radeon
ATI Rage 128 and Radeon DRM unconditionally depend on PCI
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
<jaharkes@cs.cmu.edu>
[PATCH] Coda - fix sparse warnings
I reused the coda_file_read wrapper for sendfile and accidentally left
the __user tag on the buffer. This patch should fix the sparse warnings.
Signed-off-by: Jan Harkes <jaharkes@cs.cmu.edu>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<geert@linux-m68k.org>
[PATCH] Convert in-kernel users of EXPORT_SYMBOL_NOVERS() to EXPORT_SYMBOL()
Convert all in-kernel users of the deprecated EXPORT_SYMBOL_NOVERS() to
EXPORT_SYMBOL().
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akropel1@rochester.rr.com>
[PATCH] input: Fix hiddev disconnect-while-in-use oops
hid-core calls hiddev_disconnect() when the underlying device goes away
(hot unplug or system shutdown). Normally, hiddev_disconnect() will clean
up nicely and return to hid-core who then frees the hid structure.
However, if the corresponding hiddev node is open at disconnect time,
hiddev delays the majority of disconnect work until the device is closed
via hiddev_release(). hiddev_release() calls hiddev_cleanup() which
proceeds to dereference the hid struct which hid-core freed back when the
hardware was disconnected. Oops.
To solve this, we change hiddev_disconnect() to deregister the hiddev minor
and invalidate its table entry immediately and delay only the freeing of
the hiddev structure itself. We're protected against future operations on
the fd since the major fops check hiddev->exists.
Signed-off-by: Adam Kropelin <akropel1@rochester.rr.com>
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akropel1@rochester.rr.com>
[PATCH] input: Eliminate hiddev.h dependency on hid.h
hiddev.h needs hid.h but doesn't include it. Since hid.h is private anyway
just eliminate the need for it it in the first place.
Signed-off-by: Adam Kropelin <akropel1@rochester.rr.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<clameter@sgi.com>
[PATCH] Time interpolator: Scalability enhancements and high resolution time for IA64
This has been in the ia64 (and hence -mm) trees for a couple of months.
Changelog:
* Affects only architectures which define CONFIG_TIME_INTERPOLATION
(currently only IA64)
* Genericize time interpolation, make time interpolators easily usable
and provide instructions on how to use the interpolator for other
architectures.
* Provide nanosecond resolution for clock_gettime and an accuracy
up to the time interpolator time base.
* clock_getres() reports resolution of underlying time basis which
is typically <50ns and may be 1ns on some systems.
* Make time interpolator self-tuning to limit time jumps
and to make the interpolators work correctly on systems with
broken time base specifications.
* SMP scalability: Make clock_gettime and gettimeofday scale O(1)
by removing the cmpxchg for most clocks (tested for up to 512 CPUs)
* IA64: provide asm fastcall that doubles the performance
of gettimeofday and clock_gettime on SGI and other IA64 systems
(asm fastcalls scale O(1) together with the scalability fixes).
* IA64: provide nojitter kernel option so that IA64 systems with
correctly synchronized ITC counters may also enjoy the
scalability enhancements.
Performance measurements for single calls (ITC cycles):
A. 4 way Intel IA64 SMP system (kmart)
ITC offsets:
kmart:/usr/src/noship-tests # dmesg|grep synchr
CPU 1: synchronized ITC with CPU 0 (last diff 1 cycles, maxerr 417 cycles)
CPU 2: synchronized ITC with CPU 0 (last diff 2 cycles, maxerr 417 cycles)
CPU 3: synchronized ITC with CPU 0 (last diff 1 cycles, maxerr 417 cycles)
A.1. Current kernel code
kmart:/usr/src/noship-tests # ./dmt
gettimeofday cycles: 3737 220 215 215 215 215 215 215 215 215
clock_gettime(REAL) cycles: 4058 575 564 576 565 566 558 558 558 558
clock_gettime(MONO) cycles: 1583 621 609 609 609 609 609 609 609 609
clock_gettime(PROCESS) cycles: 71428 298 259 259 259 259 259 259 259 259
clock_gettime(THREAD) cycles: 3982 336 290 298 298 298 298 286 286 286
A.2 New code using cmpxchg
kmart:/usr/src/noship-tests # ./dmt
gettimeofday cycles: 3145 213 216 213 213 213 213 213 213 213
clock_gettime(REAL) cycles: 3185 230 210 210 210 210 210 210 210 210
clock_gettime(MONO) cycles: 284 217 217 216 216 216 216 216 216 216
clock_gettime(PROCESS) cycles: 68857 289 270 259 259 259 259 259 259 259
clock_gettime(THREAD) cycles: 3862 339 298 298 298 298 290 286 286 286
A.3 New code with cmpxchg switched off (nojitter kernel option)
kmart:/usr/src/noship-tests # ./dmt
gettimeofday cycles: 3195 219 219 212 212 212 212 212 212 212
clock_gettime(REAL) cycles: 3003 228 205 205 205 205 205 205 205 205
clock_gettime(MONO) cycles: 279 209 209 209 208 208 208 208 208 208
clock_gettime(PROCESS) cycles: 65849 292 259 259 268 270 270 259 259 259
B. SGI SN2 system running 512 IA64 CPUs.
B.1. Current kernel code
[root@ascender noship-tests]# ./dmt
gettimeofday cycles: 17221 1028 1007 1004 1004 1004 1010 25928 1002 1003
clock_gettime(REAL) cycles: 10388 1099 1055 1044 1064 1063 1051 1056 1061 1056
clock_gettime(MONO) cycles: 2363 96 96 96 96 96 96 96 96 96
clock_gettime(PROCESS) cycles: 46537 804 660 666 666 666 666 666 666 666
clock_gettime(THREAD) cycles: 10945 727 710 684 685 686 685 686 685 686
B.2 New code
ascender:~/noship-tests # ./dmt
gettimeofday cycles: 3874 610 588 588 588 588 588 588 588 588
clock_gettime(REAL) cycles: 3893 612 588 582 588 588 588 588 588 588
clock_gettime(MONO) cycles: 686 595 595 588 588 588 588 588 588 588
clock_gettime(PROCESS) cycles: 290759 322 269 269 259 265 265 265 259 259
clock_gettime(THREAD) cycles: 5153 358 306 298 296 304 290 298 298 298
Scalability of time functions (in time it takes to do a million calls):
=======================================================================
A. 4 way Intel IA SMP system (kmart)
A.1 Current code
kmart:/usr/src/noship-tests # ./todscale -n1000000
CPUS WALL WALL/CPUS
1 0.192 0.192
2 1.125 0.563
4 9.229 2.307
A.2 New code using cmpxchg
kmart:/usr/src/noship-tests # ./todscale
CPUS WALL WALL/CPUS
1 0.188 0.188
2 0.457 0.229
4 0.413 0.103
(the measurement with 4 cpus may fluctuate up to 15.x somehow)
A.3 New code without cmpxchg (nojitter kernel option)
kmart:/usr/src/noship-tests # ./todscale -n10000000
CPUS WALL WALL/CPUS
1 0.180 0.180
2 0.180 0.090
4 0.252 0.063
B. SGI SN2 system running 512 IA64 CPUs.
The system has a global monotonic clock and therefore has
no need for compensation. Current code uses a cmpxchg. New
code has no cmpxchg.
B.1 current code
ascender:~/noship-tests # ./todscale
CPUS WALL WALL/CPUS
1 0.850 0.850
2 1.767 0.884
4 6.124 1.531
8 20.777 2.597
16 57.693 3.606
32 164.688 5.146
64 456.647 7.135
128 1093.371 8.542
256 2778.257 10.853
(System crash at 512 CPUs)
B.2 New code
ascender:~/noship-tests # ./todscale -n1000000
CPUS WALL WALL/CPUS
1 0.426 0.426
2 0.429 0.215
4 0.436 0.109
8 0.452 0.057
16 0.454 0.028
32 0.457 0.014
64 0.459 0.007
128 0.466 0.004
256 0.474 0.002
512 0.518 0.001
Clock Accuracy
==============
A. 4 CPU SMP system
A.1 Old code
kmart:/usr/src/noship-tests # ./cdisp
Gettimeofday() = 1092124757.270305000
CLOCK_REALTIME= 1092124757.270382000 resolution= 0.000976563
CLOCK_MONOTONIC= 89.696726590 resolution= 0.000976563
CLOCK_PROCESS_CPUTIME_ID= 0.001242507 resolution= 0.000000001
CLOCK_THREAD_CPUTIME_ID= 0.001255310 resolution= 0.000000001
A.2 New code
kmart:/usr/src/noship-tests # ./cdisp
Gettimeofday() = 1092124478.194530000
CLOCK_REALTIME= 1092124478.194603399 resolution= 0.000000001
CLOCK_MONOTONIC= 88.198315204 resolution= 0.000000001
CLOCK_PROCESS_CPUTIME_ID= 0.001241235 resolution= 0.000000001
CLOCK_THREAD_CPUTIME_ID= 0.001254747 resolution= 0.000000001
Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<jhf@rivenstone.net>
[PATCH] ppc build fix
The #include <asm/io.h> comes from bk-ia64.patch time interpolation logic
patch from Cristoph Lameter.
Signed-off-by: Joseph Fannin <jhf@rivenstone.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: allow SD_NODES_PER_DOMAIN to be overridden
Allow SD_NODES_PER_DOMAIN to be overridden. On ppc64 set this at 16 so our
top level scheduling domains will include all nodes.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: fix hang on oprofile shutdown
We had a problem in our dummy perfmon handler where we wouldnt reset the
PMAO bit. If the bit ended up set and oprofile shutdown and removed its
handler then we would end up in a hard loop taking perfmon exceptions.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: fix __rw_yield prototype
From: Nathan Lynch <nathanl@austin.ibm.com>
Hit this in latest bk:
include/asm/spinlock.h: In function `_raw_read_lock':
include/asm/spinlock.h:198: warning: passing arg 1 of `__rw_yield' from incompatible pointer type
include/asm/spinlock.h: In function `_raw_write_lock':
include/asm/spinlock.h:255: warning: passing arg 1 of `__rw_yield' from incompatible pointer type
This seems to have been broken by the out-of-line spinlocks patch.
You won't hit it unless you've enabled CONFIG_PPC_SPLPAR. Use the
rwlock_t for the argument type, and move the definition of rwlock_t up
next to that of spinlock_t.
Signed-off-by: Nathan Lynch <nathanl@austin.ibm.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: be resilient against sysfs PCI config accesses
Check the EEH return code and dont warn or panic if we get a non fatal
error. Also up the printk on EEH error.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: cut down paca footprint
The paca currently contains an iseries only structure which is quite large
(~1kB). The following patch removes this overhead on pseries and g5
kernels.
Since the paca is no longer required to be page aligned, remove it from the
page aligned section.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: fix boot memory reporting
The memory reporting line was completely broken on NUMA:
Memory: 481600k available (0k kernel code, 0k data, 0k init) [c000000000000000,c000000020000000]
Replace it with something that works with NUMA both enabled and
disabled:
Memory: 485888k/524288k available (4068k kernel code, 38104k reserved, 2348k data, 712k bss, 320k init)
Also just use the section symbols like x86 does.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: fix compat cpu affinity on big endian 64bit
Add compat sched affinity code. We can argue about how
USE_COMPAT_ULONG_CPUMASK works now that the non compat interface has
changed.
The old non compat behaviour was to require a bitmap long enough in both
setaffinity and getaffinity, now its only required in getaffinity. I could
do the same for the 32bit interfaces.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: compat_get_bitmap/compat_put_bitmap
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] ppc64: fix compat NUMA API on big endian 64bit
Switch the NUMA API to use compat_get_bitmap/compat_put_bitmap. In order
to use compat_alloc_userspace instead of set_fs tricks, we have to do a few
copies.
This is what we are currently using on ppc64 but are willing to entertain
the idea of going to a 32bit bitmap, especially considering how much hoops
we have to go through to get it right in this patch.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<david@gibson.dropbear.id.au>
[PATCH] ppc64: fix declaration order in asm-ppc64/tlb.h
In asm-ppc64/tlb.h, tlb_flush() is defined as inline after the #include of
asm-generic/tlb.h which uses it, defeating the inline directive. gcc-3.4
exposes this problem, causing a compile failure. This patch reorders the
file to fix the problem.
Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<david@gibson.dropbear.id.au>
[PATCH] ppc64: handle SLB misses in realmode
Tested on pSeries and iSeries. Some future plans for VSID allocation may
mean we have to take this out again, but that's a while off yet, and in the
meantime it's a significant speedup.
This patch makes the PPC64 SLB miss handler run in real mode (i.e. MMU
off) for it's whole duration, on pSeries machines. Avoiding the rfid used
to turn relocation on saves some 70-80 cycles on Power4 and Power5. Not
having to save and restore SRR0 and SRR1 saves a few more, and means we
don't need an extra save slot for r3. Overall there's around a 27% speedup
on Power4.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ak@suse.de>
[PATCH] Cleanup & fix lost ticks handling on x86-64
This cleans up the x86-64 lost tick handling and fixes some issues:
First it moves that code into an own function.
The newer could would become very noisy when the machine loses timer ticks
regularly. This happens often on some laptops etc. during the acpi ec
access (nothing much can be really done about it) This patch prints the
warnings only once.
It also fixes the logic on when to ask cpufreq for a new estimate.
And it implements timer fallback to HPET when there are really lots of lost
ticks. This is following i386. PIT fallback isn't implemented right now
though, but I hope we don't need this.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] factor out common <asm/hardirq.h> code
Since the irq handling rework in 2.5 lots of code in the individual
<asm/hardirq.h> files is the same. This patch moves that common code
to <linux/hardirq.h>. The following differences existed:
- alpha, m68k, m68knommu and v850 were missing the ~PREEMPT_ACTIVE
masking in the CONFIG_PREEMPT case of in_atomic(). These
architectures don't support CONFIG_PREEMPT else this would have been
an easily-spottbale bug
- S390 didn't provide synchronize_irq as it doesn't fit into their
I/O model. They now get a spurious prototype/macro
- ppc added a new preemptible() macro that is provided for all
architectures now.
Most drivers were using <linux/interrupt.h> as they should, but a few
drivers and lots of architecture code has been updated to use
<linux/hardirq.h> instead of <asm/hardirq.h>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<roland@redhat.com>
[PATCH] cleanup ptrace stops and remove notify_parent
This adds a new state TASK_TRACED that is used in place of TASK_STOPPED
when a thread stops because it is ptraced. Now ptrace operations are only
permitted when the target is in TASK_TRACED state, not in TASK_STOPPED.
This means that if a process is stopped normally by a job control signal
and then you PTRACE_ATTACH to it, you will have to send it a SIGCONT before
you can do any ptrace operations on it. (The SIGCONT will be reported to
ptrace and then you can discard it instead of passing it through when you
call PTRACE_CONT et al.)
If a traced child gets orphaned while in TASK_TRACED state, it morphs into
TASK_STOPPED state. This makes it again possible to resume or destroy the
process with SIGCONT or SIGKILL.
All non-signal tracing stops should now be done via ptrace_notify. I've
updated the syscall tracing code in several architectures to do this
instead of replicating the work by hand. I also fixed several that were
unnecessarily repeating some of the checks in ptrace_check_attach. Calling
ptrace_check_attach alone is sufficient, and the old checks repeated before
are now incorrect, not just superfluous.
I've closed a race in ptrace_check_attach. With this, we should have a
robust guarantee that when ptrace starts operating, the task will be in
TASK_TRACED state and won't come out of it. This is because the only way
to resume from TASK_TRACED is via ptrace operations, and only the one
parent thread attached as the tracer can do those.
This patch also cleans up the do_notify_parent and do_notify_parent_cldstop
code so that the dead and stopped cases are completely disjoint. The
notify_parent function is gone.
Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<roland@redhat.com>
[PATCH] ptrace userspace API preservation
This makes any ptrace operation that finds the target in TASK_STOPPED state
morph it into TASK_TRACED state before doing anything. This necessitates
reverting the last_siginfo accesses to check instead of assume last_siginfo
is set, since it's no longer impossible to be in TASK_TRACED without being
stopped in ptrace_stop (though there are no associated races to worry
about).
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<roland@redhat.com>
[PATCH] Remove RUSAGE_GROUP
After my cleanup of the rusage semantics was so quickly taken in by Andrew
and Linus without comment, I wonder if I should not have tried to be so
accommodating of potential objections as I was. :-)
In my original posting, I solicited comment on whether introducing
RUSAGE_GROUP as distinct from RUSAGE_SELF was warranted. Note that we've
now changed the behavior of the times system call when using CLONE_THREAD,
so changing getrusage RUSAGE_SELF to match would be consistent. I think
that changing the meaning of the old RUSAGE_SELF value is preferable to
introducing the new value for the proper POSIX getrusage behavior. This
patch against Linus's current tree dumps RUSAGE_GROUP and makes RUSAGE_SELF
have the fixed behavior.
If there is interest in having a new explicit interface to sample a single
thread's stats alone, then I think that would be better done by introducing
a new value for RUSAGE_THREAD. This is trivial to implement, but I won't
offer patches bloating the interface if noone is actually interested in
using it.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<roland@redhat.com>
[PATCH] i386 syscall tracing of bogus system calls
In 2.4, strace will show you all bogus system calls a process tries. In
2.6, it only shows you stubs < __NR_syscalls, and there is no tracing stop
for large bogus system call numbers. I can't see why this was changed, so
I am assuming it was accidental.
This patch restores the expected behavior that syscall tracing shows every
bogus syscall attempt.
Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<roland@redhat.com>
[PATCH] make single-step into signal delivery stop in handler
On x86 and x86-64, setting up to run a signal handler clears the
single-step bit (TF) in the processor flags before starting the handler.
This makes sense when a process is handling its own SIGTRAPs.
But when TF is set because PTRACE_SINGLESTEP was used, and that call
specified a handled signal so the handler setup is happening, it doesn't
make so much sense. When the debugger stops to show you a signal about to
be delivered, and that signal should be handled, and then you do step or
stepi, you expect to see the signal handler code. In fact, the signal
handler runs to completion and then you see the single-step trap at the
resumed code instead of seeing the handler.
This patch changes signal handler setup so that when TF is set and the
thread is under ptrace control, it synthesizes a single-step trap after
setting up the PC and registers to start the handler. This makes that
PTRACE_SINGLESTEP not strictly a "step", since it actually runs no user
instructions at all. But it is definitely what a debugger user wants, so
that single-stepping always stops and shows each and every instruction
before it gets executed.
Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<appro@fy.chalmers.se>
[PATCH] cdrom signedness range fixes
Fix a few range checks which aren't working right because
if (int < sizeof(...))
does the wrong thing if `int' is negative, due to `sizeof' returning unsigned.
In addition to comparisons, the patch makes CDROMVOL* ioctl more robust.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<kpreslan@redhat.com>
[PATCH] Allow cluster-wide flock
Below is a patch that lets a cluster filesystem (such as GFS) implement
flock across the cluster.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<linuxram@us.ibm.com>
[PATCH] filemap read() fix
Fix the do_generic_file_read()-reads-one-page-too-many-bug for the fifth
time.
This patch combines the best features from Nick's patch and also makes
index and end_index consistent. (i.e index 'n' covers n*PAGE_SIZE to
((n+1)PAGE_SIZE)-1. I did not feel comfortable with the way index and
end_index represented different ranges. It was like comparing apples with
oranges.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<manfred@colorfullife.com>
[PATCH] fix f_version optimization for get_tgid_list
The kernel contains an optimization that skips the linked list walk in
get_tgid_list for the common case of sequential accesses. Unfortunately
the optimization is buggy (missing NULL pointer check for the result of
find_task_by_pid) and broken (actually - broken twice: the tgid value that
is stored in f_version is always 0 because tgid is overwritten when the
string is created and additionally the common case is not filldir < 0, it's
running out of nr_tgids).
The attached patch fixes these bugs.
Roger Luethi <rl@hellgate.ch> ran a benchmark:
test: top -d 0 -b -n 10 > /dev/null
==> 2.6.8 <==
real 0m19.092s
user 0m5.013s
sys 0m12.622s
==> 2.6.8 + patch-tgid-bugfixes <==
real 0m10.062s
user 0m5.042s
sys 0m4.111s
Signed-Off-By: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] centralize some nls helpers
This patch adds common nls_tolower, nls_toupper and nls_strnicmp helpers to
nls.h and uses them in various filesystems instead of local duplicates.
The situation for ncpfs isn't as nice as it allows to compile without nls
support even if the kernel has CONFIG_NLS set, so we need wrappers there.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] remove unused sysctls from kernel/personality.c
These are only used by the out of tree linux-abi project, so it makes sense
to define them in those modules.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<roland@topspin.com>
[PATCH] fs/compat.c: rwsem instead of BKL around ioctl32_hash_table
Currently the BKL is used to synchronize access to ioctl32_hash_table in
fs/compat.c. It seems that an rwsem would be more appropriate, since this
would allow multiple lookups to occur in parallel (and also serve the
general good of minimizing use of the BKL).
I added lock_kernel()/unlock_kernel() around the call to t->handler when a
compatibility handler is found in compat_sys_ioctl() to preserve the
expectation that the BKL will be held during driver ioctl operations. It
should be safe to do lock_kernel() while holding ioctl32_sem because of the
magic BKL sleep semantics.
Signed-off-by: Roland Dreier <roland@topspin.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<marcelo.tosatti@cyclades.com>
[PATCH] small wait_on_page_writeback_range() optimization
filemap_fdatawait() calls wait_on_page_writeback_range() with -1 as "end"
parameter. This is not needed since we know the EOF from the inode. Use
that instead.
Signed-off-by: Marcelo Tosatti <marcelo.tosatti@cyclades.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] md: correct "working_disk" counts for raid5 and raid6
This error only affects two message (and sysadmin heart-rate). It does not
risk data.
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: calls to break_lease in nfsd should be O_NONBLOCKing
If we would block, we return "err-jukebox" for nfsv3, or just drop the request
for v2.
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: return EACCES instead of ESTALE for certain filehandle lookup failures
As 'nfs_acceptable' uses the authnetication user in it's checks, the
filehandle might not be truely "stale" - EACCES is safer.
Thanks Olaf Kirch <okir@suse.de> and others.
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: fix incorrect indentation in fh_verify
fix incorrect indentation in fh_verify
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: nfsd4: Support acl_support attribute
The nfs4 attributes supported_attrs and aclsupport should not be static; they
need to depend on the exported filesystem's acl support. Test the latter by
attempting to get an acl, and adjust the returned attributes apropriately.
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: trivial cleanup of nfs4state.c
Whitespace cleanup, fix one dprintk, remove superfluous casts of NULL.
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: nfsd4 could leak a stateid in an error path
nfsd4 could leak a stateid in a case of kmalloc failure; fix.
Signed-off-by: Andy Adamson <andros@umich.edu>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: nfsd4: postpone release of stateowner on CLOSE
Postpone the release of a stateowner on CLOSE for lease time to enable the
CLOSE replay cache. Place stateowner on the close_lru list to be reaped by
the laundromat service.
Signed-off-by: Andy Adamson <andros@umich.edu>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: nfsd4: store current->tgid instead of lockowner hash in fl_pid
The file_lock.fl_pid is no longer used in posix_same_owner() tests. So just
set it to current->tgid for informational purposes.
Signed-off-by: Andy Adamson <andros@umich.edu>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<neilb@cse.unsw.edu.au>
[PATCH] knfsd: remove redundant initialization in nfsd4_lockt
No need to set fl_owner and fl_pid to 0, since that's already been done by
locks_init_lock.
Signed-off-by: Andy Adamson <andros@umich.edu>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bgerst@quark.didntduck.org>
[PATCH] Remove in-kernel init_module/cleanup_module stubs
This patch removes the default stubs for init_module and cleanup_module,
and checks for NULL instead. It changes modpost to only create references
to those functions if they actually exist.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<akpm@osdl.org>
[PATCH] remove ext2_panic()
It has no callers.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bastian@waldi.eu.org>
[PATCH] s390: export copy_in_user
The attached patch exports __copy_in_user_asm for s390. It is used in xfs.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: minmax-removal arch/s390/kernel/debug.c
Removes unnecessary min/max macros and changes calls to use kernel.h macros
instead.
Signed-off-by: Michael Veeck <michael.veeck@gmx.net>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: packed stack vs. cpu hotplug.
The different stack frame layout for packed stacks broke cpu hotplug.
Recreate the initial stack frame of the idle thread for offline cpus coming
back online. Reenable interrupts after loading the initial registers. In
addition this patch contains two more bug fixes: a typo for 64 bit
(__SMALL_STACK_SIZE vs. __SMALL_STACK) and show_trace didn't show a trace
if for task == NULL.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<schwidefsky@de.ibm.com>
[PATCH] s390: lcs multicast deadlock
From: Thomas Spatzier <tspat@de.ibm.com>
lcs network driver changes:
- Fix deadlock on card->ipm_lock.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trini@kernel.crashing.org>
[PATCH] zlib_inflate: Move zlib_inflateSync & friends
The following patch moves zlib_inflateSync and friends, which are used by
PPP and not a 'normal' gzip, into inflate_sync.c.
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trini@kernel.crashing.org>
[PATCH] zlib_inflate: Make zlib_inflate_trees_fixed(...) generate the table
The following changes zlib_inflate_trees_fixed(...) from using a statically
defined table, to generating this table. This cuts out 4-8kB from
inftrees.o (4kB on IBM 440GP, 8kB on PPC 74xx).
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<trini@kernel.crashing.org>
[PATCH] ppc32: Switch arch/ppc/boot to lib/zlib_inflate
The following patch switches arch/ppc/boot over from using its own version
of zlib to the code found under lib/zlib_inflate. In conjunction with the
previous two patches, the size of the resulting images isn't noticably
different. But this does have the advantage of removing another copy of
zlib from the kernel, and I believe this allows for lib/inflate.c to go
away (as that's basically what ppc used to use).
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] ext3 dreference of sb preceeds check.
This looks awry. Move the dereference to after we have checked sb is
non-NULL.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] fbdev: Speed up scrolling of tdfxfb
This patch speeds up scrolling of tdfxfb by maximizing var->yres_virtual so
tdfxfb uses SCROLL_PAN_MOVE instead of SCROLL_REDRAW. This is true whether
CONFIG_FB_3DFX_ACCEL is set or not. This problem was reported by Paolo
Ornati <ornati@fastwebnet.it> who also made substantial contributions to
solve this problem.
This patch also fixes compile errors when CONFIG_FB_3DFX_ACCEL is false.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] fbdev: PPC crash and other fixes for rivafb
- Fixed rivafb crashing in PPC. rivafb in PPC requires full, instead of
partial, hardware initialization in rivafb_set_par().
- Added untested support for NV_ARCH_30 chipsets.
- From Guido Guenther <agx@sigxcpu.org>
here's another short patch fixing the cursor colors on big endian.
- From Guido Guenther <agx@sigxcpu.org>
trivial: strictmode is a MODULE_PARAM, even if CONFIG_MTRR is not set:
Signed-off-by: Guido Guenther <agx@sigxcpu.org>
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] fbcon: take over console on driver registration
- This fixes another regression from 2.4. If fbcon is compiled
statically, and the framebuffer driver is compiled as a module, doing a
'modprobe xxxfb' does nothing to the console. This has generated
numerous bug reports from users.
With this patch, fbmem will notify fbcon upon driver registration
allowing fbcon to take over the console.
- This also fixes con2fbmap not working if fbcon is compiled as a module
using the same mechanism as described above.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] fbdev: Clean up framebuffer initialization
This patch probably deserves discussion among developers.
Currently, the framebuffer system is initialized in a roundabout manner.
First, drivers/char/mem.c calls fbmem_init(). fbmem_init() will then
iterate over an array of individual drivers' xxxfb_init(), then each driver
registers its presence back to fbmem. During console_init(),
drivers/char/vt.c will call fb_console_init(). fbcon will check for
registered drivers, and if any are present, will call take_over_console()
in drivers/char/vt.c.
This patch changes the initialization sequence so it proceeds in this
manner: Each driver has its own module_init(). Each driver calls
register_framebuffer() in fbmem.c. fbmem.c will then notify fbcon of the
driver registration. Upon notification, fbcon calls take_over_console() in
vt.c.
The following are the changes brought about by this patch:
- Each subsystem (fbcon, fbmem, xxxfb) will have their own module_init.
Thus, explicit calls to each subsystem's init functions are eliminated.
- The struct fb_drivers array in fbmem.c can be removed. This slashes
around 400 lines in fbmem.c
- Parsing of kernel boot options were done by fbmem.c calling each
driver's xxxfb_setup() function. Because this is not possible with this
patch, drivers can choose to either:
- have their own __setup() routine
- call fb_get_options("xxxfb") and pass the return value to
xxxfb_setup(). This is to maintain compatibility with the
'video=xxxfb:<options>' semantics.
- Getting a framebuffer console will occur a bit late during the boot
process since the initialization sequence will depend upon the link
order. So, 'video/' is moved up in drivers/Makefile, shortly after
'pci/'
- Because driver initialization will be dependent on the link order,
hardware that depends on other subsystems (agpgart, usb, serial, etc) may
choose to initialize after the subsystems they depend on.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<adaplas@hotpop.com>
[PATCH] fbdev: Add module_init() and fb_get_options() per driver
This adds module_init(xxxfb_init) in all drivers. For drivers with
xxxfb_setup(), this patch also adds a
'xxxfb_setup(fb_get_options("xxxfb"))' prior to initialization.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] Remove bogus memset from cpqfc driver
Not that this driver compiles, but coverity picked up this nonsense. If
the pci_alloc_consistent fails, we go boom. Amusingly, after the ==NULL
check, is an identical memset.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davej@redhat.com>
[PATCH] hpt366 ptr use before NULL check.
This pointer is used prior to a test for NULL. But Bart says it can never
be NULL.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<tkooda-patch-kernel@devsec.org>
[PATCH] crypto: tea.c xtea_encrypt should use XTEA_DELTA
xtea_encrypt() should use XTEA_DELTA instead of TEA_DELTA.
Signed-off-by: Thor Kooda <tkooda-patch-kernel@devsec.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<pbadari@us.ibm.com>
[PATCH] AIO/DIO oops fix
The problem here is, finished_one_bio() shouldn't call aio_complete() since
no work has been done. I have a fix for this - can you verify this ? I am
not really comfortable with this "tweaking". (I am not really sure about
IO errors like EIO etc. - if they can lead to calling aio_complete()
twice)
Fix is to call aio_complete() ONLY if there is something to report. Note
the we don't update dio->result with any error codes from get_user_pages(),
they just passed as "ret" value from do_direct_IO().
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] riscom8 build fix
drivers/char/riscom8.c:1178: macro `min_t' used with only 2 args
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] use for_each_cpu in oprofile code
Replace open coded versions with for_each_cpu()/for_each_online_cpu().
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] fix oprofile vfree warning on error
On error we can call __free_cpu_buffers with only some buffers allocated.
I was getting a bunch of vfree warnings when I hit it, we should check
before calling vfree.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<anton@samba.org>
[PATCH] Speed up oprofile buffer drain code
I noticed a large machine was doing about 400,000 context switches per
second when oprofile was enabled. Upon closer inspection it looks like we
were rearming the buffer sync timer without modifying the expire time.
Now that we have schedule_delayed_work_on I believe we can remove the timer
completely. Each cpu should be offset by 1 jiffy so they dont all fire at
the same time. I bumped DEFAULT_TIMER_EXPIRE from 2 to 10 times a second
to be sure we reap cpu buffers.
With the following patch the same large machine gets about 4000 context
switches per second.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bunk@fs.tum.de>
[PATCH] cdu31a.c build fix
drivers/cdrom/cdu31a.c: In function `do_sony_cd_cmd':
drivers/cdrom/cdu31a.c:962: parse error before `:'
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulkf@microgate.com>
[PATCH] synclink.c kernel janitor changes
Uses msecs_to_jiffies() instead of the custom jiffies_from_ms().
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Andries.Brouwer@cwi.nl>
[PATCH] adfs: add static
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Andries.Brouwer@cwi.nl>
[PATCH] isofs: add static
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<mingo@elte.hu>
[PATCH] ia32: tsc synchronisation cleanup
Clean up the TSC-synchronization code: get rid of div64 and calm down the
printks.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Andries.Brouwer@cwi.nl>
[PATCH] add static in affs
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Andries.Brouwer@cwi.nl>
[PATCH] add static in afs
The routine afs_rxvl_probe() is unused and could be removed. (I only put
#if 0 around it.)
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Andries.Brouwer@cwi.nl>
[PATCH] add static in befs
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: avoid using elv_queue_empty
Avoid using, in the UBD driver, the elv_queue_empty function. It's for the
block layer only; in fact, the Anticipatory Scheduler can return NULL with
elv_next_request() even if the queue is not empty, because it waits for the
process to send another request before seeking on the disk.
In fact, if (with uml-ubd-any-elevator) we let UBD use any scheduler,
elevator=as will make the UBD driver Oops, if we don't have this patch.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Avoid forcing use of the no-op scheduler
Avoid forcing use of the no-op scheduler for UBD; this may uncover some
bugs in the UBD driver, and in fact uml-ubd-no-empty-queue.patch is needed
to make this sure. But as of now, no other bugs have been discovered, so
this should be safe.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<blaisorblade_spam@yahoo.it>
[PATCH] uml: Correct the failure path in start_io_thread
Correct the failure path in start_io_thread(), to return the correct error
code.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] fix address_space.i_mmap comment
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] remove MOD_{INC,DEC}_USE_COUNT users that got back in
the ibm_emac_mal.c one is in exported function, so useless, the other
two are stale decrements.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] don't mention MOD_{INC,DEC}_USE_COUNT in Documentation/
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<ak@suse.de>
[PATCH] Work around gcc 3.5 offsetof bug
Current gcc 3.5 doesn't compile a x86-64 kernel, because it doesn't
recognize the offsetof used in asm-offset.c to be constant.
Use __builtin_offsetof for this instead.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] remove drivers/char/busmouse.[ch]
Doesn't even appear in Makefile and Kconfig anymore.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<hch@lst.de>
[PATCH] Missing static in buffer.c
The exports were for reiserfs in 2.4, but reiserfs doesn't need them
anymore.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<olh@suse.de>
[PATCH] fix typos in Documentation/sysctl and Documentation/filesystems/proc.txt
Alpha is AXP.
hostname and domainname does not need redirection.
Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<paulmck@us.ibm.com>
[PATCH] RCU documentation
Signed-off-by: <paulmck@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Andries.Brouwer@cwi.nl>
[PATCH] add static in autofs4
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Andries.Brouwer@cwi.nl>
[PATCH] add static in efs
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Andries.Brouwer@cwi.nl>
[PATCH] add static in udf
udf_filead_read() and udf_get_fileextent() are unused.
Here they are put inside #if 0 .. #endif
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<Andries.Brouwer@cwi.nl>
[PATCH] add static in ufs
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davidm@hpl.hp.com>
[IA64] irq.c: Kill warning about variables which are unused in UP kernels.
Signed-off-by: davidm@hpl.hp.com
Signed-off-by: Tony Luck <tony.luck@intel.com>
<janitor@sternwelten.at>
[IA64] minmax-removal in simserial.c, unwind.c
Patch (against 2.6.8.1) removes unnecessary min/max macros and changes
calls to use kernel.h macros instead.
Signed-off-by: Michael Veeck <michael.veeck@gmx.net>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: David Mosberger-Tang <davidm@hpl.hp.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<willy@debian.org>
[IA64] pci.c: assign parent to the ROM resource
Jon Smirl's patch to export roms via sysfs exposes a bug in the ia64
PCI code; we're not assigning a parent to the ROM resource. Patch
supplied by Matthew Wilcox
Signed-off-by: Tony Luck <tony.luck@intel.com>
<mita@yacht.ocn.ne.jp>
[IA64] discontig.c: reset counters every iteration each node in show_mem().
On multi-node ia64 system, SysRq-M seems to dump wrong memory info.
(Since I don't have such a large machine, I don't confirm it)
It should reset counters every iteration each node in show_mem().
Jesse Barnes: "This looks good".
Signed-off-by: Akinobu Mita <mita@yacht.ocn.ne.jp>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<schwab@suse.de>
[IA64] acpi.c: export pm_power_off for use by ipmi_poweroff module.
Signed-off-by: Andreas Schwab <schwab@suse.de>
Signed-off-by: Tony Luck <tony.luck@intel.com>
<bdschuym@pandora.be>
[BRIDGE]: Fix length checking in ipv6 bridge filtering.
Signed-off-by: Bart De Schuymer <bdschuym@pandora.be>
Signed-off-by: David S. Miller <davem@davemloft.net>
<yoshfuji@linux-ipv6.org>
[IPV4/IPV6]: More fragment handling improvements.
Here's the optimization: if we know the remaining data exceeds the
mtu, we do not need to fill up full of it.
skb_prev:
mtu
+----------+--+-+
| | | |
+----------+--+-+
^ ^
skb_prev->len |
maxfraglen
appending data:
+--------+
| |
+--------+
--------->
length
In this case, we know we need more fragment(s).
So, let's fill up to maxfraglen (instead of mtu)
to avoid needless copy in the next loop.
Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
<ak@suse.de>
[NET]: NETIF_F_LLTX for devices
New version of the NETIF_F_LLTX for network devices patch.
This allows network drivers to set the NETIF_F_LLTX flag
and then do their own locking in start_queue_xmit.
This lowers locking overhead in this critical path.
The drivers can use try lock if they want and return -1
when the lock wasn't grabbed. In this case the packet
will be requeued. For better compatibility this is only
done for drivers with LLTX set, others don't give a special
meaning to -1.
Most of the modern drivers who have a lock around hard_start_xmit
can just set this flag. It may be a good idea to convert the spin
lock there to a try lock. The only thing that should be audited
is that they do enough locking in the set_multicast_list function
too, and not also rely on xmit_lock here.
Now doesn't move any code around and does things with gotos instead.
The loop printk is also still there even for NETIF_F_LLTX
For drivers that don't set the new flag nothing changes.
Signed-off-by: David S. Miller <davem@davemloft.net>
<ak@suse.de>
[TG3]: Add LLTX support.
Signed-off-by: David S. Miller <davem@davemloft.net>
<ak@suse.de>
[E1000]: Add LLTX support.
Signed-off-by: David S. Miller <davem@davemloft.net>
<herbert@gondor.apana.org.au>
[IPV4/IPV6]: Update ECN handling.
This patch brings the IP ECN handling up-to-date with repsect to
RFC 3168. Mostly this means treating ECT(1) in the same way as
ECT(0).
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
<hch@lst.de>
[IPV6]: Remove secure_ipv6_id, unused.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[NET]: Kill SCM_CONNECT, never used and unreferenced.
Noticed by Ulrich Drepper
Signed-off-by: David S. Miller <davem@davemloft.net>
<baruch@ev-en.org>
[TCP]: Fix some typos.
Signed-off-by: David S. Miller <davem@davemloft.net>
<sam@mars.ravnborg.org>
kbuild: allow arch/$(ARCH)/Makefile to override cmd_vmlinux__
The comments said so, so let the code refelct the comment.
First user is um that needs a non-standard link rule.
um patch will be submitted by the UML folks.
Also dropped a bogus comment.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<tony.luck@intel.com>
[PATCH] SN2 build fix, take two
I want to change my vote :-) The problem isn't a spurious extra "#else"
(which Paul's patch removed) ... it is a missing "#endif"
Here's a patch that puts the #else back, adds the #endif, and fixes the
whitespace to make this nested mess of pre-processor noise a bit more
legible.
Signed-off-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sam@mars.ravnborg.org>
scripts: pass %{_smp_mflags} to make(1) in scripts/package/mkspec
This patch passes %{_smp_mflags} to various build phases in
scripts/package/mkspec so that -j$N is honored by make rpm.
From: William Lee Irwin III <wli@holomorphy.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<sam@mars.ravnborg.org>
kbuild: Move localversion config option to top of menu
Setting the local version is a typical action, and expected to be
used more often than many other options in the "General" menu.
So move it to the top.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<peter@pantasys.com>
[IPV4]: Fix DHCPACK checking in ipconfig.c
Signed-off-by: Peter Buckingham <peter@pantasys.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
<bzolnier@elka.pw.edu.pl>
[PATCH] ide: sgiioc4 driver needs /proc/ide entries
Add create_proc_ide_interfaces() call to sgiioc4_ide_setup_pci_device()
so /proc/ide gets populated properly.
Signed-off-by: Erik Jacobson <erikj@sgi.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davem@nuts.davemloft.net>
[VLAN]: Fix thinko in RCU locking.
Signed-off-by: David S. Miller <davem@davemloft.net>
<herbert@gondor.apana.org.au>
[IPV4]: Simplify IP_ECN_set_ce.
Optimize away a branch and clean up the logic.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<herbert@gondor.apana.org.au>
[IPSEC]: Fix ECN encapsulation on ipv6.
While doing the ECN patch I discovered that IPsec on IPv6 wasn't
encapsulating the ECN correctly. This patch fixes that.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
<herbert@gondor.apana.org.au>
[IPV6]: Handle ECN correctly in ip6ip6 tunnels.
This patch adds ECN encapsulation/decapsulation to ip6_tunnel.c.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
<anton@samba.org>
[PATCH] Fix mark_buffer_dirty_inode locking breakage
Looks like a bug in the cleanup patch :)
From: Andrew Morton <akpm@osdl.org>
Shows how many people are testing ext2. Let's fix up that whitespace
also.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<davem@nuts.davemloft.net>
[TCP]: Do not export tcp_transmit_skb().
Unused outside of tcp_output.c
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[TCP]: Fix tcp_set_skb_tso_factor() calcs.
We divide by the wrong MSS.
Signed-off-by: David S. Miller <davem@davemloft.net>
<rmk@flint.arm.linux.org.uk>
[ARM] Make VIPT alias copypage functions override work.
<davem@nuts.davemloft.net>
[NET]: Calculate RTATTR_MAX at run time.
This also solved a problem noticed by Thomas Graf
in that RTATTR_MAX had become incorrect recently
due to IFLA_MAX increasing and thus becomming the
largest one.
Signed-off-by: David S. Miller <davem@davemloft.net>
<axboe@suse.de>
[PATCH] fix highmem bouncing leaking pages
In highmem end_io handling, we need to iterate over the completed bio
from 0, not bio->bi_idx. If not we leak N-1 pages for any bio with N
pages where N > 1.
Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] beginning of endianness annotations
This adds the types and annotates conversion functions. I've converted
the ...p() versions to inlines; AFAICS, everything's still happy...
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] ext2 endianness annotations
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] adfs endianness annotations
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] affs endianness annotations
AFFS partially annotated - some fields of on-disk structures are never
used and while I'm reasonably sure that they ought to be big-endian, I'd
rather leave them alone for now; annotating them won't change the amount
of noise since nothing in the kernel ever accesses them.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] udf endianness annotations
That one was slightly messier than ext2 - several data structures had
been used both in little-endian (on-disk) and host-endian (in-core)
situations. They had to be split, the rest was trivial annotations.
Gets UDF sparse-clean with -Wbitwise. Note that here we just annotate -
bug fixes from the original version of that patch had already been
merged.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torvalds@ppc970.osdl.org>
Fix up UDF merge error
Andries made a declaration static, and this clashed with Al who
changed it for byteorder annotation. Fix it all up.
<nico@org.rmk.(none)>
[ARM PATCH] 2079/1: make the IOP3xx Implementation Options menu conditional on
CONFIG_ARCH_IOP3XX
Patch from Nicolas Pitre
Signed-off-by: Nicolas Pitre
<nico@org.rmk.(none)>
[ARM PATCH] 2087/1: fix issues with PXA irq code
Patch from Nicolas Pitre
- Don't chain assignment to volatile registers.
Doing otherwise generates extra needless code to reload the value
for the next assignment.
- Don't touch PXA27x registers on a PXA25x build.
(spotted by Ian Campbell)
Signed-off-by: Nicolas Pitre
<icampbell@com.rmk.(none)>
[ARM PATCH] 2088/2: set_irq_type takes the IRQ number not the GPIO
Patch from Ian Campbell
Please ignore previous patch: set_irq_type takes the IRQ number and
not the GPIO number so using any variant on IRQ_TO_GPIO* is incorrect
anyway.
Signed-of-by: Ian Campbell <icampbell@arcom.com>
<anton@samba.org>
[PATCH] Move __preempt_*lock into kernel_spinlock, clean up.
- create in_lock_functions() to match in_sched_functions(). Export it
for use in oprofile.
- use char __lock_text_start[] instead of long __lock_text_start when
declaring linker symbols. Rusty fixed a number of these a while ago
based on advice from rth.
- Move __preempt_*_lock into kernel/spinlock.c and make it inline. This
means locks are only one deep.
- Make in_sched_functions() check in_lock_functions()
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<benh@kernel.crashing.org>
[PATCH] ppc/ppc64: fix offb
The recent fbdev changes broke something quite fundamental on ppc, which
is the way offb works. It's a "fallback" driver that is to be used when
no other driver picked up the video, or when "forced" via the video=ofonly
command line option.
The recent changes completely broke that (which is a pretty important
behaviour on ppc since we still have some models regulary with video
cards that don't work properly with the kernel drivers, like some nVidias
or some older stuffs).
This patch moves offb to the end of the Makefile, so at least the behaviour
of taking over as a "fallback" is restored (the current kernel will have
offb take control of the framebuffer before any fbdev has a chance to do
it, which breaks everything).
Apparently, the entire support for "video=ofonly" was removed though,
that NEEDS to be restored in some way, though i'm not yet sure what is
the best path to that yet, I have to look more deeply at the new code.
<benh@kernel.crashing.org>
[PATCH] ppc32: Fix boot with ppc970fx CPU
This patch fixes boot on machines with a 970FX CPU, for PPC 32
bits kernels, please apply.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<benh@kernel.crashing.org>
[PATCH] ppc: fix sungem NAPI
The recent sungem NAPI change introduced a bug: dev_kfree_skb() is
called within a softirq context, thus triggers all sort of WARN_ON's
later on down the stack.
This patch changes it to dev_kfree_skb_any().
Acked by David Miller.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<clameter@sgi.com>
[PATCH] Fix hpet time interpolator setup for CONFIG_TIME_INTERPOLATION
The time interpolator scalability enhancement patch broke the time
interpolator integration for hpet on IA64. Here is the fix.
<zwane@fsmlabs.com>
[PATCH] Fix i386 SPINLOCK_MAGIC debugging
Using a label isn't sufficent anymore for determining the location of the
failed lock. Use __builtin_return_address instead.
Signed-off-by: Zwane Mwaikambo <zwane@fsmlabs.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<zwane@fsmlabs.com>
[PATCH] Fix x86_64 SPINLOCK_MAGIC debugging
Using a label isn't sufficent anymore for determining the location of the
failed lock. Use __builtin_return_address instead.
Signed-off-by: Zwane Mwaikambo <zwane@fsmlabs.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<dsaxena@plexity.net>
[ARM] Some minor ixdp2x01 fixes
Convert on-board UARTs on IXDP2x01s to use 32-bit wide access by
marking them as UPIO_MEM32.
Fix ixdp2x01_pci_setup() to return a value
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<bzolnier@elka.pw.edu.pl>
[PATCH] ide: fix bogus write cache comment
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bzolnier@elka.pw.edu.pl>
[PATCH] ide: update comments in ide.c and ide-probe.c
From: Alan Cox <alan@redhat.com>
Extracted from 2.6.8.1-ac1, minor corrections by me.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bzolnier@elka.pw.edu.pl>
[PATCH] ide: remove never changing FANCY_STATUS_DUMPS define
From: Alan Cox <alan@redhat.com>
Extracted from 2.6.8.1-ac1 by me.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bzolnier@elka.pw.edu.pl>
[PATCH] ide: remove kmalloc() from ide_unregister()
tmp_hwif should not be kmalloc()ed in ide_unregister().
If the kmalloc fails, there is no possible error recovery.
This patch makes tmp_hwif static, protected by ide_cfg_sem.
Signed-off-by: Jorn Engel <joern@wh.fh-wedel.de>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bzolnier@elka.pw.edu.pl>
[PATCH] ide: fix LBA48 support for ALi chipsets (rev < 0xC5)
Affected chipsets support LBA48 but not LBA48 DMA.
Just use DMA for area < 137GB and revert to PIO for > 137GB one.
Also disallow transfers > 256 sectors for better performance.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bzolnier@elka.pw.edu.pl>
[PATCH] ide: remove unused ide_[dma,pio]_ops_t
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bzolnier@elka.pw.edu.pl>
[PATCH] ide: add ide_hwif_t->data_phase
Use it for taskfile requests (only PIO/DMA for now) for storing
ide_task_t->data_phase of the active command.
Also add some missing task->data_phase assignments.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<bzolnier@elka.pw.edu.pl>
[PATCH] ide: unify taskfile single/multiple PIO code
Make the actual use of hwif->data_phase.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<dsaxena@plexity.net>
[ARM] More minor IXP2000 cleanups
- Cleanup arch_idle()
- Remove unused external_fault variable in mach-ixp2000/pci.c
leftover from older kernel version
- Fix __setup("ixdp2x01_clock", ixdp2x01_clock_setup) to be
"ixdp2x01_clock="
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
<davem@nuts.davemloft.net>
[SUNGEM]: Use dev_kfree_skb_irq() for TX.
gem_tx() is always invoked with IRQs disabled.
Signed-off-by: David S. Miller <davem@davemloft.net>
<akpm@osdl.org>
[NET]: Fix pkt_act.h warning with gcc-2.95
include/net/pkt_act.h: In function 'tcf_hash_search':
include/net/pkt_act.h:218: warning: return makes integer from pointer without a cast
gcc-2.95 is stupid.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<herbert@gondor.apana.org.au>
[IPSEC]: Find larval SAs by sequence number
When larval states are generated along with ACQUIRE messages, we should
use the sequence to find the corresponding larval state when creating
states with ADD_SA or ALLOC_SPI.
If we don't do that, then it may take down an unrelated larval state
with the same parameters (think different TCP sessions). This not only
leaves behind a larval state that shouldn't be there, it may also cause
another ACQUIRE message to be sent unnecessarily.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
<herbert@gondor.apana.org.au>
[IPCOMP]: Use per-cpu buffers for compression/decompression.
Here is a really ugly patch to get IPCOMP to use per-cpu buffers. But
I'm afraid it really is necessary. At 300K per SA IPCOMP isn't very
affordable at all.
With per-cpu buffers this goes down to 300K per CPU.
I've also turned the kmalloc'ed scratch space into a vmalloc'ed one
since people may be loading the ipcomp module after the system has
been running for a while. On an i386 machine with 64M of RAM or less
this can often cause a 64K kmalloc to fail.
The crypto deflate buffer space are vmalloc'ed already as well.
Part of the ugliness comes from the lazy allocation. However we need
the lazy initialisation since new IPCOMP algorithms may be introduced
in future. That means we can't allocate space for every single IPCOMP
algorithm at module-load time.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
<yoshfuji@linux-ipv6.org>
[IPV6]: Deprecate all-on-link assumption
If we don't have IPv6 default routes, we assume all ipv6 destinations
are on-link as specified in RFC2461. It, however, is considered harmful now;
it is problematic with IPv6-capable nodes that do not have off-link
IPv6 connectivity (eg no default routers) and such nodes will take
a few seconds until they fall back to use IPv4.
See <draft-ietf-v6ops-onlinkassumption-02.txt> for details.
From: KUNITAKE Koichi <kunitake@anchor.jp>
Signed-off-by: KUNITAKE Koichi <kunitake@anchor.jp>
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<yoshfuji@linux-ipv6.org>
[NETFILTER]: Fix build with SYSCTL=n
Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[TCP]: Fix packet counting in tcp_fragment().
Do not reference the tso_factor of SKB buff until
it is initialized.
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[TCP]: Fix packet counting when fragmenting already sent packets.
Calls to tcp_fragment() change the tso_factor of
an SKB, so we need to deal with that.
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[TCP]: Fix packet counting during retransmission.
We run into a potential problem if we are doing
TSO and we reduce the congestion window. We might
create a case where the TSO packet is what we need
to resend but the congestion window is not large
enough to allow it through.
The fix is very simple, since tcp_retransmit_skb()
is going to chop the size of the packet down to size
of the normal non-TSO MSS, we can pretend at the top
level that each SKB is composed of only one real MSS
worth of data.
Signed-off-by: David S. Miller <davem@davemloft.net>
<shemminger@osdl.org>
[BRIDGE]: The vlan MII ioctl pass through was passing the wrong device.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<tgraf@suug.ch>
[NET]: Device name changing via rtnetlink
Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[SPARC64]: Use time interpolators.
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[SPARC64]: Kill insn scheduling comments from etrap.S
They just make the columns super wide and the
code harder to read and edit.
Signed-off-by: David S. Miller <davem@davemloft.net>
<torvalds@evo.osdl.org>
Add sparse "__iomem" infrastructure to check PCI address usage
There's tons of mis-use of PCI memory-mapped IO that is used
as if it was regular memory. That fails disastrously on a number
of architectures, and it doesn't help that it just happens to
work on regular x86 boxes.
This makes makes us do much stricter type-checking. Some of it
visible to the regular compiler, but the bulk of it is for sparse.
<torvalds@evo.osdl.org>
Fix up some of the basic x86 offenders on __iomem usage.
<torvalds@evo.osdl.org>
acpi: annotate PCI memory accesses
<torvalds@evo.osdl.org>
agp: annotate intel agp PCI memory accesses
<torvalds@evo.osdl.org>
drm: annotate basic PCI memory access functions
<torvalds@evo.osdl.org>
ide: initial PCI memory access annotations
<torvalds@evo.osdl.org>
tg3: annotate PCI memory accesses
<torvalds@evo.osdl.org>
fbcon: initial PCI memory access annotations
<torvalds@evo.osdl.org>
misc: pci memory access annotations
Basic serial ports, acpi and intel sound.
Can you guess what my laptop has in it?
<torvalds@ppc970.osdl.org>
ppc64: PCI memory annotation infrastructure
<torvalds@ppc970.osdl.org>
ide: avoid PCI iomem warning in pmac.c
<torvalds@ppc970.osdl.org>
sungem: PCI memory annotations
<torvalds@ppc970.osdl.org>
ohci1394: PCI memory annotation
<torvalds@ppc970.osdl.org>
olympic: tokenring driver PCI memory annotation
<torvalds@ppc970.osdl.org>
libata: initial PCI memory annotations
<trondmy@trondhjem.org>
[PATCH] NFS: add an fsync() stub for directories as per 2.4.x.
Helps to keep the 'sendmail' doctor away.
Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<roland@redhat.com>
[PATCH] fix task_struct leak in posix-timers
timer_create leaks task_structs. I probably introduced this bug when I did
the cleanup making posix-timers properly per-process. This patch fixes it.
There is also a fixup for a random indentation snafu at the end.
Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<roland@redhat.com>
[PATCH] Fix PTRACE_CONT after single-step into signal delivery
The previous single-step patch ("make single-step into signal delivery
stop in handler") took things a little too far.
It left TF set in the sigcontext on the stack, so a PTRACE_CONT after
stopping at the handler entry will step instead of resume. This
additional patch fixes it.
Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torvalds@ppc970.osdl.org>
Fix off-by-one bug in page cache reading.
Just test the end case inside the loop, rather than trying to
be clever and getting it wrong.
<trini@kernel.crashing.org>
[PATCH] ppc: switch boot/lib/Makefile to $(addprefix ...) for zlib_inflate
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] CIFSSMBLock() endianness fix
cpu_to_le32(...) assigned to 16bit fields.
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] more endianness breakage (CIFSSMBLock(), again)
a) upper 32 bits of cpu_to_le64(x) are *not* cpu_to_le32(x) of
upper 32 bits.
b) ->ByteCount cleaned up.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<sam@mars.ravnborg.org>
kbuild/ppc: Fix build of zlib in arch/ppc/boot/lib
$(addprefix ...) needs a directory relative to current directory, because
kbuild prefixes the filename with '$(obj)/'
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] CIFSSMBNegotiate endianness fix
Use of 16bit little-endian in comparisons and arithmetics without
conversion.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<viro@parcelfarce.linux.theplanet.co.uk>
[PATCH] CIFSSMBQueryReparseLinkInfo() endianness fix
le16_to_cpu() on 32bit field.
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torvalds@ppc970.osdl.org>
cifs: fix missing semicolon.
It disappeared somewhere in Al's cleanup patch..
<torvalds@evo.osdl.org>
Stricter PCI IO space type checking uncovered a bug in sx8 driver.
Forgot to add in the mmio base..
<torvalds@evo.osdl.org>
annotate HPET driver memory-mapped PCI usage
<torvalds@evo.osdl.org>
Annotate pc300 wan driver PCI memory accesses.
This driver caused a _lot_ of warnings due to tons
of explicit casts to "uclong". Making all the types
sane not only removed the warnings, but got rid of
a lot of silly casting, since the types are now much
more natural to what the driver wanted to do in the
first place.
<torvalds@evo.osdl.org>
memcpy_toio() shouldn't complain about a const source.
<torvalds@evo.osdl.org>
Fix up and annotate MTD map usage of PCI memory access
<bzolnier@elka.pw.edu.pl>
[PATCH] ide: sis5513 fix for SiS962 chipset
From: Thomas Gleixner <tglx@linutronix.de>
1. If the fake 5513 id bit is not set by the BIOS we must have the 5518
id in the device table.
2. If the register remapping is not set by the BIOS then the enable bit
check in ide_pci_setup_ports will fail. It's safe to switch to the
remapping mode here. Keeping the not remapped mode would need quite big
changes AFAICS.
Forward ported to 2.6 by me.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torvalds@ppc970.osdl.org>
ppc: make IDE memory-mapped PCI routines match new reality
<yoshfuji@linux-ipv6.org>
[IPV6]: Fix oops in rt6_device_match()
This fixes panic in rt6_device_match().
Well, rt->rt6i_idev is always set if it is dynamically allocated.
However, when we hit ip6_null_entry here, its rt6i_idev is NULL.
This patch is minimum fix to avoid the oops for now.
Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[TCP]: Fix {lost,left}_out accounting in tcp_fragment()
Noticed by Herbert Xu.
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[NET]: Kill netdev->last_stats
Old debugging code we no longer need.
Signed-off-by: David S. Miller <davem@davemloft.net>
<ja@ssi.bg>
[IPVS]: Do not use skb_checksum_help(), create and use nf_reset_debug()
Appended is a 2nd version that uses nf_reset_debug.
- do not use skb_checksum_help in input path as ipvs can handle
incoming CHECKSUM_HW packets
- do not use skb_checksum_help in forwarding path
- claim that checksum is valid (CHECKSUM_NONE) when entering output
path for out->in packets
- do not reset/destroy the nfct in IP_VS_XMIT, the intention is to
reset the debugging field just to avoid log floods from nf_debug_ip_*
functions, it is known that the ipvs packets traverse other
hooks, eg. LOCAL_IN->LOCAL_OUT. Use nf_reset_debug instead of nf_reset.
Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[TG3]: Need tx_lock in tg3_set_rx_mode().
Noticed by Eric Lemoine.
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
Merge conflicts with Linus's sparse ioremap() work.
<hadi@cyberus.ca>
[NET]: Use NETDEV_TX_* macros instead of magic numbers.
Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca>
Signed-off-by: David S. Miller <davem@davemloft.net>
<ak@suse.de>
[NET]: Improve netdev->hard_start_xmit() documentation.
With improvements by Francois Romieu and David
S. Miller.
Signed-off-by: David S. Miller <davem@davemloft.net>
<rusty@rustcorp.com.au>
[NETFILTER]: Fix conntrack seq_file handling.
Am travelling, but this passed simple tests here. If this isn't going
in, the current seqfile stuff should be ripped out; it's a mess.
/proc/net/ip_conntrack was changed over to seq_file. However,
seq_file isn't a great fit (a linked list which is changing is not a
good candidate for seq file), and the conversion was done badly.
1) Don't do allocation: simply hand the pointer head of the correct chain.
2) Actually output the original tuple.
3) Lock only when actually traversing hash chain.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
<tgraf@suug.ch>
[NET]: Fix notification on address change via rtnetlink.
Only send NETDEV_CHANGEADDR notifies for address and broadcast changes.
Notify is also sent out if only one of the 2 changes is successful.
Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca>
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[SK98LIN]: Kill dangling netdev->last_stats reference.
Signed-off-by: David S. Miller <davem@davemloft.net>
<davem@nuts.davemloft.net>
[TCP]: Fix fack_count handling in tcp_sacktag_write_queue().
<benh@kernel.crashing.org>
[PATCH] ppc64:Fix missing register in altivec context switch
This is a resend of a patch sent in July and that got lost somewhat,
the "VSCR" register wasn't restored properly from the context on
load_up_altivec (typo), please apply the fix:
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<benh@kernel.crashing.org>
[PATCH] fbdev/radeonfb: Remove bugus radeonfb_read/write
This patch kills the bogus radeonfb_read/write routines. In order to do so,
it adds a new member to fb_info, along with screen_base, which is screen_size,
indicating the mapped area. The default fb_read/write will now use that instead
of fix->smem_len if it is non-0, and radeonfb now sets it to the mapped size
of the framebuffer.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
<torvalds@ppc970.osdl.org>
Linux 2.6.9-rc2
(
Log in to post comments)