Commit Graph

41018 Commits

Author SHA1 Message Date
Alasdair G Kergon bfc5ecdf48 [PATCH] dm: fix find_device race
There is a race between dev_create() and find_device().

If the mdptr has not yet been stored against a device, find_device() needs to
behave as though no device was found.  It already returns NULL, but there is a
dm_put() missing: it must drop the reference dm_get_md() took.

The bug was introduced by dm-fix-mapped-device-ref-counting.patch.

It manifests itself if another dm ioctl attempts to reference a newly-created
device while the device creation ioctl is still running.  The consequence is
that the device cannot be removed until the machine is rebooted.  Certain udev
configurations can lead to this happening.

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Cc: <dm-devel@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08 18:29:23 -08:00
Vivek Goyal c06cb8b1c4 [PATCH] i386: Force data segment to be 4K aligned
o Currently there is no specific alignment restriction in linker script
  and in some cases it can be placed non 4K aligned addresses. This fails
  kexec which checks that segment to be loaded is page aligned.

o I guess, it does not harm data segment to be 4K aligned.

Signed-off-by: Vivek Goyal <vgoyal@in.ibm.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08 18:29:23 -08:00
J. Bruce Fields 81ac95c556 [PATCH] nfsd4: fix open-create permissions
In the case where an open creates the file, we shouldn't be rechecking
permissions to open the file; the open succeeds regardless of what the new
file's mode bits say.

This patch fixes the problem, but only by introducing yet another parameter
to nfsd_create_v3.  This is ugly.  This will be fixed by later patches.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Acked-by: Neil Brown <neilb@suse.de>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08 18:29:23 -08:00
J. Bruce Fields af85852de0 [PATCH] nfsd4: reindent do_open_lookup()
Minor rearrangement, cleanup of do_open_lookup().  No change in behavior.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Acked-by: Neil Brown <neilb@suse.de>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08 18:29:22 -08:00
Oleg Nesterov 75b2bd55bd [PATCH] A minor fix for set_mb() in Documentation/memory-barriers.txt
set_mb() is used by set_current_state() which needs mb(), not wmb().  I
think it would be right to assume that set_mb() implies mb(), all arches
seem to do just this.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Acked-by: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08 18:29:22 -08:00
Arjan van de Ven d654c673d6 [PATCH] Regression in 2.6.19-rc microcode driver
If the microcode driver is built in (rather than module) there are some,
ehm, interesting effects happening due to the new "call out to userspace"
behavior that is introduced..  and which runs too early.  The result is a
boot hang; which is really nasty.

The patch below is a minimally safe patch to fix this regression for 2.6.19
by just not requesting actual microcode updates during early boot.  (That
is a good idea in general anyway)

The "real" fix is a lot more complex given the entire cpu hotplug scenario
(during cpu hotplug you normally need to load the microcode as well); but
the interactions for that are just really messy at this point; this fix at
least makes it work and avoids a full detangle of hotplug.

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08 18:29:22 -08:00
Steve French 6e659c6399 [CIFS] Fix mount failure when domain not specified
Fixes Samba bugzilla #4176

    When users do not specify their domain on mount, 2.6.18 started sending
    default domain instead of a null domain (which was the only way on some
    servers to use a default domain).  Users of 2.6.18 who did not specify
    their domain name on mounts to certain common Windows servers that were
    members of a domain, but not the domain controller, would get mount
    failures which they did not get in 2.6.18

    This fixes that issue and should remove complaints about mount
    behavior changing.

Signed-off-by: Steve French <sfrench@us.ibm.com>
2006-11-08 23:10:46 +00:00
Linus Torvalds 082f2f84be Merge merom:v2.6/linux
* merom:v2.6/linux:
  x86-64: write IO APIC irq routing entries in correct order
  x86-64: clean up io-apic accesses
2006-11-08 10:45:37 -08:00
Linus Torvalds 48797ebd9e x86-64: write IO APIC irq routing entries in correct order
This is the x86-64 version of f9dadfa71b
that did the same thing on i386.

Since the "mask" bit is in the low word, when we write a new entry, we
need to write the high word first, before we potentially unmask it.

The exception is when we actually want to mask the interrupt, in which
case we want to write the low word first to make sure that the high word
doesn't change while the interrupt routing is still active.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08 10:27:54 -08:00
Linus Torvalds 6c0ffb9d2f x86-64: clean up io-apic accesses
This is just commit 130fe05dbc ported to
x86-64, for all the same reasons.  It cleans up the IO-APIC accesses in
order to then fix the ordering issues.

We move the accessor functions (that were only used by io_apic.c) out of
a header file, and use proper memory-mapped accesses rather than making
up our own "volatile" pointers.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08 10:23:03 -08:00
Linus Torvalds de8e7c1243 Revert "[PATCH] i386: Add MMCFG resources to i386 too"
This reverts commit de09bddb9d.  It tried
to reserve the MMCONFIG mmio memory ranges, but since the MMCONFIG
information is broken and often bogus (which is why we don't dare use it
most of the time _anyway_), it does more harm than good.

Cc: Jeff Chua <jeff.chua.linux@gmail.com>
Cc: Adrian Bunk <bunk@stusta.de>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-08 10:09:28 -08:00
Linus Torvalds 464908d7e2 Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:
  [libata] sata_via: fix obvious typo
2006-11-08 08:05:59 -08:00
Linus Torvalds 3ee783a3e4 Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [DECNET]: Endianess fixes (try #2)
  [TG3]: Fix array overrun in tg3_read_partno().
  [NET]: Set truesize in pskb_copy
  [NETPOLL]: Compute checksum properly in netpoll_send_udp().
  [PKT_SCHED] sch_htb: Use hlist_del_init().
  [TCP]: Don't use highmem in tcp hash size calculation.
  [NET]: kconfig, correct traffic shaper
2006-11-08 07:34:11 -08:00
Jeff Garzik 68ff6e8e0e [libata] sata_via: fix obvious typo
Spotted by Martin Devera.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-11-08 07:46:02 -05:00
Linus Torvalds 80c2188127 Linux 2.6.19-rc5
Ok, things are clearly starting to calm down.. Finally.
2006-11-07 18:24:20 -08:00
Linus Torvalds 5b064423d6 Merge branch 'fixes_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbglaw/vax-linux
* 'fixes_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbglaw/vax-linux:
  Update for the srm_env driver.
2006-11-07 18:22:31 -08:00
Adrian Bunk 3406118cd3 [PATCH] bcm43xx: Add error checking in bcm43xx_sprom_write()
The Coverity checker noted that these "if (err)"'s couldn't ever be
true.

It seems the intention was to check the return values of the
bcm43xx_pci_write_config32()'s?

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-11-07 20:05:07 -05:00
Michael Buesch ecac598bcd [PATCH] bcm43xx: Drain TX status before starting IRQs
Drain the Microcode TX-status-FIFO before we enable IRQs.
This is required, because the FIFO may still have entries left
from a previous run. Those would immediately fire after enabling
IRQs and would lead to an oops in the DMA TXstatus handling code.

Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-11-07 20:05:06 -05:00
Steven Whitehouse 375d9d7183 [DECNET]: Endianess fixes (try #2)
Here are some fixes to endianess problems spotted by Al Viro.

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-11-07 15:10:17 -08:00
Michael Chan af2c6a4aaa [TG3]: Fix array overrun in tg3_read_partno().
Use proper upper limits for the loops and check for all error
conditions.

The problem was noticed by Adrian Bunk.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-11-07 15:10:16 -08:00
Herbert Xu 25f484a62e [NET]: Set truesize in pskb_copy
Since pskb_copy tacks on the non-linear bits from the original
skb, it needs to count them in the truesize field of the new skb.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-11-07 15:10:14 -08:00
Chris Lalancette 8e365eec04 [NETPOLL]: Compute checksum properly in netpoll_send_udp().
Signed-off-by: Chris Lalancette <clalance@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-11-07 15:10:13 -08:00
Stephen Hemminger da33e3eb48 [PKT_SCHED] sch_htb: Use hlist_del_init().
Otherwise we can hit paths that (legally) do multiple deletes on the
same node and OOPS with the HLIST poison values there instead of
NULL.

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-11-07 15:10:12 -08:00
John Heffner 9e950efa20 [TCP]: Don't use highmem in tcp hash size calculation.
This patch removes consideration of high memory when determining TCP
hash table sizes.  Taking into account high memory results in tcp_mem
values that are too large.

Signed-off-by: John Heffner <jheffner@psc.edu>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-11-07 15:10:11 -08:00
Jiri Slaby 3b6a792f6a [NET]: kconfig, correct traffic shaper
As Patrick McHardy <kaber@trash.net> suggested, Traffic Shaper is now
obsolete and alternative to it is no longer CBQ, since its problems with
virtual devices, alter Kconfig text to reflect this -- put a link to the
traffic schedulers as a whole.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Acked-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-11-07 15:10:10 -08:00
Linus Torvalds 3d4248885b Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] 3927/1: Allow show_mem() to work with holes in memory map.
  [ARM] 3926/1: make timer led handle HZ != 100
  [ARM] 3923/1: S3C24XX: update s3c2410_defconfig with new drivers
  [ARM] 3922/1: S3C24XX: update s3c2410_defconfig to 2.6.19-rc4
  [ARM] 3921/1: S3C24XX: remove bast_defconfig
  [ARM] 3920/1: S3C24XX: Remove smdk2410_defconfig
  [ARM] 3919/1: Fixed definition of some PXA270 CIF related registers
  [ARM] 3918/1: ixp4xx irq-chip rework
  [ARM] 3912/1: Make PXA270 advertise HWCAP_IWMMXT capability
  [ARM] 3915/1: S3C2412: Add s3c2410_gpio_getirq() to general gpio.c
  [ARM] 3917/1: Fix dmabounce symbol exports
2006-11-07 14:55:40 -08:00
Jan-Benedict Glaw 16b7f4dcd3 Update for the srm_env driver.
This patch contains a fix for a bug introduced more than a year ago
(not setting *eof) and updates whitespace a bit.

Signed-off-by: Jan-Benedict Glaw <jbglaw@lug-owl.de>
2006-11-07 23:50:37 +01:00
Ray Lehtiniemi 5e70982750 [ARM] 3927/1: Allow show_mem() to work with holes in memory map.
show_mem() was not correctly handling holes in the memory
map.  It was treating the freed sections of the map as
though they contained valid struct page entries.  This
could cause incorrect debugging output or even a kernel
panic.

This patch keeps the struct meminfo around after system
initialization so that show_mem() can use it when
scanning memory.  show_mem() now walks over each bank
of each online node, rather than assuming that each node
contains a single contiguous bank.

Signed-off-by: Ray Lehtiniemi <rayl@mail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-11-07 19:39:00 +00:00
David Brownell 6d15cb42fe [ARM] 3926/1: make timer led handle HZ != 100
The timer LED is unusable at HZ=large, since it's got
a hard-wired value of 100 ticks per cycle; when HZ=1024
(for example) it's essentially always-on.  This patch
just makes that be HZ ticks per cycle.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-11-07 19:37:56 +00:00
Steve French 5fe14c851e [CIFS] Explicitly set stat->blksize
CIFS may perform I/O over the network in larger chunks than the page size,
so it should explicitly set stat->blksize to ensure optimal I/O bandwidth

Signed-off-by: Dave Kleikamp <shaggy@linux.vnet.ibm.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
2006-11-07 19:26:33 +00:00
Steve French 4891d53956 [CIFS] NFS stress test generates flood of "close with pending write" messages
Informational/debug message was being logged too often. The error
case of logging having to send a close with (presumably stuck on buggy
server) pending writes is still logged.

Signed-off-by: Steve French <sfrench@us.ibm.com>
2006-11-07 16:31:16 +00:00
Auke Kok edd106fc8a [PATCH] e1000: Fix regression: garbled stats and irq allocation during swsusp
e1000: Fix suspend/resume powerup and irq allocation

From: Auke Kok <auke-jan.h.kok@intel.com>

After 7.0.33/2.6.16, e1000 suspend/resume left the user with an enabled
device showing garbled statistics and undetermined irq allocation state,
where `ifconfig eth0 down` would display `trying to free already freed irq`.

Explicitly free and allocate irq as well as powerup the PHY during resume
fixes when needed.

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-11-07 04:27:51 -05:00
Johannes Berg e78181feb0 [PATCH] b44: change comment about irq mask register
Through some experimentation with the similarly built bcm43xx I came to
the conclusion that if the hw/firmware sets a bit in the interrupt
register, an interrupt will only be raised if that bit is included in
the interrupt mask. Hence, the interrupt mask is more like an interrupt
control mask.

This patch changes the comment to reflect that.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-11-07 04:27:51 -05:00
Linus Torvalds c836b7716a Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
  [MIPS] Fix EV64120 and Ocelot builds by providing a plat_timer_setup().
  [MIPS] EV64120: Fix PCI interrupt allocation.
  [MIPS] Make irq number allocator generally available for fixing EV64120.
  [MIPS] EV64120: Fix timer initialization for HZ != 100.
  [MIPS] Ocelot 3: Fix MAC address detection after platform_device conversion.
  [MIPS] Ocelot C: Fix MAC address detection after platform_device conversion.
  [MIPS] SB1: On bootup only flush cache on local CPU.
  [MIPS] Ocelot 3: Fix large number of warnings.
  [MIPS] Ocelot C: Fix mapping of ioport address range.
  [MIPS] Ocelot C: Fix warning about missmatching format string.
  [MIPS] Ocelot C: fix eth registration after conversion to platform_device
  [MIPS] Ocelot C: Fix large number of warnings.
2006-11-06 19:53:12 -08:00
Linus Torvalds 846cf85e71 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb
* 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb:
  V4L/DVB (4751): Fix DBV_FE_CUSTOMISE for card drivers compiled into kernel
  V4L/DVB (4784): [saa7146_i2c] short_delay mode fixed for fast machines
  V4L/DVB (4770): Fix mode switch of Compro Videomate T300
  V4L/DVB (4787): Budget-ci: Inversion setting fixed for Technotrend 1500 T
  V4L/DVB (4786): Pvrusb2: use NULL instead of 0
  V4L/DVB (4785): Budget-ci: Change DEBIADDR_IR to a safer default
  V4L/DVB (4752): DVB: Add DVB_FE_CUSTOMISE support for MT2060
2006-11-06 19:52:29 -08:00
Ralf Baechle 73f4388aed [MIPS] Fix EV64120 and Ocelot builds by providing a plat_timer_setup().
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06 20:55:39 +00:00
Ralf Baechle 4e5852f31a [MIPS] EV64120: Fix PCI interrupt allocation.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06 20:55:38 +00:00
Ralf Baechle 4a4cf77923 [MIPS] Make irq number allocator generally available for fixing EV64120.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06 20:55:38 +00:00
Ralf Baechle 325d08d1a4 [MIPS] EV64120: Fix timer initialization for HZ != 100.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06 20:55:38 +00:00
Ralf Baechle ff28cbd280 [MIPS] Ocelot 3: Fix MAC address detection after platform_device conversion.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06 20:55:38 +00:00
Ralf Baechle 907c51b2d1 [MIPS] Ocelot C: Fix MAC address detection after platform_device conversion.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06 20:55:37 +00:00
Ralf Baechle d6b861c640 [MIPS] SB1: On bootup only flush cache on local CPU.
This fixes a warning on bootup warning in smp_call_function.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06 20:55:37 +00:00
Ralf Baechle d19f7befe9 [MIPS] Ocelot 3: Fix large number of warnings.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06 20:55:36 +00:00
Ralf Baechle ad0b365573 [MIPS] Ocelot C: Fix mapping of ioport address range.
o Fix warnings
 o 768MB worth of I/O ports were insane
 o 64-bit kernels don't need special handling because ioremap does the magic

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06 20:55:36 +00:00
Ralf Baechle 2002d2bde1 [MIPS] Ocelot C: Fix warning about missmatching format string.
CC      arch/mips/momentum/ocelot_c/setup.o
arch/mips/momentum/ocelot_c/setup.c: In function 'momenco_time_init':
arch/mips/momentum/ocelot_c/setup.c:223: warning: format '%d' expects type 'int', but argument 2 has type 'long unsigned int'

Change data type to match format string; a 32-bit type better suits our
needs.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06 20:55:36 +00:00
Ralf Baechle 9c422e2ad6 [MIPS] Ocelot C: fix eth registration after conversion to platform_device
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06 20:55:35 +00:00
Ralf Baechle cca72333e7 [MIPS] Ocelot C: Fix large number of warnings.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-11-06 20:55:35 +00:00
Linus Torvalds 64651309a1 Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes
* git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes:
  [DLM] fix oops in kref_put when removing a lockspace
  [DLM] Fix kref_put oops
  [GFS2] Fix OOM error handling
  [GFS2] Fix incorrect fs sync behaviour.
  [GFS2] don't panic needlessly
2006-11-06 09:10:25 -08:00
Linus Torvalds b7651030a5 Merge branch 'for-linus' of git://www.atmel.no/~hskinnemoen/linux/kernel/avr32
* 'for-linus' of git://www.atmel.no/~hskinnemoen/linux/kernel/avr32:
  AVR32: Add missing return instruction in __raw_writesb
  AVR32: Wire up sys_epoll_pwait
  AVR32: Fix thinko in generic_find_next_zero_le_bit()
  AVR32: Get rid of board_early_init
2006-11-06 09:07:19 -08:00
Linus Torvalds bee42f626e Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
  [S390] IRQs too early enabled.
  [S390] revert add_active_range() usage patch.
2006-11-06 09:06:53 -08:00