Summary of changes from v2.6.4 to v2.6.5-rc1
============================================
<galak@blarg.somerset.sps.mot.com>
PPC32: Added big-endian cfg_addr access
<galak@blarg.somerset.sps.mot.com>
PPC32: Simplified handling of big/little endian pci indirect access
<mpm@selenic.com>
[NET] add netpoll API
<mpm@selenic.com>
[NET] Add netpoll support for tg3
<mpm@selenic.com>
[NET] use the netpoll API to transmit kernel printks over UDP
<ak@muc.de>
[PATCH] netpoll for 3c59x
>From the old -aa tree with minor changes. Orginally done
by Andrea I think.
<ak@muc.de>
[PATCH] netpoll for tulip
Netpoll for tulip. Uses disable_irq() because tulip is unfortunately
still lockless.
<ak@muc.de>
[PATCH] netpoll for amd8111e
netpoll for amd8111e
<ak@muc.de>
[PATCH] Netpoll for pcnet32
netpoll for pcnet32
<ak@muc.de>
[PATCH] fix tg3 netpoll
No need to use disable_irq because tg3 is properly spinlocked.
Can just call the interrupt handler directly.
<ak@muc.de>
[PATCH] netpoll for eepro100
netpoll for eepro100
This was in Ingo's old original netconsole patches.
<shemminger@osdl.org>
[PATCH] 3c59x netpoll typo
Poll code (in net-drivers-2.5-exp) was calling undefined function.
<mpm@selenic.com>
[PATCH] netpoll: fix compilation with CONFIG_NETPOLL_RX
Fix compilation without CONFIG_NETPOLL_RX
<mpm@selenic.com>
[PATCH] netpoll: push zap_completion_queue for lkcd
Move zap_completion_queue call inside netpoll so we don't need to
export it separately.
<prasanna@in.ibm.com>
[netdrvr smc-ultra] netpoll support
Hi Jeff,
Below is the pollcontroller patch for smc ultra net driver.
This patch can be applied over 2.6.0-test9-bk25-netdrvr-exp1.patch
<prasanna@in.ibm.com>
[netdrvr tlan] netpoll support
Hi Jeff,
Below is the pollcontroller patch for tlan network device driver.
This patch can be applied over 2.6.0-test9-bk25-netdrvr-exp1.patch
<pavel@ucw.cz>
[netdrvr via-rhine] add netpoll support
<mpm@selenic.com>
[PATCH] netpoll abort for bad interface
Fix bug freeing nonexistent dev when aborting on bad interface name.
tiny-mpm/net/core/netpoll.c | 2 +-
1 files changed, 1 insertion(+), 1 deletion(-)
<mpm@selenic.com>
[netdrvr] add netpoll support to several 8390-based drivers
<mpm@selenic.com>
[PATCH] netconsole init return code
On Sat, Jan 10, 2004 at 08:07:09PM -0500, Jeff Garzik wrote:
> Matt Mackall wrote:
> > tiny-mpm/drivers/net/netconsole.c | 4 ++--
> > 1 files changed, 2 insertions(+), 2 deletions(-)
> >
> >diff -puN drivers/net/netconsole.c~netconsole-error
> >drivers/net/netconsole.c
> >17:40:59.000000000 -0600
> >+++ tiny-mpm/drivers/net/netconsole.c 2004-01-10 17:42:12.000000000 -0600
> >@@ -105,11 +105,11 @@ static int init_netconsole(void)
> >
> > if(!configured) {
> > printk("netconsole: not configured, aborting\n");
> >- return 1;
> >+ return -EINVAL;
> > }
> >
> > if(netpoll_setup(&np))
> >- return 1;
> >+ return -EINVAL;
>
>
> oops. obviously I read this after I sent a previous email.
>
> Can you please resend the "configured" patch, which I already deleted?
tiny-mpm/drivers/net/netconsole.c | 14 ++++++++++----
1 files changed, 10 insertions(+), 4 deletions(-)
<mpm@selenic.com>
[PATCH] netconsole init return code
tiny-mpm/drivers/net/netconsole.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
<mpm@selenic.com>
[PATCH] netpoll carrier handling
On Sat, Jan 10, 2004 at 08:04:10PM -0500, Jeff Garzik wrote:
>
> if you are gonna all verbal n such with 'atleast' and 'atmost', then use
> time_after() rather than !time_before() ;-)
tiny-mpm/net/core/netpoll.c | 16 ++++++++++++----
1 files changed, 12 insertions(+), 4 deletions(-)
<akpm@osdl.org>
[PATCH] fix netpoll printk bug
<mpm@selenic.com>
[PATCH] fix for netpoll braindamage for 64-bit
Spotted by Jim Houston on amd64.
<akpm@osdl.org>
[PATCH] netconsole warning fix
drivers/net/netconsole.c:99: warning: initialization from incompatible pointer type
<perrye@linuxmail.org>
[PATCH] I2C: i2c-voodoo3.c needs I2C_ADAP_CLASS_TV_ANALOG
The Voodoo3 i2c bus has either a bt869 tv-out chip, or also a tv tuner,
decoder and msp3400. Without I2C_ADAP_CLASS_TV_ANALOG, the i2c clients
would have to do a strcmp of the adapter name to distiguish between the
i2c and ddc adapters. Yes, they should be able to tell if the chip at a
given address is what they are looking for, but in the case of the v3tv
module, which is the v4l device, in the 2.4 kerenl I've got it set to
create a dummy client, and the strcmp is the only way to distinguish the
i2c from the ddc. In the 2.6 kernel, class can be defined, simplifying
things for the v3tv module.
<khali@linux-fr.org>
[PATCH] I2C: Enable debugging in fscher
I just noticed that I forgot to enable debugging in the new fscher
driver. Sorry for that. Here is a patch that fixes this.
<khali@linux-fr.org>
[PATCH] I2C: Credit James Bolt in w83l785ts
I forgot to give the credit he deserves to James Bolt for testing the
latest w83l785ts driver changes. Here is a patch that fixes that.
<khali@linux-fr.org>
[PATCH] I2C: New chip driver ported: lm80
Here is a port for the lm80 driver, which supports LM80 chips by
National Semiconductor. The port is mostly the work of Tiago Sousa,
which I reviewed and polished as necessary.
<bunk@fs.tum.de>
[PATCH] I2C: update I2C help text
VIDEO_BT848 selects I2C_ALGOBIT.
<dsaxena@plexity.net>
[PATCH] I2C: Support for IXP42x GPIO-based I2C
Following is an updated patch to add support for using the GPIO lines
on an Intel IXP42x SOC for I2C. Changes since last patch include:
- Cleanups as per Jean Delvare's comments
- Rename functions as 42x instead of 425
- Change the comments at the top of the file to better reflect the
purpose of this driver.
This code has been tested with the eeprom client driver and worked
w/o any problems.
<greg@kroah.com>
I2C: fix oops in i2c-ali1535 driver if no hardware is present.
Thanks to Dave Jones for pointing this out.
<trini@kernel.crashing.org>
PPC32: More cleanups of the IBM Spruce code.
From Randy Vinson <rvinson@mvista.com>.
<trini@kernel.crashing.org>
PPC32: Fix a thinko in the gen550 code.
From Randy Vinson <rvinson@mvista.com>.
<trini@kernel.crashing.org>
PPC32: Make {in,out}[bwl] be consistent on all platforms.
This exposes warnings in todc_time.c for everyone, and then
fixes them.
<trini@kernel.crashing.org>
PPC32: Make sure the read in in_8, in_{le,be}{16,32} happens before we return.
A forward port of changes from Paul Mackerras.
<akpm@osdl.org>
[PATCH] eepro100.c warning fix
drivers/net/eepro100.c:545: warning: `poll_speedo' declared `static' but never defined
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Intel8x0 driver
- added the ac97 quirk for Intel D845WN (82801BA)
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
AC97 Codec Core
- fixed the mic gpio switch handling on the old ALC650.
- fixed the wrong register initialization on ALC655/658.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
AC97 Codec Core
- fixed the detection of surround/LFE VRA on ALC650.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
USB generic driver
- assign PCM unique (sub)streams for each USB format type.
this will avoid the mix up of format I and format III on M-audio transit.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Digigram VX core
- fixed the wrong lock (bug #2052) - use spin_lock_irqsave() now.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Documentation,ALSA Core,PCI drivers,MIXART driver,IGNORE
- added snd-mixart driver for Digigram miXart boards.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Digigram VX core
- fixed another wrong lock.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
ICE1712 driver,ICE1724 driver
- added the support of independent surround PCM for ice1724.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Intel8x0 driver
- return with IRQ_RETVAL() for the unknown IRQ bits (often found on nForce2)
with debug messages.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
VIA82xx driver
- changed the default DXS of GA-7VAXP to NO_VRA.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
AC97 Codec Core
- fix for AD1885
- set the default MISC register value.
- disabled 'digital audio mode', which seems problematic on many boards.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
AC97 Codec Core
Clemens Ladisch <clemens@ladisch.de>:
added AD1888 support.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
USB generic driver
Clemens Ladisch <clemens@ladisch.de>:
Terratec PHASE 26 MIDI support
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Digigram VX core
Alain Cretet <cretet@digigram.com>:
- fixed the missing input VU meter.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Digigram VX core
Alain Cretet <cretet@digigram.com>:
- fixed the 24bit mono recording.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
ALSA sequencer
- fixed the race conditions.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
AC97 Codec Core
- fixed the initial value of AD_MISC register for AD1885.
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
Intel8x0 driver
Added spinlock to pointer callback - ichdev->position is not changed atomically
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
VIA82xx driver
- added the dxs default for MSI KT6 Delta-SR.
- fixed the calculation of rate bits (based on 0x100000).
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
MIXART driver
- replaced the debug messages with snd_printdd().
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Intel8x0 driver
- clean up the irq status bit debugging.
- added nVidia Ck8S support.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
ALSA<-OSS sequencer
- fixed the behavior of SNDCTL_SEQ_IOCTL.
(don't close the device).
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ALSA<-OSS emulation
Added period_frames to fix poll behavior
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ALSA<-OSS emulation
Fixed oss.period_frames setup
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
PCM Midlevel
Added OSS period frames to proc interface
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ALSA<-OSS emulation
Fixed oops regarding last period_frames update
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
USB generic driver
Clemens Ladisch <clemens@ladisch.de>:
- added the quirk for Edirol UA-3FX.
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
AC97 Codec Core
Fixed swap_headphone() when headpone controls do not exist
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
Trident driver
Fixed s/pdif control initialization
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
RME HDSP driver
Fixed wrong assert, added checks for copy_*_user functions
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ALSA sequencer
Clemens Ladisch <clemens@ladisch.de>
Timestamping (if enabled on a subscription or a port) is not applied
to the quoted event but to the quoting event. This patch adds a
function to copy only selected fields into the event to be delivered.
- fix KERNEL_QUOTE event timestamping
- fix typo in port_broadcast_event
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
MPU401 UART
Clemens Ladisch <clemens@ladisch.de>
remove unneeded technical information from port names
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ALSA sequencer
Clemens Ladisch <clemens@ladisch.de>
This patch reverses the order of the 'Rawmidi x' and rawmidi name
parts of client names to enable selecting clients by a unique prefix
(as snd_seq_parse_address does).
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
USB generic driver
Clemens Ladisch <clemens@ladisch.de>
- add device-specific port names
- begin numbering ports at 1
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ALSA sequencer
Clemens Ladisch <clemens@ladisch.de>
- fix typo in port flags
- add GM2 capability bit
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
MIXART driver
Added missing header file inclusion
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
Documentation,ALSA Core,PCMCIA Kconfig,PCMCIA
Sound Core PDAudioCF driver
Added Sound Core PDAudioCF driver
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
EMU10K1/EMU10K2 driver
Fixed page overflow
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
Serial BUS drivers
Moved AK4117 from alsa-driver tree to satisfy dependency for PDAudioCF driver
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
AK4117 receiver
Added missing ak4117.h file
<perex@suse.cz>
Fixed compilation of PDAudioCF driver
<khali@linux-fr.org>
[PATCH] I2C: fix space in message
BTW, I found something to be fixed in i2c-core:
<khali@linux-fr.org>
[PATCH] I2C: fix mor rmmod oopses
> Oh nevermind, that's just a dumb driver. It's doing a release_region
> on memory it didn't get. Stupid, stupid, stupid...
While we're at it, what about fixing two other drivers that obviously
have the same problem?
(BTW I didn't get an oops as I tried reproducing the problem, only a
"Trying to free nonexistent resource" in dmesg.)
<khali@linux-fr.org>
[PATCH] I2C: Lowercase chips name
This patch brings the name field of adm1021.c, it87.c and via686a.c in
conformance with the defined standard ("all lowercase, as simple as the
driver name itself").
<khali@linux-fr.org>
[PATCH] I2C: fix Hangs with w83781d
Here is a patch for the w83781d driver that prevents register bits from
being arbitrary changed when we force temp2/3 to comparator mode. Keith
Duthie had been reporting various problems with that driver and finally
found that this arbitrary change was the cause of them. He also tested
this patch, which he confirmed to work.
<khali@linux-fr.org>
[PATCH] I2C: fix it87 sensor type
Here comes a patch by Takeru Komoriya which fixes the way the it87
driver handles temperature sensor types selection.
* Use the same values as the CVS driver and sensors program.
* Better comments.
* Get rid of the old setting method (already gone in CVS).
* Handle invalid values correctly.
<khali@linux-fr.org>
[PATCH] I2C: fix another oops in i2c-core with debug
Some times ago, you fixed an oops in i2c-core when debugging is enabled:
http://marc.theaimsgroup.com/?l=linux-kernel&m=107585749612115&w=2
Looks like you missed that second one:
<khali@linux-fr.org>
[PATCH] I2C: Remove asb100 support from w83781d
Now that we have a separate asb100 driver, we can remove the (bad)
support of it from the w83781d driver. Following patch does this. I've
already cleaned this up in our CVS repository.
<khali@linux-fr.org>
[PATCH] I2C: update for sysfs-interface documentation
<khali@linux-fr.org>
[PATCH] I2C: rename sysfs files, part 1 of 2
Here it is. The associated libsensors patch is here:
http://jdelvare.net1.nerim.net/sensors/libsensors-sysfs-names-1.diff
(not applied yet, on purpose)
<khali@linux-fr.org>
[PATCH] I2C: rename sysfs files, part 2 of 2
Here is the second step of my sysfs renaming plan.
This one does the following renames (as I already announced on the
LKML):
temp<n>_hyst -> temp<n>_max_hyst or temp<n>_crit_hyst
sensor<n> -> temp<n>_type
pwm<n> -> fan<n>_pwm
pwm<n>_enable -> fan<n>_pwm_enable
vid -> in<n>_ref
The associated libsensors patch is here:
http://jdelvare.net1.nerim.net/sensors/libsensors-sysfs-names-2.diff
(not applied yet, on purpose)
Note that the w83781d part is a bit more complex, not only because it is
the only driver to require the 5 changes, but also because at some point
the macros assume that the internal variable names match the sysfs
names, so I had to change them too (better than rewriting the macros,
methinks).
For reference, here is the list of changes, by driver:
asb100:
hyst -> max_hyst (4)
pwm -> fan_pwm (1)
pwm_enable -> fan_pwm_enable (1)
vid -> in_ref (1)
fscher:
pwm -> fan_pwm (3)
gl518sm:
hyst -> max_hyst (1)
it87:
sensor -> temp_type (3)
lm75:
hyst -> max_hyst (1)
lm78:
hyst -> max_hyst (1)
vid -> in_ref (1)
lm85:
pwm -> fan_pwm (3)
pwm_enable -> fan_pwm_enable (3)
vid -> in_ref (1)
lm90:
hyst -> crit_hyst (2)
via686a:
hyst -> max_hyst (3)
w83781d:
hyst -> max_hyst (2)
sensor -> temp_type (3)
pwm -> fan_pwm (4)
pwm_enable -> fan_pwm_enable (1)
vid -> in_ref (1)
There's also a documentation update. There will be one more after that
(to make it more readable, no contents change), and a patch to lm83.c to
bring it to compliance with the (new) standard. (If you wonder why I did
not change it with the other drivers: because it was *already* not in
compliance with the old standard. There's some real work to do for this
one.)
<mhoffman@lightlink.com>
[PATCH] PCI: fix i2c quirk for SiS735 chipset SMBus driver
<greg@kroah.com>
I2C: fix compiler warnings in 2 drivers.
<trini@kernel.crashing.org>
PPC32: print useful flags in oops, like x86 / ppc64.
<brking@us.ibm.com>
[PATCH] SCSI: Recognize device type 0x0C
Device type 0x0C is RAID, so show it as such
<jeremy@sgi.com>
[PATCH] SCSI: remove some SGI devices from the device list
Some SGI RAID devices identify as being SCSI-3, so they don't need
to be in the scsi_static_device_list any more. I've tested to make
sure that all luns still show up in a sparse, large config.
So I'm proposing removing them. Thanks to hch for the suggestion.
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
USB generic driver
usb_ch9.h is already included in usb.h
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
ALS4000 driver
- fixed the build without joystick support.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
CMIPCI driver
- use 0x201 as the default joystick port address.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Documentation
- fixed the description for snd-cmipci module option.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
AC97 Codec Core
- fixed the handling of S/PDIF rates.
the IEC958 status bits are updated according to the current rate.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
MIXART driver
- fixed the race condition in message flow.
- removed obsolete debug prints.
- make prepare callback non-atomic.
- synchronize with the pending messages in prepare and hw_free callbacks.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
PCM Midlevel,Intel8x0 driver
- added snd_pcm_limit_hw_rates() to determine the min/max rates from
rates bits.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
VIA82xx driver
- added dxs_support default for EPIA MII.
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
EMU10K1/EMU10K2 driver
James Courtier-Dutton <James@superbug.demon.co.uk>, some additions
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
Sound Core PDAudioCF driver
akpm@osdl.org
Fix pdaudiocf_irq.c for gcc-3.5
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Documentation
- fixed the example code of ctl info callback with enum type.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
VIA82xx driver
- added the dxs_support default for Uniwill laptop.
<jejb@mulgrave.(none)>
SCSI: mptfusion update to 3.00.04
From: Moore, Eric Dean <Emoore@lsil.com>
<clemy@clemy.org>
[PATCH] I2C: add w83627hf driver
The following patch against kernel 2.6.3 adds the w83627hf driver,
I have ported from the 2.4 version.
Jean Delvare has asked me to send this patch to you for applying.
I have tested it on w83627thf. Mark Hoffman has reviewed the code
and has also tested it on w83627thf.
<alex.williamson@hp.com>
ia64: minor 2.6 sba_iommu update
This is a minor update to sba_iommu initialization code. I moved the
relaxed ordering to the zx1 specific init routine, those registers don't
do anything on sx1000. The iommu page size setup is more generalized on
ACPI ID, so the sx1000 specific init routine goes away. And the virtual
dma_mask on zx1 was tweaked a little to better reflect the memory
address space.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
PPC Tumbler driver
fixed the resume of bass/treble volumes on snapper.
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ALSA Core
Fixed snd_info_set_text_ops() wwhen CONFIG_PROC_FS is not defined
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
Sound Core PDAudioCF driver
Fixed pcm->name settings
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
AK4531 codec
Aux Input Route -> Aux Capture Route renaming
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
PCI drivers
Select CONFIG_VIDEO_DEV when CONFIG_SND_FM801_TEA575X is wanted
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
OPL3,OPL4,Synth
Fixed sequencer dependency for opl3, opl4 and emux objects.
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
PCI drivers
<akpm@osdl.org>
fix Kconfig thinko
<perex@suse.cz>
ALSA - 1.0.3
<komoriya@paken.org>
[PATCH] I2C: it87 reset option
I wrote a patch which adds reset option to the it87 driver talking
with Jean Delvare.
* Do not reset the registers unless users want to do because
resetting registers makes all fans go to full power and we can
usually rely on values set by BIOS
* Remove all limit initializations as they should be done from
user-space
* Better register mask for start of monitoring
<willy@debian.org>
[PATCH] ia64: add zx1_defconfig
Here's my attempt at a zx1_defconfig. I haven't checked it on many
of the zx1 boxes (only zx2000 and rx2600) but I've set some options
I know are needed on the other boxes.
<willy@debian.org>
[PATCH] ia64: SAL cleanup
This patch reorganises sal.c and adds a small amount of new functionality.
- Introduce sal_revision to report what revision of the SAL spec is
supported by the system.
- Introduce sal_version to report what version of the vendor's SAL
implementation is present.
- Introduce SAL_VERSION_CODE to allow for easy comparisons.
- Print the version at boot, and remove the 'oem=' and 'vendor=' strings.
- Refactor ia64_sal_init() into several smaller functions.
- Delete the dead variables 'max' and 'min'.
- Stop printing the pal_proc and sal_proc entry addresses.
- Print "None" if there are no SAL platform features.
<willy@debian.org>
[PATCH] ia64: Add support for extended PCI config space
Support for extended config space on ia64.
- Add the new parameter 'type' to ia64_sal_pci_config_{read,write}
- Change callers to match.
- Don't check `value' for NULL -- drivers/pci/access.c guarantees it isn't.
- Make pci_sal_ops static.
- Add pci_sal_ext_ops.
- Introduce pci_set_sal_ops() as an arch_initcall to ensure the raw_pci_ops
get set before we walk the ACPI namespace to discover PCI root bridges
<davidm@tiger.hpl.hp.com>
ia64: Move irq_enter()/irq_exit() from hardirq.h to irq_ia64.c. The work
done by these routines is very special and needs to be done
at exactly the right time. Removing it from the header-file
reduces the risk of accidental misuse. Other arch maintainers agree
that this is the Right Thing to do.
<hch@lst.de>
[PATCH] ia64: simserial module refcounting update
<trini@kernel.crashing.org>
PPC32: Kill off arch/ppc/boot/prep and rearrange some files.
<akpm@osdl.org>
[PATCH] ini9100u build fix
From: Christoph Hellwig <hch@infradead.org>
- Remove dead forward declarations
- Fix compilation of the interrupt handler.
<garloff@suse.de>
[PATCH] SCSI sysfs host name support
OK, let's export the proc_name then. It's some name that can be used
to identify the driver, works for code both compiled statically or
as module, is reasonably short and very often resembles the module
name.
For the module_name, let's wait for a generic sysfs solution.
<trini@kernel.crashing.org>
PPC32: Update the TODC code from 2.4.
<trini@kernel.crashing.org>
PPC32: Add and make use of ppc_md.rtc_{read,write}_val.
We can then fix IBM PReP machines and their RTCs.
<trini@kernel.crashing.org>
PPC32: Fix 'make znetboot' on CONFIG_PPC_MULTIPLATFORM.
<trini@kernel.crashing.org>
PPC32: Fix an old thinko in arch/ppc/boot/simple/relocate.S
<davidm@tiger.hpl.hp.com>
ia64: Rename ia64_invoke_kernel_thread_helper() to start_kernel_thread()
for symmetry with start_kernel() and to make it obvious when the
end of the call-chain has been reached.
<davidm@tiger.hpl.hp.com>
ia64: More SAL cleanups/fixes.
Based on patch by Matthew Wilcox: make kernel work with old (broken) firmware
again and fix UP build problems.
<Kai.Makisara@kolumbus.fi>
[PATCH] SCSI tape sysfs name fixes
- The sysfs directory names are changed from stxmy[n] to the names in
devices.txt. Below is an example for the first tape drive:
/sys/class/scsi_tape/
|-- nst0
|-- nst0a
|-- nst0l
|-- nst0m
|-- st0
|-- st0a
|-- st0l
`-- st0m
- Name generation for non-default number of modes fixed so that same
minors get same names even with different number of modes.
- devfs minor generation fixed to work with non-default number of modes
- The alignment requirement is printed in the line logged when a tape is
attached.
<edwardsg@sgi.com>
ia64: fix missing include in include/asm-ia64/sn/router.h
<dave.jiang@intel.com>
[PATCH] I2C: IOP3xx i2c driver update
Here's a small patch update to the i2c-iop3xx.c in
drivers/i2c/busses/. It fixes some functions' return value and updated
the irq handler to be compatible with kernel 2.6. Thanks!
<greg@kroah.com>
[PATCH] I2C: show adapter name in i2c-dev class directory to make it easier for userspace tools.
<jbarnes@sgi.com>
[PATCH] ia64: Don't assume iosapic interrupt controllers
Some ia64 machines don't use an iosapic interrupt controller (a
flagrant violation of the DIG64 spec), so don't assume it's there in
mca.c. Platforms that provide a ACPI_INTERRUPT_CPEI vector are
responsible for registering its interrupt controller type in platform
specific code, iosapic.c:iosapic_register_platform_intr() does this
for platforms with an iosapic where the CPEI vector is listed in the
ACPI namespace, and on sn2, all external interrupts are assigned the
irq_type_sn type, so this change of assumption should be safe.
<greg@kroah.com>
[PATCH] I2C: keep i2c-dev numbers in sync with i2c adapter numbers
This makes userspace tools easier to figure out which i2c-dev device is
assigned to which i2c adapter.
Yes, we can overflow the i2c dev array right now, but that would take a
lot of i2c adapter modprobe/rmmod cycles. That will be fixed up soon.
<len.brown@intel.com>
asmlinkage acpi_enter_sleep_state_s4bios() - from Pavel Machek
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
FM801 driver
tea575x can be module, too
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
Big DMA cleanup originated by Russell King <rmk+alsa@arm.linux.org.uk>
* Russel
- introduced 'struct device' support for 2.6 dma_alloc_coherent()
* Jaroslav
- removed all bus-specific allocation functions
- extended snd_dma_alloc_pages/snd_dma_free_pages to handle all bus types
- recoded all (or almost all) device drivers
- sgbuf functions are bus independent now
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
CMI8330 driver,ES18xx driver,AD1816A driver,AD1848 driver,CS4231 driver
ES1688 driver,GUS Library,Opti9xx drivers,SB16/AWE driver,SB8 driver
Fixed old function name (snd_pcm_isa_flags -> snd_pcm_dma_flags)
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ALSA Core
Russell King <rmk+alsa@arm.linux.org.uk>
This is part of a patch series to clean up sound/core/Makefile in Linux
2.6.4-rc1.
- Add SND_TIMER, SND_PCM, SND_HWDEP and SND_RAWMIDI configuration symbols.
These symbols select which modules in sound/core get built, building
snd-timer, snd-pcm, snd-hwdep and snd-rawmidi respectively.
- Add reverse dependencies (select) to select these symbols for core
components where necessary.
- Hide SND_OSSEMUL - we can select this when SND_MIXER_OSS, SND_PCM_OSS
or SND_SEQUENCER_OSS are selected automatically.
- Tweak Makefile to use these new symbols to build these modules.
- Since we now build appropriate modules for core components according
to the new configuration symbols, (eg, snd-timer if SND_SEQUENCER is
selected) we can delete these duplications.
<perex@suse.cz>
ALSA CVS update - Clemens Ladisch <clemens@ladisch.de>
USB generic driver
Fix for Creamware Noah:
search class-specific endpoint descriptor in the
extra descriptors of the sync ep, too
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Memalloc module,ALSA Core
- fixed the lock up with SG-buffer handler.
- removed non-existing export symbol.
- clean up ifdefs.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
ES1968 driver
- fixed the handling of DMA buffer with the recent API change.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Intel8x0 driver
- fixed the allocation/release of buffer descriptor table.
<jejb@mulgrave.(none)>
Add SCSI lots of disk support
From: Kurt Garloff <garloff@suse.de>
Based on earlier patches from
Badari Pulavarty <pbadari@us.ibm.com>,
Matthew Wilcox <willy@debian.org>
<michaelc@cs.wisc.edu>
[PATCH] add missing free sgtable in scsi_init_io error path
I was testing different errors while running multipath, and becuase of
a bug in dm-multiapth I hit the "Incorrect number of segments after
building list" error. The attached patch just adds a missing
scsi_release_buffers() at the bottom of the scsi_init_io where the
table was allocated successfully, but you can return BLKPREP_KILL when
someone messes up segment counts.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Memalloc module
- added back the output of PCI dma buffers in proc file.
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
Intel8x0 driver
Converted to new DMA allocation API
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ARM,ALSA Core,Generic drivers,ISA,PARISC,PCI drivers,PCMCIA Kconfig,PPC
SPARC,USB
This is part of a patch series to clean up sound/core/Makefile in Linux
2.6.4-rc1.
- Add 'select SND_PCM' statements to appropriate Kconfig entries for
drivers whose configuration symbol is used to build snd-pcm,
snd-timer, and snd-page-alloc.
- Remove snd-pcm, snd-timer and snd-page-alloc from these in
sound/core/Makefile.
- Remove snd from these entries as well - all SND_xxx configuration
symbols depend on CONFIG_SND, so we won't even consider building
any of these drivers unless SND is already set to 'y' or 'm'.
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ALSA Core,Generic drivers,ISA,PCI drivers,USB
Russell King <rmk+alsa@arm.linux.org.uk>
This is part of a patch series to clean up sound/core/Makefile in Linux
2.6.4-rc1.
- Add SND_RAWMIDI for drivers which use the snd-rawmidi module.
- Remove snd-rawmidi from these drivers entries in sound/core/Makefile
- Remove any sound/core/Makefile entries which are left empty.
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ALSA Core,ISA,PCI drivers,PCMCIA Kconfig
Russell King <rmk+alsa@arm.linux.org.uk>
This is part of a patch series to clean up sound/core/Makefile in Linux
2.6.4-rc1.
- Add SND_HWDEP for drivers which use the snd-hwdep module.
- Remove snd-hwdep from these drivers entries in sound/core/Makefile,
removing any sound/core/Makefile entries which are left empty.
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ALSA Core,Generic drivers
Russell King <rmk+alsa@arm.linux.org.uk>
This is part of a patch series to clean up sound/core/Makefile in Linux
2.6.4-rc1.
- Add SND_TIMER for drivers which use the snd-timer module.
- Remove snd-timer from these drivers entries in sound/core/Makefile,
removing any sound/core/Makefile entries which are left empty.
- Since the 'top level module dependency' lists are now gone, remove
the comment.
- Also, since we only mention objects once, remove the sorting of obj-m
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
Generic drivers,MPU401 UART,OPL3,OPL4,ISA,PCI drivers
More Kconfig and Makefile cleanups following Russell's direction:
- added SND_MP401_UART tristate
- added SND_OPL3_LIB tristate
- added SND_OPL4_LIB tristate
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
Generic drivers,Digigram VX core,PCI drivers,PCMCIA Kconfig
More Kconfig and Makefile cleanups following Russell's direction:
- added SND_VX_LIB tristate
<perex@suse.cz>
ALSA CVS update - Clemens Ladisch <clemens@ladisch.de>
USB generic driver
- fix non-working control port on Roland U-8
- more port names
- new MIDI quirks for Roland MMP-2, V-SYNTH, VariOS, FP-*, GI-20,
BOSS GS-10, Edirol UR-80, PCR-A, PCR-1
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Memalloc module
fixed the missing inclusion.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
PCI drivers,AC97 Codec Core
- added CONFIG_SND_AC97_CODEC and simplify Kconfig and Makefiles.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Memalloc module
- suppress allocation failure warnings with large buffers.
<perex@suse.cz>
ALSA CVS update - Clemens Ladisch <clemens@ladisch.de>
USB generic driver
fixes for broken SB Audigy 2 NX descriptors
<perex@suse.cz>
ALSA - fixed compilation
<brking@us.ibm.com>
[PATCH] SCSI Midlayer initiated START_UNIT
The ipr driver that is currently out for review talks to disk array devices
that require a START_UNIT prior to media ops, similar to normal scsi devices.
However, any time the adapter gets reset, these devices end up needing another
START_UNIT. This causes problems with the current error handling and these
devices get taken offline when this occurs. Attached is a patch which will
better handle these devices and issue a START_UNIT from the error handler
when appropriate.
<jejb@mulgrave.(none)>
Add SCSI transport attributes
From: Martin Hicks <mort@wildopensource.com>
Transport attributes are classes which can be
attached to by a scsi driver to export (and
later control) transport based properties.
<schwab@suse.de>
ia64: Fix staircase effect on Altix serial console
Serial console output on Altix didn't convert NL to CRNL.
<len.brown@intel.com>
[ACPI] comments
<len.brown@intel.com>
[ACPI] global lock macro fixes (Paul Menage, Luming Yu)
http://bugzilla.kernel.org/show_bug.cgi?id=1669
<davej@redhat.com>
[PATCH] sort SCSI blacklist
No changes whatsoever, just moves entries around to sort
on vendor. I kept the multiple sections, and just
sorted per section.
<davej@redhat.com>
[PATCH] USB 6-in-1 card reader blacklist addition
Yes, someone really was stupid enough to make a device with
such a dumb vendor name. In combination with the device name
and rev number though, it shouldn't cause any false positives.
Device in question is some no-name 6-in-1 usb card reader,
whose slots all appear on different LUNs, requiring you
fiddle with scis_mod's max_luns argument unless you have this patch.
<James.Bottomley@steeleye.com>
[PATCH] Add full complement of SPI transport attributes
This patch does two things:
1. Add all the other ppr type transport attributes to the spi class
2. make period settable as the ppr/sdtr period, but display in ns for
the user.
<akpm@osdl.org>
[PATCH] gcc-3.5: acpi build fix
Current gcc requires that both the declaration and the definition of
functions describe the same register conventions.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
ALSA Core
- show the error message when the given card index is not available.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
PPC Tumbler driver
- fixed the mic input on snapper.
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ICE1724 driver,ICE1712 driver
Dirk Kalis <Dirk.Kalis@t-online.de>
Added num_total_adcs.
Separated analog input / s/pdif input controls
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ALSA<-OSS sequencer
mpkelly - fixed channel settings for input events
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Opti9xx drivers
fixed the code with obsolete check_region().
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
AC97 Codec Core,Intel8x0 driver,VIA82xx driver,CS46xx driver
- fixed ALC100/P Master/PCM volume handling (h/w bug)
- added ALC65x JACK quirk
- disabled IC5 PERL mobo quirk
- fixed Mic/Center sharing switch on ALC65x.
- fixed Mic BIAS on ALC650.
- added extra delay in the resume if needed.
- renamed 'External Amplifier Power Down' to 'External Amplifier'
- added a workaround for the reversed EAPD of cs46xx voyetra.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Intel8x0 driver
fixed the interrupt problem with NForce(2).
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
PCM Midlevel
Fix in playback_silence routine - don't silence whole buffer at start if samples are filled
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
ALSA Core
PCM API is 2.0.6
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Memalloc module,PCM Midlevel,ALSA Core,CMI8330 driver,ES18xx driver
Sound Scape driver,AD1816A driver,AD1848 driver,CS4231 driver
ES1688 driver,GUS Library,Opti9xx drivers,SB16/AWE driver,SB8 driver
ALS4000 driver,AZT3328 driver,BT87x driver,CMIPCI driver,CS4281 driver
ENS1370/1+ driver,ES1938 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,RME HDSP driver,RME9652 driver,Trident driver
YMFPCI driver,Sound Core PDAudioCF driver,USB generic driver
- clean up the DMA code again.
now only struct device pointer is handled for every BUS type.
the pointer must be given via the corresponding macro snd_dma_xxx_data().
- added the hack for dma_alloc_coherent() to accept dev = NULL for ISA
buffers.
- added the missing include files.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
PARISC Harmony driver,SPARC AMD7930 driver,SPARC cs4231 driver
fixed for the new DMA buffer handler.
<perex@suse.cz>
ALSA - fix compilation (header files)
<jejb@mulgrave.(none)>
SCSI: Make SPI transport attributes mutable
This adds the final missing piece to the transport attributes: A
published API by which they can be set and retrieved (SPI attributes
only). The sysfs field only appears writeable if the driver supplied a
set method in the attribute template, so unsettable attributes show up
as read only.
The consequence now is that the spi transport attribute class is no
longer a simple exported structure: the driver has to attach to the spi
transport class at module initialisation.
<jejb@mulgrave.(none)>
SCSI: implement transport attributes for 53c700
his patch moves the internal storage of the offset and period to the
transport class and adds methods to set them (there's no need for a get
method since the value in the transport class is exactly what the driver
believes the transport agreement to be).
You can see how this type of use of the transport class is supposed to
work: the driver now has init and exit routines attaching and releasing
the transport class (that's the reason for the Makefile perturbation
because it has to init before its users). The correct attributes are
set up in slave_configure() for negotiation and we now export the period
and offset setting functions.
<davidm@tiger.hpl.hp.com>
ia64: Reserve 3 syscall numbers for Andi Kleen's NUMA interface.
<pfg@sgi.com>
[PATCH] ia64: fix SN2 console driver to use console_initcall()
<jejb@mulgrave.(none)>
fix Kconfig select problem with SCSI_SPI_ATTRS
spotted by akpm (the select was misspelled in
the SCSI_SIM710 Kconfig option)
<jejb@mulgrave.(none)>
CONFIG_SCSI_AIC7XXX Kconfig bug
From: Randy.Dunlap <rddunlap@xenotime.net>,olh@suse.de
make Adaptec AIC7xyx drivers depend on SCSI tristate
(without this you can compile aic7xxx into the
kernel when SCSI is only modular)
<jeremy@sgi.com>
[libata] Split up shared IO register locations into individual components
Most ATA host controllers follow a standard layout for the
ATA shadow registers, where command/status, error/feature, and
devctl/altstatus share a single bus I/O address, because one register
of each pair is read-only, and the other is write-only.
On the Vitesse/Intel chip, all registers are given distinction bus I/O
addresses, which necessitates changing the libata data structures
to cope with this. This simply involves storing a few more bus addresses.
<jeremy@sgi.com>
[libata] misc fixes, and an export
* export ata_host_intr
* fix debugging printk
* the write of Device Control register, which occurs between
SATA phy reset and the read of device signature, apparently
clobbers some of the register values (namely Error register)
that are needed to determine whether or not the device passed
diagnostics. Make this write follow the device diag checking
and classification, instead.
<jeremy@sgi.com>
[libata] Add new driver for Vitesse VSC-7174.
<greg@kroah.com>
Driver core: make CONFIG_DEBUG_DRIVER implementation a whole lot cleaner
<khali@linux-fr.org>
[PATCH] I2C: Prevent i2c-dev oops with debug
Looks like i2c-dev suffers the same problem with dev_dbg as i2c-core did
twice. Here is a patch that fixed a oops I and another user were
experiencing when running sensors-detect.
<rmk+lkml@arm.linux.org.uk>
[PATCH] I2C: Fix i2c_use_client()
i2c_use_client() contains a bogosity. If i2c_inc_use_client() returns
success, i2c_use_client() returns an error. If i2c_inc_use_client()
fails, i2c_use_client() might succeed.
Fix it so that (a) we get the correct sense between these two functions,
and (b) propagate the error code from i2c_inc_use_client(), rather than
making our own one up.
<mhoffman@lightlink.com>
[PATCH] I2C: sysfs interface update for w83627hf
This patch updates the sysfs names of the w83627hf driver
to match the new standard. The patch applies on top of
one recently applied to your tree [1]. I have tested it
using a w83627thf & the latest lm_sensors CVS. Please apply.
[1] http://archives.andrew.net.au/lm-sensors/msg06746.html
<rddunlap@osdl.org>
[PATCH] I2C: fix i2c-prosavage.c section usage
prosavage_remove() is called during init, so it shouldn't be
marked as exit code. (It matters when CONFIG_HOTPLUG=n.)
<khali@linux-fr.org>
[PATCH] I2C: fix i2c adapters class for now
Please accept this temporary fix for the class issue. I'd like users of
the i2c-ali1535, i2c-sis5595 and i2c-via driver to be able to use
sensors as soon as possible, even if we have not yet determined what our
policy WRT classes should be.
Thanks.
BTW, don't you think I2C_ADAP_CLASS_SMBUS is a misnomer? It's about
hardware monitoring, not the SMBus protocol. I'd say
I2C_ADAP_CLASS_HWMON or I2C_ADAP_CLASS_SENSORS would have been more
appropriate (although it may be a bit late for a change...)
<khali@linux-fr.org>
[PATCH] I2c: Kconfig for non-sensors i2c chip drivers
Quoting myself:
> I think that it would make sense to have a specific menu entry for
> these, separate from the sensors stuff. Looks like an easy thing to
> do.
Here is a proposed patch that does this. Comments welcome.
<jejb@mulgrave.(none)>
Make the SCSI mempool allocations variable
We still retain the default MAX_PHYS_SEGMENTS (which
is currently 128). However, a mechanism for raising
the limit correctly is added for people who wish to
benchmark with larger sglists.
A decision on how we present this to the user will be
taken at a later time when more information about
the usefulness of a higher limit is available
<jejb@mulgrave.(none)>
MPT Fusion driver 3.01.00 update
From: Moore, Eric Dean <Emoore@lsil.com>
<lenehan@twibble.org>
[PATCH] dc395x [1/5] - formatting cleanups
Formatting cleanups.
- Remove lots of comments that were out-of-date, wrong, or now
described things that had been simplified that much that the
comments were no longer needed.
- Move the "static" definition from a line before functions onto the
same line as the function itself.
- Remove "return;" from the end of void functions.
- Remove braces from around single instructions.
- Merge the declaration and assignment to variables in places where
the followed each other.
- Remove braces from around single statement that obviously didn't
need them.
- Remove unused code and variables.
- Fix debug statement in disconnect to not deref potentially null
ptr.
- Change a lot of short comments that take up three lines down to one
line.
<lenehan@twibble.org>
[PATCH] dc395x [2/5] - sg list handling cleanups
Cleanup a lot of the sg list handling to make it easier to follow in
preparation for making this work on sparc64 (big-endian & 64bit).
<lenehan@twibble.org>
[PATCH] dc395x [3/5] - remove old debugging stuff
Remove the special versions of kmalloc and kfree and remove the trace
related stuff from the code. None of this is really needed and it is
not really a nice implementation. This also removes all non 7-bit
clean characters to help with David Eger's work to remove and/or
convert them all to UTF8.
<lenehan@twibble.org>
[PATCH] dc395x [4/5] - debugging cleanup
Clean up debugging statements. Work on making output consistent - use
the same format each time the same bit of information is output and
output the same bits of information in the same order each time it's
output. Update a lot of the actual messages to include useful
information and to explain better what some things are. Remove some
old comments and commented out code. Remove some of the debugging
states. Find few instance of spaces that should have been tabs and
trailing white space and remove them.
<lenehan@twibble.org>
[PATCH] dc395x [5/5] - version update
Move version information from .h to .c so that it's more likely to
get updated as changes are made (the .h file is rarely modified).
Update the version from 2.04 to 2.05
<pfg@sgi.com>
[PATCH] ia64: minor cleanups for SN2 console driver
<naveenb@cisco.com>
[PATCH] New SCSI host_byte status code.
At present there is no way to retry, if allowed, a scsi command without
decrementing the scsi command's retry count.
Please find a patch attached, which is submitted, for adding a new host_byte
status code called "DID_IMM_RETRY". This enables the Low Level SCSI drivers
to initiate retry of a scsi command without decrementing the scsi commad's
retry count.
<aris@cathedrallabs.org>
[PATCH] qlogicfas: use a static string as name
<aris@cathedrallabs.org>
[PATCH] qlogic_cs: don't release region
<aris@cathedrallabs.org>
[PATCH] qlogic_cs: use a static string as name
<aris@cathedrallabs.org>
[PATCH] qlogic_cs: use scsi_host_put
<aris@cathedrallabs.org>
[PATCH] qlogicfas: force can_queue
<aris@cathedrallabs.org>
[PATCH] qlogic_cs: use own detect and release functions
<aris@cathedrallabs.org>
[PATCH] qlogic_cs: don't call qlogic_release on fail
<aris@cathedrallabs.org>
[PATCH] qlogicfas: kill QL_USE_IRQ
<aris@cathedrallabs.org>
[PATCH] qlogicfas: use qlogicfas_name instead qinfo
<aris@cathedrallabs.org>
[PATCH] qlogicfas: begin to convert qlogicfas to new driver
<aris@cathedrallabs.org>
[PATCH] qlogicfas: disable irqs on exit
<aris@cathedrallabs.org>
[PATCH] qlogicfas: support multiple cards
<aris@cathedrallabs.org>
[PATCH] qlogicfas: move common definitions to qlogicfas.h
<aris@cathedrallabs.org>
[PATCH] qlogicfas: finish to convert to new scsi driver
<aris@cathedrallabs.org>
[PATCH] qlogic_cs: use own MODULE_ macros
<paul@kungfoocoder.org>
[PATCH] SCSI: megaraid /proc dir fix
I know that LSI are working on an updated driver for 2.6, but would
really like to see this bug fix placed in the main tree before then,
whenever then happens to be.
This patch fixes the problem of the /proc entries for this driver being
created in the wrong location.
<rddunlap@osdl.org>
[PATCH] buslogic init. section fix
V: linux-264-rc2
D: BusLogic_AnnounceDriver() can be called after init;
diffstat:=
drivers/scsi/BusLogic.c | 2 +-
1 files changed, 1 insertion(+), 1 deletion(-)
<davidm@tiger.hpl.hp.com>
[PATCH] ia64: fix preempt bug in IA32 subsystem
Without this patch, IA32 programs will stall when CONFIG_PREEMPT is enabled.
<pfg@sgi.com>
[PATCH] ia64: Altix affinity fix
<jmorris@redhat.com>
[CRYPTO]: Fix arc4 test vector.
<tuncer.ayaz@gmx.de>
[IPVS]: Fix typo in Config.in
<khali@linux-fr.org>
[PATCH] I2C: Cleanup fan_div in w83781d
Here is a proposed patch that cleanups the fan_div code from w83781d.
The original code was obviously taken from the 2.4 driver, but the way
things were done in 2.4 do not make any sense anymore (because we now
have a single value per interface file).
Since fan divisor bits are spread over three different regs with various
bitmask manipulations, I don't think it makes much sense to have a
single function as we do in most other cases. Having three different
functions makes more sense, although they are of course similar. The
size increment is only 581 bytes, I don't think its a problem since it
also makes the code much more efficient and readable too IMHO.
I agree that the original code was working - it was simply doing far too
much work each time one would want to change a fan divisor.
Originally, I took a look at the code because I wanted to fix the fact
that changing fan divisors breaks fan mins. But it looked like a good
cleanup before doing that was required. Once this patch will have been
accepted, I'll work on the other one.
I've tested my patch successfully on a W83781D and an AS99127F rev.1.
Note that this means that one part of the code wasn't tested, because
these are the two chips of the family that do not support divisors
greater than 8. If anyone can test it, please do.
<krkumar@us.ibm.com>
[IPV4]: Do not leak cork.opt in ip_push_pending_frames().
<chrisw@osdl.org>
[PATCH] Patch to hook up PPP to simple class sysfs support
* Hanna Linder (hannal@us.ibm.com) wrote:
> + ppp_class = class_simple_create(THIS_MODULE, "ppp");
> + class_simple_device_add(ppp_class, MKDEV(PPP_MAJOR, 0), NULL, "ppp");
What happens if that class_simple_create() fails? Actually,
class_simple_device_add could fail too, but doesn't seem anybody is
checking for that.
> err = devfs_mk_cdev(MKDEV(PPP_MAJOR, 0),
> S_IFCHR|S_IRUSR|S_IWUSR, "ppp");
> - if (err)
> + if (err) {
> unregister_chrdev(PPP_MAJOR, "ppp");
> + class_simple_device_remove(MKDEV(PPP_MAJOR,0));
> + }
need to destroy the class on error path to avoid leak.
> @@ -2540,6 +2547,7 @@ static void __exit ppp_cleanup(void)
> if (unregister_chrdev(PPP_MAJOR, "ppp") != 0)
> printk(KERN_ERR "PPP: failed to unregister PPP device\n");
> devfs_remove("ppp");
> + class_simple_device_remove(MKDEV(PPP_MAJOR, 0));
ditto. this will leak and would cause oops on reload of module.
something like below.
<chrisw@osdl.org>
[PATCH] class_simple clean up in lp
Error condition isn't caught on class_simple_create, and
parport_register_driver failure doesn't do proper cleanup.
<chrisw@osdl.org>
[PATCH] class_simple cleanup in input
Doesn't catch error on class_simple_add, and existing error return paths
forget to class_simple_destroy.
<chrisw@osdl.org>
[PATCH] class_simple cleanup in misc
Error path doesn't class_simple_destroy.
<chrisw@osdl.org>
[PATCH] class_simple cleanup in sg
The only spot that seems to care about class_simple_device_add possibly
failing, but it gets the wrong error test.
<davem@nuts.davemloft.net>
[IPV6]: Kill unused warnings in addrconf.c
<ogasawara@osdl.org>
[PATCH] Add sysfs simple class support for netlink
Patch adds sysfs simple class support for netlink character device
(Major 36). Feedback appreciated. Thanks,
<jgarzik@redhat.com>
[libata] make set_{pio,udma}mode hooks optional
Only one driver actually uses them.
<benh@kernel.crashing.org>
[PATCH] G5 temperature control update
This makes the temperature control code more robust, putting less
pressure on i2c, and work around occasional misconfiguration of the ADC
chips leading to incorrect temperature readings.
<len.brown@intel.com>
Delete (void)func() casts considered cruft in Linux style.
GCC's inability to warn when return values are ignored has conditioned
Linux programmers into thinking that this is actually normal.
delete some #define's -- suggested by Matt Wilcox
<len.brown@intel.com>
[ACPI] fix printk and build warning from previous csets
<ak@suse.de>
[PATCH] x86-64 merge for 2.6.4
The biggest new feature is fixed 32bit vsyscall (SYSCALL+SYSENTER)
support, mostly from Jakub Jelinek. This increases 32bit syscall
performance greatly (latency halved and better). The SYSENTER for Intel
support required some infrastructure changes, but seems to work now too.
The 64bit vsyscall vtime() just references xtime.tv_sec now. This
should make it a lot faster too.
A fix for some Intel IA32e systems. Also a few long standing bugs in
NMI like exception handlers were fixed.
And a lot of other bug fixes.
Full changeLog:
- Clean up 32bit address room limit handling, fix 3gb personality
- Move memcpy_{from,to}io export to ksyms.c file. This seems to work
around a toolchain bug (Andreas Gruenbacher)
- Update defconfig
- ACPI merges from i386 (SBF should work now, acpi=strict)
- Implement mmconfig support based on i386 code (untested)
- Fix i386/x86-64 pci source file sharing
- Implement ptrace access for 32bit vsyscall page
- Always initialize all 32bit SYSENTER/SYSCALL MSRs.
- Export run time cache line size to generic kernel
- Remove explicit CPUID in ia32 syscall code
- Fill in most of boot_cpu_data early
- Remove unused PER_LINUX32 setup
- Fix syscall trace in fast 32bit calls (Suresh B. Siddha)
- Tighten first line of the oops again.
- Set up ptrace registers correctly for debug,ss,double fault exceptions
- Fix 64bit bug in sys_time64
- Optimize time syscall/vsyscall to only read xtime
- Fix csum_partial_copy_nocheck
- Remove last traces of FPU emulation
- Check properly for rescheduling in exceptions with own stack
- Harden exception stack entries (#SS,#NMI,#MC,#DF,#DB) against bogus GS
- Use an exception stack for machine checks
- Handle TIF_SINGLESTEP properly in kernel exit
- Add exception stack for debug handler
- Disable X86_HT for Opteron optimized builds because it pulls in ACPI_BOOT
- Fix CONFIG_ACPI_BOOT compilation without CONFIG_ACPI
- Fix eflags handling in SYSENTER path (Jakub Jelinek)
- Use atomic counter for enable/disable_hlt
- Support 32bit SYSENTER vsyscall too (Jakub Jelinek)
- Don't redefine Dprintk
- Change some cpu/apic id arrays to char
- Support arbitary cpu<->apicid in hard_smp_processor_id (Surresh B Sidda)
- Move K8 erratum #100 workaround into slow path of page fault handler.
- Fix 32bit cdrom direct access ioctls (Jens Axboe)
- Enable 32bit vsyscalls by default
- Fix 32bit vsyscalls (Jakub Jelinek)
<ak@suse.de>
[PATCH] Fix a 64bit bug in kobject module request
From Takashi Iwai
kobj_lookup had a 64bit bug, which caused the request of a unknown
character device to burn CPU instead of failing quickly.
<kaneshige.kenji@jp.fujitsu.com>
ia64: don't unmask iosapic interrupts by default
In ia64 kernel, IOSAPIC's RTEs for PCI interrupts are unmasked at the
boot time before installing device drivers. I think it is very dangerous.
If some PCI devices without device driver generate interrupts, interrupts
are generated repeatedly because these interrupt requests are never
cleared. I think RTEs for PCI interrupts should be unmasked by device
driver. This patch fixes the problem.
<ogasawara@osdl.org>
[PATCH] Fix class_register() always returns 0
I noticed that the class_register() function in drivers/base/class.c
always returns 0 and thus will never fail. Patch below inserts simple
error checking to return any errors if they occur. Feedback welcome.
Thanks,
<trini@kernel.crashing.org>
PPC32: Update the Motorola PowerPlus family support.
From Randy Vinson <rvinson@mvista.com>
<greg@kroah.com>
Kobject: add decl_subsys_name() macro for users who want to set the subsystem name
<greg@kroah.com>
PCI Hotplug: use the new decl_subsys_name() macro instead of rolling our own.
<ogasawara@osdl.org>
[PATCH] add sysfs simple class support for DRI char device
Patch adds sysfs simple class support for DRI character device (Major
226). Also, adds some error checking.
<mhoffman@lightlink.com>
[PATCH] I2C: sensor chip driver refactoring
This patch is a refactoring of some common code among all sensors chip
drivers (except asb100, which was written this way to begin with.)
It saves a handful of lines and ~100-300 bytes per module. It compiles
ok. I've only tested it against one of the drivers, but the changes are
similar across the board and quite mechanical. Please apply.
<willy@debian.org>
[PATCH] ia64: Convert to use the generic drivers/Kconfig mechanism.
<jbarnes@sgi.com>
[PATCH] ia64: fix misc. sn2 warnings
This patch fixes a few warnings that have cropped up in the sn2 code:
- hwgfs function prototype mismatch
- pconn uninitialized in pciio.c
- printk formatting fixes in pcibr_dvr.c
- kill volatile qualifier in pcibr_intr.c
<sfr@canb.auug.org.au>
[PATCH] fix PPC64 iSeries virtual console devices
While playing with udev, I discovered that the virtual console
devices on iSeries had there minor numbers off by one i.e. /dev/tty1
was minor 2!
This fixes it.
<axboe@suse.de>
[PATCH] user data -> request mapping
This patch allows you to map a request with user data for io, similarly
to what you can do with bio_map_user() already to a bio. However, this
goes one step further and populates the request so the user only has to
fill in the cdb (almost) and put it on the queue for execution. Patch
converts sg_io() to use it, next patch I'll send adapts cdrom layer to
use it for zero copy cdda dma extraction.
<axboe@suse.de>
[PATCH] CDROMREADAUDIO dma support
This small patch builds on top of the blk_rq_map_user() patch just sent,
and enables us to easily support DMA for CDROMREADAUDIO cdda extraction.
It's quite amazing how much cool stuff you can with the new block layer
:-)
Patch has intelligent fall back from multi frame dma to single frame
dma, and further to old-style pio ripping in case of hardware problems.
<anton@samba.org>
[PATCH] fix ppc64 in kernel syscalls
Thanks to some great debugging work by Olaf Hering and Marcus Meissner
it has been noticed that the current ppc64 syscall code is corrupting
4 bytes past errno. Why we even bothered to set errno beats me, its
unusable in the kernel.
Since we had to reinstate the inline syscall code we can go back to
using it for those few syscalls that we call. Especially now with
Randy's syscall prototype cleanup we should be calling them directly
but we can do that sometime later.
<benh@kernel.crashing.org>
[PATCH] ppc32: Fix G5 config space access lockup
Fix a typo in the code that prevents lockup on config space access
to sleeping devices on ppc32/G5. Please apply.
<akpm@osdl.org>
[PATCH] print kernel version in oops messages
From: Arjan van de Ven <arjanv@redhat.com>
Unfortunatly a large portion of the oops reports lack the basic
information about what kernel version the oops is for; it's trivial to just
print this in the oops as well to improve the usefulness of bugreports...
<akpm@osdl.org>
[PATCH] ppc64: fix initialisation of NUMA arrays
From: Anton Blanchard <anton@samba.org>
We were hitting problems on machines with cpu_possible != cpu_online when
NUMA was enabled. The debug checks would trip during scheduler init
because we iterate through all possible cpus whereas we only set up NUMA
information for online cpus.
Longer term we should have a cpu_up hook which sets up its NUMA information
but for now we initalise all possible cpus and memory to node 0.
<akpm@osdl.org>
[PATCH] Clean up sys_ioperm stubs
From: Brian Gerst <bgerst@didntduck.org>
Remove stubs for sys_ioperm for non-x86 arches, using sys_ni_syscall
instead where applicable. Support for sys_ioperm is unconditionally no for
non-x86 arches.
<akpm@osdl.org>
[PATCH] readdir() cleanups
From: <viro@parcelfarce.linux.theplanet.co.uk>
cramfs and freevxfs explicitly mark themselves readonly (as other r/o fs
do).
afs marked noatime (ACKed by maintainer)
filesystems that do not do update_atime() in their ->readdir() had been
explicitly marked nodiratime. NOTE: cifs, coda and ncpfs almost certainly
need full noatime as we currently have in nfs and afs.
update_atime() call shifted to callers of ->readdir() and out of
->readdir() instances. Bugs caught:
dcache_readdir() updated atime only if it reached EOF.
bfs_readdir() - ditto.
qnx4_readdir() - ditto.
<akpm@osdl.org>
[PATCH] adaptive lazy readahead
From: Suparna Bhattacharya <suparna@in.ibm.com>
From: Ram Pai <linuxram@us.ibm.com>
Pipelined readahead behaviour is suitable for sequential reads, but not for
large random reads (typical of database workloads), where lazy readahead
provides a big performance boost.
One option (suggested by Andrew Morton) would be to have the application
pass hints to turn off readahead by setting the readahead window to zero
using posix_fadvise64(POSIX_FADV_RANDOM), and to special-case that in
do_generic_mapping_read to completely bypass the readahead logic and
instead read in all the pages needed directly.
This was the idea I started with. But then I thought, we can do a still
better job ? How about adapting the readahead algorithm to lazy-read or
non-lazy-read based on the past i/o patterns ?
The overall idea is to keep track of average number of contiguous pages
accessed in a file. If the average at any given time is above ra->pages
the pattern is sequential. If not the pattern is random. If pattern is
sequential do non-lazy-readahead( read as soon as the first page in the
active window is touched) else do lazy-readahead.
I have studied the behaviour of this patch using my user-level simulator.
It adapts pretty well.
Note from Suparna: This appears to bring streaming AIO read performance for
large (64KB) random AIO reads back to sane values (since the lazy readahead
backout in the mainline).
<akpm@osdl.org>
[PATCH] read-only support for UFS2
From: Niraj Kumar <niraj17@iitbombay.org>
This patch adds read-only support for ufs2 (used in FreeBSD 5.x) variant of
ufs filesystem. For filesystem specific tools, see
http://ufs-linux.sourceforge.com .
<akpm@osdl.org>
[PATCH] fb_console_init fix
From: James Simmons <jsimmons@infradead.org>
This patch fixes fb_console_init from being called twice. I still need to
fix set_con2fb but this helps but this is still important to get in.
<akpm@osdl.org>
[PATCH] time interpolator fix
From: john stultz <johnstul@us.ibm.com>
In developing the ia64-cyclone patch, which implements a cyclone based time
interpolator, I found the following bug which could cause time
inconsistencies.
In update_wall_time_one_tick(), which is called each timer interrupt, we
call time_interpolator_update(delta_nsec) where delta_nsec is approximately
NSEC_PER_SEC/HZ. This directly correlates with the changes to xtime which
occurs in update_wall_time_one_tick().
However in update_wall_time(), on a second overflow, we again call
time_interpolator_update(NSEC_PER_SEC). However while the components of
xtime are being changed, the overall value of xtime does not (nsec is
decremented NSEC_PER_SEC and sec is incremented). Thus this call to
time_interpolator_update is incorrect.
This patch removes the incorrect call to time_interpolator_update and was
found to resolve the time inconsistencies I had seen while developing the
ia64-cyclone patch.
<akpm@osdl.org>
[PATCH] teach /proc/kmsg about O_NONBLOCK
If there's nothing available and the file is O_NONBLOCK, return -EAGAIN.
This is a bit grubby - really we should push the file* down into do_syslog()
and handle it inside the spinlock.
<akpm@osdl.org>
[PATCH] remove __io_virt_debug
From: Brian Gerst <bgerst@didntduck.org>
Drivers should all be converted to use ioremap() or isa_*() by now.
<akpm@osdl.org>
[PATCH] genrtc: cleanups
From: "Randy.Dunlap" <rddunlap@osdl.org>
From: Luiz Fernando Capitulino <lcapitulino@prefeitura.sp.gov.br>
remove ifdef/endif in rtc_generic_init().
use returned error code;
<akpm@osdl.org>
[PATCH] i386 very early memory detection cleanup patch
From: "H. Peter Anvin" <hpa@zytor.com>
This patch cleans up the very early memory setup on the i386 platform. In
particular, it removes the hard-coded 8 MB limit completely by dynamically
creating the early-boot pagetables rather than having them hard coded.
While I was at it, I changed head.S so that it always sets up a local GDT;
this means among other things that SMP and VISWS are no longer special
cases, and is conceptually cleaner to boot. The VISWS people have
confirmed it works on VISWS.
It also uses a separate entrypoint for non-boot processors since this is
completely kernel-internal anyway. This eliminates the need to set %bx on
boot. (If you think this is a bad idea I can eliminate this change; it
just seemed cleaner to me to do it this way.)
Additionally, zero bss with rep;stosl rather that rep;stosb.
<akpm@osdl.org>
[PATCH] Allow X86_MCE_NONFATAL to be a module
From: Herbert Xu <herbert@gondor.apana.org.au>
By allowing X86_MCE_NONFATAL to be a module, it can be included in
distribution kernels without upsetting those with strange hardware.
<akpm@osdl.org>
[PATCH] dm: endio method
From: Joe Thornber <thornber@redhat.com>
Add an endio method to targets. This method is allowed to request another
shot at failed ios (think multipath). Context can be passed between the map
method and the endio method.
<akpm@osdl.org>
[PATCH] dm: list_for_each_entry audit
From: Joe Thornber <thornber@redhat.com>
Audit for list_for_each_*entry*
<akpm@osdl.org>
[PATCH] dm: default queue limits
From: Joe Thornber <thornber@redhat.com>
Fill in missing queue limitations when table is complete instead of enforcing
the "default" limits on every dm device. Problem noticed by Mike Christie.
[Christophe Saout]
<akpm@osdl.org>
[PATCH] dm: list targets cmd
From: Joe Thornber <thornber@redhat.com>
List targets ioctl. [Patrick Caulfield]
<akpm@osdl.org>
[PATCH] dm: stripe width fix
dm-stripe.c: The stripe width must be at least the page size.
<akpm@osdl.org>
[PATCH] selinux: clean up binary mount data
From: James Morris <jmorris@redhat.com>
selinux is currently inspecting the filesystem name ("nfs" vs "coda" vs
watever) to work out whether it needs to hanbdle binary mount data.
Eliminate all that by adding a flag to file_system_type.fs_flags.
<akpm@osdl.org>
[PATCH] UDF filesystem update
From: Ben Fennema <bfennema@falcon.csc.calpoly.edu>
- added udf 2.5 #defines
- fixed prealloc discard race
- fixed several bugs in inode_getblk
- added S_IFSOCK support
- fix unicode encoding bug
- change partition allocation from kmalloc to vmalloc for large
allocations
<akpm@osdl.org>
[PATCH] kbuild: Remove CFLAGS assignment in i386/mach-*/Makefile
From: Sam Ravnborg <sam@ravnborg.org>
The EXTRA_CFLAGS assignments in the following files are a left-over from
the early 2.5 days where the source was not compiled from the root of the
source tree.
Removing these wrong assignments fixes
http://bugme.osdl.org/show_bug.cgi?id=2210
A script named 'kernel' in the .. directory no longer halt compilation.
<akpm@osdl.org>
[PATCH] NUMA-aware zonelist builder
From: <j-nomura@ce.jp.nec.com>
The attached patch is NUMA-aware zonelist builder patch, which sorts
zonelist in the order that near-node first, far-node last. In lse-tech and
linux-ia64, where most of NUMA people resides, no objections are raised so
far.
The patch adds NUMA-specific version of build_zonelists which calls
find_next_best_node to select the next-nearest node to add to zonelist.
The patch has no effect on flat NUMA platform.
<akpm@osdl.org>
[PATCH] Redundant unplug_timer deletion
From: "Chen, Kenneth W" <kenneth.w.chen@intel.com>
The only path to get to del_timer call in __generic_unplug_device() is when
blk_remove_plug() returns 1, and in that case it already removed the
unplug_timer.
Patch to remove this redundant call.
<akpm@osdl.org>
[PATCH] compiler.h scoping fixes
From: Ville Nuorvala <vnuorval@tcs.hut.fi>
There are a few kernel-only things in compiler.h which should have been
placed inside __KERNEL__.
<akpm@osdl.org>
[PATCH] Fix elf mapping of the zero page
From: William Lee Irwin III <wli@holomorphy.com>
Using PAGE_SIZE rather than 4096 so that mmap() granularity is honored by
whatever non-i386 architectures use MMAP_PAGE_ZERO.
<akpm@osdl.org>
[PATCH] kbuild: Cause `make clean' to remove more files
From: Sam Ravnborg <sam@ravnborg.org>
Make the difference between 'make clean' and 'make distclean/mrproper' more
explicit.
make clean now removes all generated files except .config* and .version.
The result is much easier to understand now.
make clean deletes all generated files (except .config* and .version).
make mrproper deletes configuration and all temporary files left by patch,
editors and the like.
Example output:
> make mrproper
CLEAN init
CLEAN usr
CLEAN scripts/kconfig
CLEAN scripts
CLEAN .tmp_versions include/config
CLEAN include/asm-i386/asm_offsets.h include/linux/autoconf.h include/linux/version.h include/asm .tmp_versions
CLEAN .version .config
Form the list of files/directories deleted during make clean, removed all
references that is no longer relevant for the current kernel.
<akpm@osdl.org>
[PATCH] LOOP_CHANGE_FD ioctl
From: Arjan van de Ven <arjanv@redhat.com>
The patch below (written by Al Viro) solves a nasty chicken-and-egg issue
for operating system installers (well at least anaconda but the problem
domain is not exclusive to that)
The basic problem is this:
- The small first stage installer locates the image file of the second
stage installer (which has X and all the graphical stuff); this image can
be on the same CD, but it can come via NFS, http or ftp or ... as well.
- The first stage installer loop-back mounts this image and gives control
to the second stage installer by calling some binary there.
- The graphical installer then asks the user all those questions and
starts installing packages. Again the packages can come from the CD but
also from NFS or http or ...
Now in case of a CD install, once all requested packages from the first CD
are installed, the installer wants to unmount and eject the CD and prompt
the user to put CD 2 in....... EXCEPT that the unmount can't work since
the installer is actually running from a loopback mount of this cd.
The solution is a "LOOP_CHANGE_FD" ioctl, where basically the installer
copies the image to the harddisk (which can only be done late since only
late the target harddisk is mkfs'd) and then magically switches the backing
store FD from underneath the loop device to the one on the target harddisk
(and thus unbusying the CD mount).
This is obviously only allowed if the size of the new image is identical
and if the loop image is read-only in the first place. It's the
responsibility of root to make sure the contents is the same (but that's of
the give-root-enough-rope kind)
<akpm@osdl.org>
[PATCH] loop setup race fix
From: Chris Mason <mason@suse.com>
There's a race in loopback setup, it's easiest to trigger with one or more
procs doing loopback mounts at the same time. The problem is that
fs/block_dev.c:do_open() only calls bdev_set_size on the first open.
Picture two procs:
proc1: mount -o loop file1 mnt1
proc2: mount -o loop file2 mnt2
proc1 proc2
open /dev/loop0 # bd_openers now 1
do_open
bd_set_size(bdev, 0) # loop unbound, so bdev size is 0
open /dev/loop0 # bd_openers now 2
loop_set_fd # disk capacity now correct, but
# bdev not updated
mount /dev/loop0 /mnt
do_open
Because bd_openers != 0 for the last do_open, bd_set_size is not called
again and a size of 0 is used. This eventually leads to an oops when the
loop device is unmounted, because fsync_bdev calls block_write_full_page
who decides every page on the block device is outside i_size and unmaps
them.
When ext2 or reiserfs try to sync a metadata buffer, we get an oops on
because the buffers are no longer mapped.
The patch below changes loop_set_fd and loop_clr_fd to also manipulate the
size of the block device, which fixes things for me.
<akpm@osdl.org>
[PATCH] kbuild: fix usage with directories containing '.o'
From: Sam Ravnborg <sam@ravnborg.org>
From: Daniel Mack <daniel@zonque.org>, me
modpost unconditionally searched for ".o" assuming this is always the
suffix of the module. This fails in two cases:
a) when building external modules where any directory include ".o" in
the name. One example is a directory named: .../cvs.alsa.org/...
b) when someone names a kernel directory so it contains ".o". One
example is drivers/scsi/aic.ok/...
case b) was triggered by renaming the directory for aic7xxx, and modifying
Makefile and Kconfig. This caused make modules to fail.
<akpm@osdl.org>
[PATCH] Remove unneeded unlock in ipc/sem.c
From: Manfred Spraul <manfred@colorfullife.com>
sem_revalidate checks that a semaphore array didn't disappear while the
code was running without the semaphore array spinlock. If the array
disappeared, then it will return without holding a lock. find_undo calls
sem_revalidate and then sem_unlock, even if sem_revalidate failed. The
sem_unlock call must be removed.
Mingming Cao reported a spinlock deadlock with sysv semaphores. A
superflous unlock doesn't explain the deadlock, but it's obviously a bug.
<akpm@osdl.org>
[PATCH] /proc data corruption check
From: Arjan van de Ven <arjanv@redhat.com>
If someone removes a /proc directory which still has subdirectories it will
lead to very nasty things (dentries remaining on hash chains etc etc etc).
The BUG_ON in the patch below will catch this nasty situation.
<akpm@osdl.org>
[PATCH] Enable i810 fb on x86-64
From: Andi Kleen <ak@suse.de>
i810fb most likely is needed on x86-64 too because there are Intel chipsets
for it now. So far it only linked on i386, fix this.
<akpm@osdl.org>
[PATCH] Remove arbitrary #acl entries limits on ext[23] when reading
From: Andreas Gruenbacher <agruen@suse.de>
Remove the arbitrary limit of 32 ACL entries on ext[23] when reading from
disk. This change is backward compatible; we need to have this change in
to be able to also allow writing big ACLs.
The second patch that removes the ACL entry limit for writes is not
included. I don't want to push that patch now, because large ACLs would
cause 2.4 and current 2.6 kernels to fail. My plan is to remove the second
limit later, in a half-year or year or so.
<akpm@osdl.org>
[PATCH] watchdog: moduleparam-patches
From: Wim Van Sebroeck <wim@iguana.be>
Convert last set of watchdog drivers to new moduleparam system.
<akpm@osdl.org>
[PATCH] AMD ELAN Kconfig fix
From: Adrian Bunk <bunk@fs.tum.de>
- remove an MELAN entry that was forgotten in the i386 processor
selection menu
- s/CONFIG_MELAN/CONFIG_X86_ELAN/ was missing in module.h
<akpm@osdl.org>
[PATCH] fadvise(POSIX_FADV_DONTNEED) fixups
From: WU Fengguang <wfg@mail.ustc.edu.cn>
- In sys_fadvise64_64(): if the start and/or end offsets do not fall on
page boundaries, preserve the partial pages. The thinking here is that it
is better to preserve needed memory than to not shoot down unneeded memory.
- In invalidate_mapping_pages(): we were invalidating an entire pagevec's
worth of pages each time around, even if that went beyond the part of the
file which the caller asked to be invalidated. Fix that up.
<akpm@osdl.org>
[PATCH] Fix and harden validate_mm
From: Andi Kleen <ak@muc.de>
I was debugging some code that corrupted the vma rb lists and for that I
fixed validate_mm to not be recursive and do some more checks.
It's slower now, but that shouldn't be a problem.
Also make it non static to allow easier checks elsewhere.
<akpm@osdl.org>
[PATCH] current_is_keventd() speedup
From: Srivatsa Vaddagiri <vatsa@in.ibm.com>
current_is_keventd() doesn't need to search across all the CPUs to identify
itself.
<akpm@osdl.org>
[PATCH] Fix rootfs on ramdisk
From: vda <vda@port.imtp.ilyichevsk.odessa.ua>
Add a missing test for the "root=/dev/ram" kernel boot option. It's just an
alias for /dev/ram0, but it worked in 2.4...
<akpm@osdl.org>
[PATCH] Fix reading the last block on a bdev
From: Chris Mason <mason@suse.com>
This patch fixes a problem we're hitting on ia64 with page sizes > 4k.
When the page size is greater than the block size, and parts of the page
fall past the end of the device, readpage will fail because
blkdev_get_block returns -EIO for blocks past i_size.
The attached patch changes blkdev_get_block to return holes when reading
past the end of the device, which allows us to read that last valid 4k
block and then fill the rest of the page with zeros. Writes will still
fail with -EIO.
<akpm@osdl.org>
[PATCH] wavfront.c needs syscalls.h
sound/oss/wavfront.c: In function `wavefront_download_firmware':
sound/oss/wavfront.c:2524: warning: implicit declaration of function `sys_open'
sound/oss/wavfront.c:2533: warning: implicit declaration of function `sys_read'
sound/oss/wavfront.c:2582: warning: implicit declaration of function `sys_close
<akpm@osdl.org>
[PATCH] EDD: Get Legacy Parameters
From: Matt Domsch <Matt_Domsch@dell.com>
Patch below from Patrick J. LoPresti and myself. Patrick describes:
Why this patch? The problem is that the legacy BIOS interface
(INT13/AH=3D08) for querying the disk geometry returns different values
than the extended INT13 interface which the EDD code currently uses. This
is because the legacy interface only provides a 10-bit cylinder field, so
modern BIOSes "lie" about the head/sector counts in order to make more of
the disk visible within the first 1024 cylinders.
Many non-Linux applications, including the stock Windows boot loader, DOS
fdisk, etc., rely upon the legacy interface and geometry. So it is useful
to be able to obtain the legacy values from a running Linux kernel.
What this patch does is to add new entries under
/sys/firmware/edd/int13_devXX named "legacy_cylinders", "legacy_heads", and
"legacy_sectors". These provide the geometry given by the legacy
INT13/AH=3D08 BIOS interface, just like the current "default_cylinders"
etc. provide the the geometry given by the INT13/AH=3D48 interface.
Without this patch, I cannot use Linux to partition a drive and install
Windows, which happens to be my application.
- Pat
http://unattended.sourceforge.net/
In addition, this adds two buggy BIOS workarounds in the EDD int13
calls as suggested by Ralf Brown's interrupt list.
I'm also interested in moving this code out of arch/i386/kernel/edd.c and
include/asm-i386/edd.h, as I believe it is applicable on x86-64 as well.
However, there's no good place under drivers/ to put edd.c when it's not
tied to a bus, but to several CPU architectures and their firmwares...
Maybe a new directory drivers/firmware?
<akpm@osdl.org>
[PATCH] cciss: init section fix
From: "Randy.Dunlap" <rddunlap@osdl.org>
cciss_scsi_detect() can be called after init (for TAPE support).
<akpm@osdl.org>
[PATCH] add nowarn to a few pte chain allocators
From: Arjan van de Ven <arjanv@redhat.com>
Several of the pte_chain_alloc() allocators that use GFP_ATOMIC have a
fallback for failure that sleeps; they thus need to not warn on failure..
Seen during a big fork on a busy system.
<akpm@osdl.org>
[PATCH] Disable Macintosh device drivers for all but PPC || MAC
From: Marc-Christian Petersen <m.c.p@wolk-project.de>
The attached patch is needed to stop showing us "Macintosh device drivers"
for all architectures via menuconfig || xconfig || gconfig. It's only
necessary for PPC and/or MAC.
ACKed by benh.
<akpm@osdl.org>
[PATCH] Applicom warning
From: Geert Uytterhoeven <geert@linux-m68k.org>
Add missing include (needed for struct inode)
<akpm@osdl.org>
[PATCH] Fix CONFIG_NVRAM dependencies
From: Geert Uytterhoeven <geert@linux-m68k.org>
Make CONFIG_NVRAM depend on the prerequisites that are explicitly checked
for in drivers/char/nvram.c, or on CONFIG_GENERIC_NVRAM (for PPC).
<akpm@osdl.org>
[PATCH] fix raid0 readahead size
From: Arjan van de Ven <arjanv@redhat.com>
Readahead of raid0 was suboptimal; it read only 1 stride ahead. The
problem with this is that while it will keep all spindles busy, it will not
actually manage to make larger IO's, eg each disk would just do the chunk
size IO. Doing at least 2 chunks is more than appropriate so that each
spindle will get a chance to merge IO's.
(Neil fixed raid6 and raid6 too)
<akpm@osdl.org>
[PATCH] Fix NULL pointer dereference in blkmtd.c
From: Michel Marti <michel.marti@objectxp.com>
The blkmtd driver oopses in add_device(). The following trivial patch
fixes this.
<akpm@osdl.org>
[PATCH] fbdev: monitor detection fixes
From: James Simmons <jsimmons@infradead.org>,
Kronos <kronos@kronoz.cjb.net>
Various fixes and enhancements to the monitor hardware detection code. The
only driver that uses it is the radeon driver.
Old EDID parsing code was very verbose, half of the patch address this (ie.
print lots of stuff iff DEBUG). The other big change is the FB_MODE_IS_*
stuff: we really need a way to know the origin of a video mode. In this way
we can select video mode that comes from EDID instead of VESA or GTF.
Drivers other than radeonfb won't be affected because they cannot (yet) get
EDID from the monitor and don't use EDID related code.
<akpm@osdl.org>
[PATCH] m68k: __test_and_set_bit()
From: Geert Uytterhoeven <geert@linux-m68k.org>
Add missing implementation for non-atomic __test_and_set_bit()
<akpm@osdl.org>
[PATCH] m68k: Amiga Framemaster II fb sysfsification
From: Geert Uytterhoeven <geert@linux-m68k.org>
Amiga Framemaster II fb: Add sysfs support (from James Simmons)
<akpm@osdl.org>
[PATCH] Apollo fb sysfsification
From: Geert Uytterhoeven <geert@linux-m68k.org>
Apollo fb: Add sysfs support (from James Simmons)
<akpm@osdl.org>
[PATCH] m68k: Macintosh IDE fixes
From: Geert Uytterhoeven <geert@linux-m68k.org>
Mac IDE: Make sure the core IDE driver doesn't try to request the MMIO
ports a second time, since this will fail.
<akpm@osdl.org>
[PATCH] m68k: interrupt management cleanups
From: Geert Uytterhoeven <geert@linux-m68k.org>
M68k interrupt management: rename routines to not confuse them with
syscalls
- sys_{request,free}_irq() -> cpu_{request,free}_irq()
- q40_sys_default_handler[] -> q40_default_handler
- sys_default_handler() -> default_handler()
<akpm@osdl.org>
[PATCH] Add barriers to avoid race in mempool_alloc/free
From: Chris Mason <mason@suse.com>
mempool_alloc() and mempool_free() check pool->curr_nr without any locks
held. This can lead to skipping a wakeup when there are people waiting,
and sleeping when there are free elements in the pool.
I can't trigger this reliably, but sooner or later someone on ppc is
probably going to hit it.
<akpm@osdl.org>
[PATCH] synclinkmp.c update
From: Paul Fulghum <paulkf@microgate.com>
Patch for synclinkmp.c
* Track driver API changes
* Remove cast (kernel janitor)
* Replace page_free call with kfree (to match kmalloc allocation)
<akpm@osdl.org>
[PATCH] synclink_cs.c update
From: Paul Fulghum <paulkf@microgate.com>
* Track driver API changes
* Remove cast (kernel janitor)
<akpm@osdl.org>
[PATCH] synclink.c update
From: Paul Fulghum <paulkf@microgate.com>
* track driver API changes
* remove cast (kernel janitor)
<akpm@osdl.org>
[PATCH] vm: per-zone vmscan instrumentation
To check on zone balancing, split the /proc/vmstat:pgsteal, pgreclaim pgalloc
and pgscan stats into per-zone counters.
Additionally, split the pgscan stats into pgscan_direct and pgscan_kswapd to
see who's doing how much scanning.
And add a metric for the number of slab objects which were scanned.
<akpm@osdl.org>
[PATCH] return remaining jiffies from blk_congestion_wait()
Teach blk_congestion_wait() to return the number of jiffies remaining. This
is for debug, but it is also nicely consistent.
<akpm@osdl.org>
[PATCH] Narrow blk_congestion_wait races
From: Nick Piggin <piggin@cyberone.com.au>
The addition of the smp_mb and the other change is to try to close the
window for races a bit. Obviously they can still happen, it's a racy
interface and it doesn't matter much.
<akpm@osdl.org>
[PATCH] mm/vmscan.c: remove unused priority argument.
From: Nikita Danilov <Nikita@Namesys.COM>
Now that decision to reclaim mapped memory is taken on the basis of
zone->prev_priority, priority argument is no longer needed.
<akpm@osdl.org>
[PATCH] kswapd throttling fixes
The logic in balance_pgdat() is all bollixed up.
- the incoming arg `nr_pages' should be used to determine if we're being
asked to free a specific number of pages, not `to_free'.
- local variable `to_free' is not appropriate for the determination of
whether we failed to bring all zones to appropriate free pages levels.
Fix this by correctly calculating `all_zones_ok' and then use
all_zones_ok to determine whether we need to throttle kswapd.
So the logic now is:
for (increasing priority) {
all_zones_ok = 1;
for (all zones) {
to_reclaim = number of pages to try to reclaim
from this zone;
max_scan = number of pages to scan in this pass
(gets larger as `priority' decreases)
/*
* set `reclaimed' to the number of pages which were
* actually freed up
*/
reclaimed = scan(max_scan pages);
reclaimed += shrink_slab();
to_free -= reclaimed; /* for the `nr_pages>0' case */
/*
* If this scan failed to reclaim `to_reclaim' or more
* pages, we're getting into trouble. Need to scan
* some more, and throttle kswapd. Note that this
* zone may now have sufficient free pages due to
* freeing activity by some other process. That's
* OK - we'll pick that info up on the next pass
* through the loop.
*/
if (reclaimed < to_reclaim)
all_zones_ok = 0;
}
if (to_free > 0)
continue; /* swsusp: need to do more work */
if (all_zones_ok)
break; /* kswapd is done */
/*
* OK, kswapd is getting into trouble. Take a nap, then take
* another pass across the zones.
*/
blk_congestion_wait();
}
<akpm@osdl.org>
[PATCH] vmscan: preserve page referenced info in refill_inactive()
From: Nick Piggin <piggin@cyberone.com.au>
If refill_inactive_zone() is running in its dont-reclaim-mapped-memory mode
we are tossing away the referenced infomation on active mapped pages.
So put that info back if we're not going to deactivate the page.
<akpm@osdl.org>
[PATCH] shrink_slab: math precision fix
From: Nick Piggin <piggin@cyberone.com.au>
In shrink_slab(), do the multiply before the divide to avoid losing
precision.
<akpm@osdl.org>
[PATCH] vm: shrink slab evenly in try_to_free_pages()
From: Nick Piggin <piggin@cyberone.com.au>
In try_to_free_pages(), put even pressure on the slab even if we have
reclaimed enough pages from the LRU.
<akpm@osdl.org>
[PATCH] vmscan: fix calculation of number of pages scanned
From: Nick Piggin <piggin@cyberone.com.au>
The logic which calculates the numberof pages which were scanned is mucked
up. Fix.
<akpm@osdl.org>
[PATCH] vm: scan slab in response to highmem scanning
The patch which went in six months or so back which said "only reclaim slab
if we're scanning lowmem pagecache" was wrong. I must have been asleep at
the time.
We do need to scan slab in response to highmem page reclaim as well. Because
all the math is based around the total amount of memory in the machine, and
we know that if we're performing highmem page reclaim then the lower zones
have no free memory.
<akpm@osdl.org>
[PATCH] vmscan: zone balancing fix
We currently have a problem with the balancing of reclaim between zones: much
more reclaim happens against highmem than against lowmem.
This patch partially fixes this by changing the direct reclaim path so it
does not bale out of the zone walk after having reclaimed sufficient pages
from highmem: go on to reclaim from lowmem regardless of how many pages we
reclaimed from lowmem.
<akpm@osdl.org>
[PATCH] vmscan: drive everything via nr_to_scan
Page reclaim is currently a bit schitzo: sometimes we say "go and scan this
many pages and tell me how many pages were freed" and at other times we say
"go and scan this many pages, but stop if you freed this many".
It makes the logic harder to control and to understand. This patch coverts
everything into the "go and scan this many pages and tell me how many pages
were freed" model.
It doesn't seem to affect performance much either way.
<akpm@osdl.org>
[PATCH] Balance inter-zone scan rates
When page reclaim is working out how many pages to san in a zone (max-scan)
it presently rounds that number up if it looks too small - for work batching.
Problem is, this can result in excessive scanning against small zones which
have few inactive pages. So remove it.
Not that it is possible for max_scan to be zero. That's OK - it'll become
non-zero as the priority increases.
<akpm@osdl.org>
[PATCH] vmscan: avoid bogus throttling
- If max_scan evaluates to zero due to a very small inactive list and high
`priority' numbers, we don't want to thrlttle yet.
- In balance_pgdat(), we may end up not scanning any pages because all
zones happened to be above pages_high. Avoid throttling in this case too.
<akpm@osdl.org>
[PATCH] kswapd: avoid unnecessary reclaiming from higher zones
Currently kswapd walks across all zones in dma->normal->highmem order,
performing proportional scanning until all zones are OK. This means that
pressure against ZONE_NORMAL causes unnecessary reclaim of ZONE_HIGHMEM.
To fix that up we change kswapd so that it walks the zones in the
high->normal->dma direction, skipping zones which are OK. Once it encounters
a zone which needs some reclaim kswapd will perform proportional scanning
against that zone as well as all the succeeding lower zones.
We scan the lower zones even if they have sufficient free pages. This is
because
a) the lower zone may be above pages_high, but because of the incremental
min, the lower zone may still not be eligible for allocations. That's bad
because cache in that lower zone will then not be scanned at the correct
rate.
b) pages in this lower zone are usable for allocations against the higher
zone. So we do want to san all the relevant zones at an equal rate.
<akpm@osdl.org>
[PATCH] kswapd: fix lumpy page reclaim
As kswapd is now scanning zones in the highmem->normal->dma direction it can
get into competition with the page allocator: kswapd keep on trying to free
pages from highmem, then kswapd moves onto lowmem. By the time kswapd has
done proportional scanning in lowmem, someone has come in and allocated a few
pages from highmem. So kswapd goes back and frees some highmem, then some
lowmem again. But nobody has allocated any lowmem yet. So we keep on and on
scanning lowmem in response to highmem page allocations.
With a simple `dd' on a 1G box we get:
r b swpd free buff cache si so bi bo in cs us sy wa id
0 3 0 59340 4628 922348 0 0 4 28188 1072 808 0 10 46 44
0 3 0 29932 4660 951760 0 0 0 30752 1078 441 1 6 30 64
0 3 0 57568 4556 924052 0 0 0 30748 1075 478 0 8 43 49
0 3 0 29664 4584 952176 0 0 0 30752 1075 472 0 6 34 60
0 3 0 5304 4620 976280 0 0 4 40484 1073 456 1 7 52 41
0 3 0 104856 4508 877112 0 0 0 18452 1074 97 0 7 67 26
0 3 0 70768 4540 911488 0 0 0 35876 1078 746 0 7 34 59
1 2 0 42544 4568 939680 0 0 0 21524 1073 556 0 5 43 51
0 3 0 5520 4608 976428 0 0 4 37924 1076 836 0 7 41 51
0 2 0 4848 4632 976812 0 0 32 12308 1092 94 0 1 33 66
Simple fix: go back to scanning the zones in the dma->normal->highmem
direction so we meet the page allocator in the middle somewhere.
r b swpd free buff cache si so bi bo in cs us sy wa id
1 3 0 5152 3468 976548 0 0 4 37924 1071 650 0 8 64 28
1 2 0 4888 3496 976588 0 0 0 23576 1075 726 0 6 66 27
0 3 0 5336 3532 976348 0 0 0 31264 1072 708 0 8 60 32
0 3 0 6168 3560 975504 0 0 0 40992 1072 683 0 6 63 31
0 3 0 4560 3580 976844 0 0 0 18448 1073 233 0 4 59 37
0 3 0 5840 3624 975712 0 0 4 26660 1072 800 1 8 46 45
0 3 0 4816 3648 976640 0 0 0 40992 1073 526 0 6 47 47
0 3 0 5456 3672 976072 0 0 0 19984 1070 320 0 5 60 35
<akpm@osdl.org>
[PATCH] fix the kswapd zone scanning algorithm
This removes a vestige of the old algorithm. We don't want to skip zones if
all_zones_ok is true: we've already precalculated which zones need scanning
and this just stops us from ever performing kswapd reclaim from the DMA zone.
<akpm@osdl.org>
[PATCH] vmscan: less throttling of page allocators and kswapd
This is just a random unsubstantiated tuning tweak: don't immediately
throttle page allocators and kwapd when the going is getting heavier: scan a
bit more of the LRU before throttling.
<akpm@osdl.org>
[PATCH] vmscan: batch up inactive list scanning work
From: Nick Piggin <piggin@cyberone.com.au>
Use a "refill_counter" for inactive list scanning, similar to the one used
for active list scanning. This batches up scanning now that we precisely
balance ratios, and don't round up the amount to be done.
No observed benefits, but I imagine it would lower the acquisition
frequency of the lru locks in some cases, and make codepaths more efficient
in general due to cache niceness.
<akpm@osdl.org>
[PATCH] fix vm-batch-inactive-scanning.patch
- prevent nr_scan_inactive from going negative
- compare `count' with SWAP_CLUSTER_MAX, not `max_scan'
- Use ">= SWAP_CLUSTER_MAX", not "> SWAP_CLUSTER_MAX".
<akpm@osdl.org>
[PATCH] vm: balance inactive zone refill rates
The current refill logic in refill_inactive_zone() takes an arbitrarily large
number of pages and chops it down to SWAP_CLUSTER_MAX*4, regardless of the
size of the zone.
This has the effect of reducing the amount of refilling of large zones
proportionately much more than of small zones.
We made this change in may 2003 and I'm damned if I remember why. let's put
it back so we don't truncate the refill count and see what happens.
<akpm@osdl.org>
[PATCH] vmscan: add lru_to_page() helper
From: Nick Piggin <piggin@cyberone.com.au>
Add a little helper macro for a common list extraction operation in vmscan.c
<akpm@osdl.org>
[PATCH] slab: avoid higher-order allocations
From: Manfred Spraul <manfred@colorfullife.com>
At present slab is using 2-order allocations for the size-2048 cache. Of
course, this can affect networking quite seriously.
The patch ensures that slab will never use more than a 1-order allocation
for objects which have a size of less than 2*PAGE_SIZE.
<torvalds@ppc970.osdl.org>
Revert attribute_used changes in module.h. They were wrong.
Cset exclude: akpm@osdl.org|ChangeSet|20040312161945|47751
<jgarzik@redhat.com>
[wireless] Add new Prism54 wireless driver.
<jgarzik@redhat.com>
[wireless prism54] remove WIRELESS_EXT ifdefs
<trivial@rustcorp.com.au>
[PATCH] drivers_net_wireless_airo.c '< 0' comparison make sense
From: <adobriyan@mail.ru>
The sense of the comparison was signed, but the code was testing
an unsigned variable for less-than-zero.
<manfred@colorfullife.com>
[PATCH] forcedeth update
Andrew de Quincey added wol support to forcedeth.
The patch also renames additional function, to help analyzing backtraces.
<rddunlap@osdl.org>
[PATCH] eepro init section usage
eepro_print_info() can be __init.
<rddunlap@osdl.org>
[PATCH] smctr: fix init section usage
smctr_chk_mca() can be __init.
<brazilnut@us.ibm.com>
[PATCH] pcnet32 correct names for changes
This patch corrects the names of contributors of changes to the pcnet32
driver.
<brazilnut@us.ibm.com>
[PATCH] netdevice.h add netif_msg_init helper
This patch adds a helper function to initialize the debug bit mask
for use with netif_msg_*. When the debug_value is out of range
it returns the default_msg_enable_bits. Tested IA32.
<arjanv@redhat.com>
[PATCH] xirc2ps ethtool fix
patch below adds bus_info for xirc2ps_cs; anaconda depends on this info to
be there.
<rddunlap@osdl.org>
[PATCH] use netdev_priv() in appletalk & fc
<rddunlap@osdl.org>
[PATCH] use netdev_priv() in /hamradio/
<rddunlap@osdl.org>
[PATCH] use netdev_priv() in 3com net drivers
<rddunlap@osdl.org>
[PATCH] use netdev_priv() in net/ lance drivers
<rddunlap@osdl.org>
[PATCH] use netdev_priv() in net/arm drivers
<rddunlap@osdl.org>
[PATCH] use netdev_priv() in net/ intel drivers
<rddunlap@osdl.org>
[PATCH] use netdev_priv() in net/pcmcia/ drivers
<rddunlap@osdl.org>
[PATCH] use netdev_priv() in net/tulip drivers
<rddunlap@osdl.org>
[PATCH] use netdev_priv() in net/tokenring/ drivers
<rddunlap@osdl.org>
[PATCH] use netdev_priv() in net/wireless/ drivers
<rddunlap@osdl.org>
[PATCH] use netdev_priv() in tap/tun/plip/loop/skel
<rddunlap@osdl.org>
[PATCH] use netdev_priv() in fusion/mptlan
<rddunlap@osdl.org>
[PATCH] use netdev_priv() in net/wan drivers
<rddunlap@osdl.org>
[PATCH] use netdev_priv() in drivers/net/ (others)
<rene.herman@keyaccess.nl>
[PATCH] 8139too assertions
<jgarzik@redhat.com>
Add Promise SX8 (carmel) block driver.
<trini@kernel.crashing.org>
PPC32: Fix include/asm-ppc/dma-mapping.h for the !CONFIG_PCI case.
<trini@kernel.crashing.org>
PPC32: consistent_free only takes one arguement.
<jejb@mulgrave.(none)>
MPT Fusion driver 3.01.01 update
From: Moore, Eric Dean <Emoore@lsil.com>
This is an update for the MPT Fusion drivers 2.6 kernel.
Version 3.01.01.
This is a fix for poor performance in RAID Volumes.
The dvStatus was being cleared for hidden physical disks
when mptscsih_slave_destroy is called.
Also, I have fixed the warning comming from mptscsih_reset_timeouts.
<markh@osdl.org>
[PATCH] aacraid driver patch
I submitted a patch last month for the aacraid driver's reset handler.
I left out setting function pointers in the adapter_ops structure for
the adapter_check_health element.
<willy@debian.org>
[PATCH] sym2 2.1.18i
- Correct a typo "mvram" -> "nvram".
- Re-do the PQS/PDS support which I'd #if 0 out. Should even work on
multiple-domain boxes now ;-)
- Move all the nvram definitions to sym_nvram.h (from Gerard's 2.1.19-pre3)
- hcb_p -> struct sym_hcb *
- sdev_p -> struct sym_device *
- Delete a lot of unused macros from sym_misc.h
- Move READ_BARRIER and WRITE_BARRIER definitions to sym_glue.h
- SYM_CONF_NVRAM_WRITE_SUPPORT (from Gerard's 2.1.19-pre3). Not enabled
yet.
- Fix some -W warnings (some courtesy of Adrian Bunk).
<markh@osdl.org>
[PATCH] add adapter support to aacraid driver (update)
Mark S. said that there was another adapter added, and that they changed
the names of some boards. Here is the updated version.
<James.Bottomley@steeleye.com>
[PATCH] add device quiescing to the SCSI API
This patch adds the ability to quiesce a SCSI device. The idea is that
user issued commands (including filesystem ones) would get blocked,
while mid-layer and device issued ones would be allowed to proceed.
This is for things like Domain Validation which like to operate on an
otherwise quiet device.
There is one big change: to get all of this to happen correctly,
scsi_do_req() has to queue on the *head* of the request queue, not the
tail as it was doing previously. The reason is that deferred requests
block the queue, so anything needing executing after a deferred request
has to go in front of it. I don't think there are any untoward
consequences of this.
<James.Bottomley@steeleye.com>
[PATCH] more SPI transport attribute updates
This does three things
- Fix the signedness of the bit attributes (otherwise they show up as -1
when on, not 1)
- Make the period adjust to the closest value rather than ignoring
values it doesn't understand.
- Add a visibility field to attributes, so drivers can get rid of
attributes they're never going to care about
<James.Bottomley@steeleye.com>
[PATCH] update the 53c700 use of transport attributes
This patch just brings it up to date with the previous transport
attribute patch, moving it to the model where it sets the min/max of the
attribute if asked for something outside its range. It also only makes
period and offset visible (it doesn't care about any of the others).
<corbet@lwn.net>
[PATCH] cdev 1/2: Eliminate /sys/cdev
This is the first of two patches designed to make life easier for authors
of device driver books - and, with luck, driver authors too.
/sys/cdev is, according to Al, a mistake which was never really meant to
exist. I believe nothing uses it currently - there isn't a whole lot there
to use. Its existence takes up system resources, and also requires drivers
to deal with the cdev's embedded kobject in their failure paths. The
following patch (against 2.6.4) makes it all go away.
OK, almost all. We have to keep (but not register) cdev_subsys because
it's rwsem is needed to control access to cdev_map.
<corbet@lwn.net>
[PATCH] cdev 2/2: hide cdev->kobj
The existing cdev interface requires users to deal with the embedded
kobject in two places:
- The kobject name field must be set before adding the cdev, and
- Should cdev_add() fail, a call to kobject_put() is required.
IMO, this exposure of the embedded kobject makes the interface more brittle
and harder to understand. It's also unnecessary. With the removal of
/sys/cdev, a call to cdev_del() will nicely replace kobject_put(), and the
name setting is easily wrapped.
This is against 2.6.4, but depends on the /sys/cdev removal patch.
<greg@kroah.com>
remove cdev_set_name completely as it is not needed.
<jeremy@sgi.com>
[PATCH] update for sata_vsc
Hch reviewed my sata_vsc driver and had a few comments.
If you could please apply these changes, I'd appreciate it.
The copyright is probably the most important for me (apparently
I goofed with the OSL.
thanks
jeremy
<jgarzik@redhat.com>
[libata] clean up module_init() hook of sata_{promise,sil,svw} drivers
The more verbose form existed for decreased differences with the 2.4
backport. But differences in this area existed anyway, so why not
clean up the 2.6 versions even more.
<scott.feldman@intel.com>
[netdrvr e100] fix stray skb pointer
* Not setting cb->skb = NULL after releasing skb to OS or during
initialization of cbs. Reported by Deepak Saxena
[dsaxena@plexity.net].
<len.brown@intel.com>
[ACPI] SMP poweroff (David Shaohua Li)
http://bugzilla.kernel.org/show_bug.cgi?id=1141
<len.brown@intel.com>
[ACPI] ACPICA 20040311 from Bob Moore
Fixed a problem where errors occurring during the parse phase of control
method execution did not abort cleanly. For example, objects created
and installed in the namespace were not deleted. This caused all
subsequent invocations of the method to return the AE_ALREADY_EXISTS
exception.
Implemented a mechanism to force a control method to "Serialized"
execution if the method attempts to create namespace objects.
(The root of the AE_ALREADY_EXISTS problem.)
Implemented support for the predefined _OSI "internal" control method.
Initial supported strings are "Linux", "Windows 2000", "Windows 2001",
and "Windows 2001.1", and can be easily upgraded for new strings as
necessary. This feature allows Linux to execute
the fully tested, "Windows" code path through the ASL code
Global Lock Support: Now allows multiple acquires and releases with any
internal thread. Removed concept of "owning thread" for this special
mutex.
Fixed two functions that were inappropriately declaring large objects on
the CPU stack: ps_parse_loop() and ns_evaluate_relative().
Reduces the stack usage during method execution considerably.
Fixed a problem in the ACPI 2.0 FACS descriptor (actbl2.h) where the
S4Bios_f field was incorrectly defined as UINT32 instead of UINT32_BIT.
Fixed a problem where acpi_ev_gpe_detect() would fault
if there were no GPEs defined on the machine.
Implemented two runtime options: One to force all control method
execution to "Serialized" to mimic Windows behavior, another to disable
_OSI support if it causes problems on a given machine.
<jgarzik@redhat.com>
[blk carmel] fix bug, minor cleanups
* the scan-channels message seemed to always give invalid output.
Look at the constant, and discover we are sending another
message entirely. Fix the constant (CARM_MSG_IOCTL).
* s/MISC_SYNC_TIME/MISC_SET_TIME/
* list some additional messages
* bump version number
<len.brown@intel.com>
[ACPI] add boot parameters "acpi_osi=" and "acpi_serialize"
acpi_osi= will disable the _OSI method -- which by default
tells the BIOS to behave as if Windows is the OS.
acpi_serialize is for debugging AE_ALREADY_EXISTS failures
<James.Bottomley@steeleye.com>
[PATCH] Add Domain Validation to the SPI transport class
Domain Validation is a fairly essential element to the SCSI Parallel
Interface (although if you look very few drivers actually do it). The
premise is that the Parallel Bus, being a transmission line, might not
be correctly tuned to the transfers you want do perform. DV probes the
parameters of the transport until it finds a setting that works (for the
interested, see http://www.t10.org/ftp/t10/drafts/sdv/sdv-r08b.pdf)
The current code employs rather simplistic DV heuristics, although those
can be improved over time. The change in scsi_scan.c is so that DV may
be done easily from the slave_configure routine, which is the most
natural place to begin.
<perex@suse.cz>
ALSA CVS update - Clemens Ladisch <clemens@ladisch.de>
ALSA sequencer
remove superfluous call to snd_seq_event_port_detach
<perex@suse.cz>
ALSA CVS update - Clemens Ladisch <clemens@ladisch.de>
ALSA sequencer,ALSA<-OSS sequencer
use wrapper function for DELETE_PORT ioctl calls
<perex@suse.cz>
ALSA CVS update - Clemens Ladisch <clemens@ladisch.de>
USB generic driver
use MIN_PACKS_URB as lower bound for nrpacks parameter
<perex@suse.cz>
ALSA CVS update - Clemens Ladisch <clemens@ladisch.de>
USB generic driver
show one decimal place of momentary frequency in proc file
<perex@suse.cz>
ALSA CVS update - Clemens Ladisch <clemens@ladisch.de>
USB generic driver
prevent twenty-seconds wait when unplugging USB MIDI device with a port subscription
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
VIA82xx driver
restrict the PCM sample rates to 32, 44.1 and 48kHz when the SPDIF
switch is on.
<perex@suse.cz>
ALSA CVS update - Jaroslav Kysela <perex@suse.cz>
DT019x driver
Fixed warnings
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
VIA82xx driver
patch was applied wrongly. fixed the rate restriction of spdif output
again.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Documentation,PCI drivers,au88x0 driver
added the au88x0 drivers for Aureal soundcards by Manuel Jander <mjander@embedded.cl>
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
PPC Tumbler driver
added input source switch to select mic/line-in.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Documentation
changed the description of the buffer allocation routines
for the new designed functions.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Documentation
fixed the files to include.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
USB generic driver
added fix and workaround for the mixer problem on SB Extigy.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
PPC Tumbler driver
fixed the info callback of mixer input source (for enum type).
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
au88x0 driver
removed EXPORT_NO_SYMBOLS.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
EMU10K1/EMU10K2 driver
disabled Dell OEM Emu10k1x from the pci id list.
the board isn't compatible with the normal emu10k1.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
MIXART driver
fixed the compile warning.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Documentation,PCI drivers,ATIIXP driver
added snd-atiixp driver for the ATI IXP150/200/250 AC97 controllers.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Documentation,PCI drivers,Intel8x0-modem driver
added Intel-compatible onboard MC97 modem driver
by Sasha Khapyorsky <sashak@smlink.com>
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
ALSA Core
added the new magic numbers for atiixp and au88x0 drivers.
<perex@suse.cz>
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
ALSA Core
fixed the wrong release of id proc file.
<James.Bottomley@steeleye.com>
[PATCH] Fix removable USB drive oops
The actual problem reported was because there wasn't a corresponding
check on transport_classdev.class in the unregister.
However, on closer inspection I also turned up a nasty thinko in the
reference counting. For reasons best known to the class code authors,
class devices have to obtain their own references to the devices they're
attached to which they release again in their .release routines, so you
have to remember to do a get_device() in the correct place after the
class_device_add(). I put comments in the code so that, hopefully, we
can avoid the problem in future.
<wim@iguana.be>
[WATCHDOG] v2.6.4 pcwd_pci-v1.00_20040313-patch
Two small fixes:
* Make cards_found a global variable so that if we remove the
pci device we can count down.
* If we can't find a correct I/O address for the card, then we
should disable the card again.
<wim@iguana.be>
WATCHDOG] v2.6.4 wdt977-v0.03-patch
Version 0.03 of wdt977.c - Changes that were made are:
* Extract the stop code in a seperate function (wdt977_stop)
* Extract the start code in a seperate function (wdt977_start)
* Rename kick_wdog to wdt977_keepalive for consistency
* Extract the watchdog's status code to a seperate function (wdt977_get_status)
* Change the way we deal with the watchdog timeout:
Up till now we used timeoutM (in minutes) as the correct value and then
calculated timeout as being timeoutM*60 or *timeoutM*120 (depending on
wether or not we have the netwinder hardware bug).
From now on timeout is the correct value and we calculate timeoutM out
of it. Because of this we start with checking wether or not we have a
correct timeout value (if not we reset it to the default value) and we
automatically calculate timeoutM. Each time we change timeout with a
correct timeout value, we recalculate timeoutM.
* Extended ioctl code with WDIOC_SETOPTIONS and updated the watchdog_info structure
* Added notifier support
Code has been tested by Woody
<wim@iguana.be>
[WATCHDOG] v2.6.4 notifier_block-patches
Remove unnecessary initialization in notifier_block
<trond.myklebust@fys.uio.no>
NFSv2/v3/v4: New attribute revalidation code that no
longer relies on ctime for correctness in avoiding
update races.
VFS: allow filesystems to disable inode_update_time() on
a per-inode basis.
<trond.myklebust@fys.uio.no>
NFSv2/v3/v4: New file writeout strategy. Defer writes until a flush
is requested by the application (or memory pressure).
<trond.myklebust@fys.uio.no>
Configuration: simplify configuration options. Automatically select RPCSEC_GSS
if NFSv4 is selected. Remove need for user to select SUNRPC_GSS, and the
crypto options.
Make NFSv3 a recommended option.
<trond.myklebust@fys.uio.no>
NFSv2/v3: Ensure that we only use GETATTR+STATFS (NFSv2) and FSINFO (NFSv3) when
mounting. This should allow us to use AUTH_SYS credentials when mounting,
(even when the user requests RPCSEC_GSS authentication) due to the hack
described in RFC2623.
Remove the broken NFS_INO_FAKE_ROOT hack.
<trond.myklebust@fys.uio.no>
NFSv2/v3/v4: Ensure that fsync() flushes all writebacks to disk rather than just the
ones labelled as belonging to our file. This fixes a bug in which msync(MS_SYNC)
will fail to flush the pages to disk.
<trond.myklebust@fys.uio.no>
NFSv2/v3/v4: A patch by Greg Banks that fixes the "VFS: Busy inodes after unmount."
problem.
<trond.myklebust@fys.uio.no>
RPC: Make XIDs unique on a per-transport basis rather than globally unique. Gets rid
of an unnecessary global spinlock.
<trond.myklebust@fys.uio.no>
RPC: Sync rpc_set_timeo() up to the 2.4.x version. In particular, this will
ensure that the timeout shift is clamped to a maximum value of 8.
RPC: Fix by Olaf Kirch to the rpc scheduler to ensure sync tasks respect the
"intr" mount flag.
<trond.myklebust@fys.uio.no>
RPC: Ensure that we have the correct capabilities when binding a socket to a reserved
port. Fixes a privilege bug when CONFIG_SECURITY is set.
RPC: When trying to reconnect to a TCP port, try to bind() to the last used port number
in order to ensure that the servers NFS replay cache recognizes this as being the
same mount as before.
<trond.myklebust@fys.uio.no>
RPC,NFSv2/v3/v4: Ensure that xprt_create_proto() and rpc_create_client() return
full error codes. Should allow the "mount" program to print more useful error
diagnostics.
<trond.myklebust@fys.uio.no>
NFSv2/v3/v4: Parenthesize #defines in nfs?xdr.c. Fix an off-by-one error on the value
of compound_decode_hdr_maxsz.
NFSv4: fix a printk() typo (spotted by Linda Dunaphant).
NFSv4: Ensure that nfs4_open_reclaim() copies the value of the new stateid back into
the shared nfsv4 state structure.
NFSv4: Don't leak NFS4ERR_WRONGSEC errors back into nfs_lookup().
RPC,NFS,Lockd: Mark the debugging code as "unlikely" so that gcc moves it out of the
mainline code paths.
<trond.myklebust@fys.uio.no>
NFSv2/v3 locking: Patch by Patrice Dumas to implement nlmsvc_proc_granted_res.
When a server receives that callback it should deallocate the corresponding blocked
lock using the nlmsvc_grant_reply function.
<trond.myklebust@fys.uio.no>
NFSv2/v3 locking: Patch by Patrice Dumas that adds a check to ensure we really
were requesting a blocking lock when we get a reply from the server asking us to
block.
<trond.myklebust@fys.uio.no>
NFSv2/v3 locking: Patch by Patrice Dumas to ensure that the server index blocks uniquely
by using the client address in addition to the value of the NLM cookie field.
<trond.myklebust@fys.uio.no>
NFSv2/v3 locking: A patch to ensure that blocks which are not going to time out
are placed last on the ordered list nlm_block (problem reported by Olaf
Kirch).
<trond.myklebust@fys.uio.no>
RPC,NFSv3: remove the redundant "memset()" in call_encode(). Fix up the only places
where this causes a padding error: xdr_encode_fhandle() and unx_marshal()
<trond.myklebust@fys.uio.no>
RPC: patch by Chuck Lever to make the number of RPC slots a tunable parameter.
This is wanted in order to allow the NFS client to send more requests before
is has to block and wait for replies.
This is mainly useful if you have a WAN and want to ensure that the bandwidth
is being used efficiently.
<trond.myklebust@fys.uio.no>
NFSv2: Fix up NFSv2 reads so that they report when the server returned a short
read due to EOF.
<trond.myklebust@fys.uio.no>
NFSv4: Fix a list corruption in the NFSv4 state engine.
<trond.myklebust@fys.uio.no>
NFS: From the suse kenrel RPM: handle ENOMEM from nfs_fhget().
<trond.myklebust@fys.uio.no>
From: <martin@meltin.net>
Forward-port from 2.4:
The following patch pulls an NFS server IP address off root_server_path
(handed out via the DHCP root-path option), if it is present. For example,
you can do this sort of thing in dhcpd.conf:
root-path = 192.168.1.33:/tftpboot/yip.zImage
This lets you mount your root filesystem off a different machine than you
booted from, without needing to use kernel command-line parameters.
The patch appears to be backwards compatible.
RFC2132 says this about the root-path option:
This option specifies the path-name that contains the client's root
disk. The path is formatted as a character string consisting of
characters from the NVT ASCII character set.
This is sufficiently vague to allow the path-name to include an IP-address.
Also, I found some documentation for FreeBSD saying it does this too, so it
must be right, because those FreeBSD guys are really smart... :-)
The only downside of the patch is that the summary that ipconfig prints can
be a little odd when the kernel command line overrides whatever ipconfig gets
from (say) DHCP. The address from the kernel command line seems to get
stripped off early, so ipconfig reports it, but it doesn't report the kernel
command line NFS path, since that's handled a bit later... This small
cosmetic problem looks difficult to "fix" without rewriting quite a bit of
stuff...
<trond.myklebust@fys.uio.no>
akpm@odsl.org: For complex reasons it is not possible to hold i_sem in nfs_update_inode().
Hence the i_size_write() in there is deadlocky. Go back to the old way.
<akpm@osdl.org>
[PATCH] ppc64: fix NUMA compile with large cpumasks
From: Anton Blanchard <anton@samba.org>
The recent NUMA changes fail to compile with large cpumasks, we need to use
a temporary to get around the type checking.
<akpm@osdl.org>
[PATCH] Use 64-bit counters for scheduler stats
From: Kingsley Cheung <kingsley@aurema.com>
A number of scheduler counters wrap around after 47 days. The context-switch
counter can wrap around after considerably less time.
Convert them to 64-bit values.
<akpm@osdl.org>
[PATCH] Manfred's patch to distribute boot allocations across nodes
From: Anton Blanchard <anton@samba.org>
Distribute boot time memory allocations across all nodes, from Manfred
Spraul.
We want to spread memory across nodes to avoid all allocations ending
up on node 0.
Spreading boot time allocations around also helps us to avoid node 0
becoming the hot node.
I took it for a spin:
buddyinfo before:
Node 7, 0