15 years agoNTFS: Fix compilation when configured read-only.
Anton Altaparmakov [Thu, 17 Mar 2005 10:51:33 +0000]
NTFS: Fix compilation when configured read-only.

- Add ifdef NTFS_RW around write specific code if fs/ntfs/runlist.[hc] and
  fs/ntfs/attrib.[hc].
- Minor bugfix to fs/ntfs/attrib.c::ntfs_attr_make_non_resident() where the
  runlist was not freed in all error cases.
- Add fs/ntfs/runlist.[hc]::ntfs_rl_find_vcn_nolock().

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Include linux/swap.h in fs/ntfs/attrib.c for mark_page_accessed().
Anton Altaparmakov [Mon, 4 Apr 2005 13:59:42 +0000]
NTFS: Include linux/swap.h in fs/ntfs/attrib.c for mark_page_accessed().

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: - Modify ->readpage and ->writepage (fs/ntfs/aops.c) so they detect
Anton Altaparmakov [Thu, 10 Mar 2005 11:06:19 +0000]
NTFS: - Modify ->readpage and ->writepage (fs/ntfs/aops.c) so they detect
        and handle the case where an attribute is converted from resident
        to non-resident by a concurrent file write.
      - Reorder some operations when converting an attribute from resident
        to non-resident (fs/ntfs/attrib.c) so it is safe wrt concurrent
        ->readpage and ->writepage.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Fix sign of various error return values to be negative in
Anton Altaparmakov [Wed, 9 Mar 2005 15:18:43 +0000]
NTFS: Fix sign of various error return values to be negative in
      fs/ntfs/lcnalloc.c.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Add fs/ntfs/attrib.[hc]::ntfs_attr_make_non_resident().
Anton Altaparmakov [Wed, 9 Mar 2005 15:15:06 +0000]
NTFS: Add fs/ntfs/attrib.[hc]::ntfs_attr_make_non_resident().

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: - Fix bug in fs/ntfs/attrib.c::ntfs_find_vcn_nolock() where after
Anton Altaparmakov [Mon, 7 Mar 2005 21:43:38 +0000]
NTFS: - Fix bug in fs/ntfs/attrib.c::ntfs_find_vcn_nolock() where after
        dropping the read lock and taking the write lock we were not checking
        whether someone else did not already do the work we wanted to do.
      - Rename ntfs_find_vcn_nolock() to ntfs_attr_find_vcn_nolock().
      - Tidy up some comments in fs/ntfs/runlist.c.
      - Add LCN_ENOMEM and LCN_EIO definitions to fs/ntfs/runlist.h.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Add fs/ntfs/attrib.[hc]::ntfs_attr_vcn_to_lcn_nolock() used by the new
Anton Altaparmakov [Mon, 7 Mar 2005 21:36:18 +0000]
NTFS: Add fs/ntfs/attrib.[hc]::ntfs_attr_vcn_to_lcn_nolock() used by the new
      write code.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Add AT_EA in addition to AT_DATA to whitelist for being allowed to be
Anton Altaparmakov [Thu, 3 Mar 2005 16:38:59 +0000]
NTFS: Add AT_EA in addition to AT_DATA to whitelist for being allowed to be
      non-resident in fs/ntfs/attrib.c::ntfs_attr_can_be_non_resident().

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Correct sparse file handling. The compressed values need to be
Anton Altaparmakov [Thu, 3 Mar 2005 14:43:43 +0000]
NTFS: Correct sparse file handling.  The compressed values need to be
      checked and set in the ntfs inode as done for compressed files
      and the compressed size needs to be used for vfs inode->i_blocks
      instead of the allocated size, again, as done for compressed files.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Make fs/ntfs/namei.c::ntfs_get_{parent,dentry} static and move the
Anton Altaparmakov [Thu, 3 Mar 2005 13:44:15 +0000]
NTFS: Make fs/ntfs/namei.c::ntfs_get_{parent,dentry} static and move the
      definition of ntfs_export_ops from fs/ntfs/super.c to namei.c.
      Also, declare ntfs_export_ops in fs/ntfs/ntfs.h.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Fix printk format warnings on ia64. (Randy Dunlap)
Randy Dunlap [Thu, 3 Mar 2005 11:19:53 +0000]
NTFS: Fix printk format warnings on ia64. (Randy Dunlap)

Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: - Set the ntfs_inode->allocated_size to the real allocated size in the
Anton Altaparmakov [Wed, 2 Mar 2005 17:03:24 +0000]
NTFS: - Set the ntfs_inode->allocated_size to the real allocated size in the
        mft record for resident attributes (fs/ntfs/inode.c).
      - Small readability cleanup to use "a" instead of "ctx->attr"
        everywhere (fs/ntfs/inode.c).

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Fix a nasty runlist merge bug when merging two holes.
Anton Altaparmakov [Fri, 18 Feb 2005 10:03:13 +0000]
NTFS: Fix a nasty runlist merge bug when merging two holes.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Change time to u64 in time.h::ntfs2utc() as it otherwise generates a
Anton Altaparmakov [Fri, 18 Feb 2005 09:23:39 +0000]
NTFS: Change time to u64 in time.h::ntfs2utc() as it otherwise generates a
      warning in the do_div() call on sparc32.  Thanks to Meelis Roos for the
      report and analysis of the warning.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: - Split ntfs_map_runlist() into ntfs_map_runlist() and a non-locking
Anton Altaparmakov [Tue, 15 Feb 2005 10:08:43 +0000]
NTFS: - Split ntfs_map_runlist() into ntfs_map_runlist() and a non-locking
helper ntfs_map_runlist_nolock() which is used by ntfs_map_runlist().
This allows us to map runlist fragments with the runlist lock already
held without having to drop and reacquire it around the call.  Adapt
all callers.
      - Change ntfs_find_vcn() to ntfs_find_vcn_nolock() which takes a locked
runlist.  This allows us to find runlist elements with the runlist
lock already held without having to drop and reacquire it around the
call.  Adapt all callers.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Fix a bug in fs/ntfs/runlist.c::ntfs_mapping_pairs_decompress() in
Anton Altaparmakov [Thu, 3 Feb 2005 12:04:36 +0000]
NTFS: Fix a bug in fs/ntfs/runlist.c::ntfs_mapping_pairs_decompress() in
      the creation of the unmapped runlist element for the base attribute
      extent.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: - Add disable_sparse mount option together with a per volume sparse
Anton Altaparmakov [Thu, 3 Feb 2005 12:02:56 +0000]
NTFS: - Add disable_sparse mount option together with a per volume sparse
enable bit which is set appropriately and a per inode sparse disable
bit which is preset on some system file inodes as appropriate.
      - Enforce that sparse support is disabled on NTFS volumes pre 3.0.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Optimise/reorganise some error handling code in fs/ntfs/aops.c.
Anton Altaparmakov [Thu, 13 Jan 2005 16:03:38 +0000]
NTFS: Optimise/reorganise some error handling code in fs/ntfs/aops.c.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Fixup the resident attribute resizing code in
Anton Altaparmakov [Thu, 13 Jan 2005 15:26:29 +0000]
NTFS: Fixup the resident attribute resizing code in
      fs/ntfs/aops.c::ntfs_{prepare,commit}_write()() and re-enable it.
      It should be safe now.  (Famous last words...)

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Fix stupid bug in fs/ntfs/mft.c introduced in last changeset.
Anton Altaparmakov [Thu, 13 Jan 2005 11:04:39 +0000]
NTFS: Fix stupid bug in fs/ntfs/mft.c introduced in last changeset.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Repeat a failed ntfs_truncate() in fs/ntfs/aops.c::ntfs_writepage()
Anton Altaparmakov [Wed, 12 Jan 2005 13:52:30 +0000]
NTFS: Repeat a failed ntfs_truncate() in fs/ntfs/aops.c::ntfs_writepage()
      and abort if it fails again.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Use i_size_{read,write}() in fs/ntfs/{aops.c,mft.c} and protect
Anton Altaparmakov [Wed, 12 Jan 2005 13:08:26 +0000]
NTFS: Use i_size_{read,write}() in fs/ntfs/{aops.c,mft.c} and protect
      access to the i_size and other size fields using the size_lock.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Use i_size_read() in fs/ntfs/inode.c once and then use the cached value
Anton Altaparmakov [Fri, 19 Nov 2004 22:16:00 +0000]
NTFS: Use i_size_read() in fs/ntfs/inode.c once and then use the cached value
      afterwards when reading the size of the bitmap inode.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: - Use i_size_read() in fs/ntfs/super.c once and then use the cached
Anton Altaparmakov [Thu, 18 Nov 2004 20:34:59 +0000]
NTFS: - Use i_size_read() in fs/ntfs/super.c once and then use the cached
value afterwards.  Cache the initialized_size in the same way and
protect access to the two sizes using the size_lock.
      - Minor optimization to fs/ntfs/super.c::ntfs_statfs() and its helpers.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: In fs/ntfs/dir.c, use i_size_read() once and then the cached value
Anton Altaparmakov [Thu, 18 Nov 2004 15:01:06 +0000]
NTFS: In fs/ntfs/dir.c, use i_size_read() once and then the cached value
      afterwards.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: - In fs/ntfs/compress.c, use i_size_read() at the start and then use the
Anton Altaparmakov [Thu, 18 Nov 2004 13:46:45 +0000]
NTFS: - In fs/ntfs/compress.c, use i_size_read() at the start and then use the
cached value everywhere.  Cache the initialized_size in the same way
and protect the critical region where the two sizes are read using the
new size_lock of the ntfs inode.
      - Add the new size_lock to the ntfs_inode structure (fs/ntfs/inode.h)
and initialize it (fs/ntfs/inode.c).

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoMerge with /usr/src/ntfs-2.6.git
Anton Altaparmakov [Thu, 5 May 2005 09:15:25 +0000]
Merge with /usr/src/ntfs-2.6.git

15 years agoAutomatic merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2...
Linus Torvalds [Thu, 5 May 2005 02:52:45 +0000]
Merge ... /linux/kernel/git/aegl/linux-2.6.git

15 years agoMerge with /usr/src/ntfs-2.6.git
Anton Altaparmakov [Wed, 4 May 2005 23:08:35 +0000]
Merge with /usr/src/ntfs-2.6.git

15 years agoAutomatic merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2...
Linus Torvalds [Wed, 4 May 2005 21:23:14 +0000]
Merge ... /linux/kernel/git/shaggy/jfs-2.6.git/

15 years ago[IA64-SGI] convert some sn SAL_CALLs to ia64_sal_oemcall calls
Dean Nelson [Thu, 24 Mar 2005 02:05:00 +0000]
[IA64-SGI] convert some sn SAL_CALLs to ia64_sal_oemcall calls

Convert some sn SAL_CALLs to ia64_sal_oemcall calls so that they can be
called by kernel modules.

Signed-off-by: Dean Nelson <dcn@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>

15 years ago[IA64-SGI] move nodepda pointer out of pda
Dean Nelson [Tue, 22 Mar 2005 23:00:00 +0000]
[IA64-SGI] move nodepda pointer out of pda

Remove the p_nodepda and p_subnodepda pointers from the pda_s structure.
And then define a new per-cpu pointer to the nodepda and export it so
that it can be accessed by kernel modules.

Signed-off-by: Dean Nelson <dcn@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>

15 years agoNTFS: Use i_size_read() in fs/ntfs/file.c::ntfs_file_open().
Anton Altaparmakov [Wed, 17 Nov 2004 15:45:08 +0000]
NTFS: Use i_size_read() in fs/ntfs/file.c::ntfs_file_open().

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Use i_size_read() once and then use the cached value in
Anton Altaparmakov [Thu, 11 Nov 2004 12:42:00 +0000]
NTFS: Use i_size_read() once and then use the cached value in
      fs/ntfs/lcnalloc.c::ntfs_cluster_alloc().

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years agoNTFS: Use i_size_read() in fs/ntfs/logfile.c::ntfs_{check,empty}_logfile().
Anton Altaparmakov [Thu, 11 Nov 2004 12:34:00 +0000]
NTFS: Use i_size_read() in fs/ntfs/logfile.c::ntfs_{check,empty}_logfile().

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years ago[PATCH] i810fb: fix __initdata access
Denis Vlasenko [Wed, 4 May 2005 05:07:16 +0000]
[PATCH] i810fb: fix __initdata access

[hv]sync[12] are __initdata, causing mplayer to oops with the previous i810fb fix.

My fault, this fixes it. Sorry.

Signed-off-by: Linux Torvalds <torvalds@osdl.org>

15 years ago[PATCH] ipmi iomem annotations and fixes
Al Viro [Wed, 4 May 2005 04:40:22 +0000]
[PATCH] ipmi iomem annotations and fixes

annotated, a bunch of direct dereferencing replaced with readb().

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

15 years ago[PATCH] asm/signal.h unification
Al Viro [Wed, 4 May 2005 04:40:12 +0000]
[PATCH] asm/signal.h unification

New file - asm-generic/signal.h.  Contains declarations of
__sighandler_t, __sigrestore_t, SIG_DFL, SIG_IGN, SIG_ERR and default
definitions of SIG_BLOCK, SIG_UNBLOCK and SIG_SETMASK.

asm-*/signal.h switched to including it.  The only exception is
asm-parisc/signal.h that wants its own declaration of __sighandler_t;
that one is left as-is.

asm-ppc64/signal.h required one more thing - unlike everybody else it
used __sigrestorer_t instead of usual __sigrestore_t.  PPC64 switched to
common spelling.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

15 years ago[PATCH] sonypi trivial user annotations
Al Viro [Wed, 4 May 2005 04:40:02 +0000]
[PATCH] sonypi trivial user annotations

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

15 years ago[PATCH] ISA DMA Kconfig fixes - part 4 (irda)
Al Viro [Wed, 4 May 2005 04:39:52 +0000]
[PATCH] ISA DMA Kconfig fixes - part 4 (irda)

 * net/irda/irda_device.c::irda_setup_dma() made conditional on
   ISA_DMA_API (it uses helpers in question and irda is usable on
   platforms that don't have them at all - think of USB IRDA, for
   example).
 * irda drivers that depend on ISA DMA marked as dependent on
   ISA_DMA_API

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

15 years ago[PATCH] ISA DMA Kconfig fixes - part 3
Al Viro [Wed, 4 May 2005 04:39:42 +0000]
[PATCH] ISA DMA Kconfig fixes - part 3

Drivers that expect ISA DMA API are marked as such in Kconfig.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

15 years ago[PATCH] ISA_DMA Kconfig fixes - part 2 (parport_pc)
Al Viro [Wed, 4 May 2005 04:39:32 +0000]
[PATCH] ISA_DMA Kconfig fixes - part 2 (parport_pc)

Part of parport_pc that uses ISA DMA helpers made conditional on
CONFIG_ISA_DMA_API.  As the result, driver got usable for boxen that do
not have ISA DMA stuff and have normal PCI parport card stuck into
them - these never use DMA anyway.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

15 years ago[PATCH] ISA DMA Kconfig fixes - part 1
Al Viro [Wed, 4 May 2005 04:39:22 +0000]
[PATCH] ISA DMA Kconfig fixes - part 1

A bunch of drivers use ISA DMA helpers or their equivalents for
platforms that have ISA with different DMA controller (a lot of ARM
boxen).  Currently there is no way to put such dependency in Kconfig -
CONFIG_ISA is not it (e.g.  it is not set on platforms that have no ISA
slots, but have on-board devices that pretend to be ISA ones).

New symbol added - ISA_DMA_API.  Set when we have functional
enable_dma()/set_dma_mode()/etc.  set of helpers.  Next patches in the
series will add missing dependencies for drivers that need them.

I'm very carefully staying the hell out of the recurring flamefest on
what exactly CONFIG_ISA would mean in ideal world - added symbol has a
well-defined meaning and for now I really want to treat it as completely
independent from the mess around CONFIG_ISA.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

15 years ago[PATCH] mbcs trivial user annotations
Al Viro [Wed, 4 May 2005 04:39:01 +0000]
[PATCH] mbcs trivial user annotations

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

15 years ago[PATCH] sparc NULL noise removal
Al Viro [Wed, 4 May 2005 04:38:51 +0000]
[PATCH] sparc NULL noise removal

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

15 years agoJFS: Endian errors
Dave Kleikamp [Wed, 4 May 2005 14:11:49 +0000]
JFS: Endian errors

Thanks sparse!

Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com>

15 years agoAutomatic merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2...
Linus Torvalds [Wed, 4 May 2005 14:08:43 +0000]
Merge ... /linux/kernel/git/gregkh/usb-2.6.git/

15 years agoMerge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/gregkh/aoe-2.6.git/
Linus Torvalds [Wed, 4 May 2005 14:08:10 +0000]
Merge ... /linux/kernel/git/gregkh/aoe-2.6.git/

15 years agoMerge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6.git/
Linus Torvalds [Wed, 4 May 2005 14:07:22 +0000]
Merge ... /linux/kernel/git/gregkh/pci-2.6.git/

15 years agoMerge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.git
Linus Torvalds [Wed, 4 May 2005 14:06:38 +0000]
Merge ... /linux/kernel/git/davem/net-2.6.git

15 years agoNTFS: Use i_size_read() in fs/ntfs/attrib.c::ntfs_attr_set().
Anton Altaparmakov [Thu, 11 Nov 2004 11:18:10 +0000]
NTFS: Use i_size_read() in fs/ntfs/attrib.c::ntfs_attr_set().

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>

15 years ago[PATCH] PCI: drivers/pci/pci.c: remove pci_dac_set_dma_mask
Adrian Bunk [Sun, 1 May 2005 13:53:08 +0000]
[PATCH] PCI: drivers/pci/pci.c: remove pci_dac_set_dma_mask

pci_dac_set_dma_mask is currently completely unused.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] PCI Hotplug: fix pciehp regression
Dely Sy [Fri, 29 Apr 2005 01:08:53 +0000]
[PATCH] PCI Hotplug: fix pciehp regression

I fogot to remove the code that freed the memory in cleanup_slots().
Here is the new patch, which I have also taken care of the comment
by Eike to remove the cast in hotplug_slot->private.

Signed-off-by: Dely Sy <dely.l.sy@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] PCI: Spelling fixes for drivers/pci.
Steven Cole [Wed, 4 May 2005 00:38:30 +0000]
[PATCH] PCI: Spelling fixes for drivers/pci.

Here are some spelling corrections for drivers/pci.

CONTROLER -> CONTROLLER
Regisetr -> Register
harware -> hardware
inital -> initial
Initilize -> Initialize
funtion -> function
funciton -> function
occured -> occurred

Signed-off-by: Steven Cole <elenstev@mesatop.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] PCI: Rapid Hance quirk
R.Marek@sh.cvut.cz [Thu, 21 Apr 2005 10:49:06 +0000]
[PATCH] PCI: Rapid Hance quirk

This patch just adds Intel's Hance Rapid south bridge IDs to ICH4 region quirk.
Patch was successfuly tested by Chunhao Huang from Winbond.

Signed-Off-By: Rudolf Marek <r.marek@sh.cvut.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] PCI Hotplug ibmphp_pci.c: Fix masking out needed information too early
Rolf Eike Beer [Mon, 11 Apr 2005 13:01:54 +0000]
[PATCH] PCI Hotplug ibmphp_pci.c: Fix masking out needed information too early

here is the patch that fixes the bug introduced by my previous patch which
already went into 2.6.12-rc2 and is likely to cause trouble is someone hits
one the else case here by accident.

Using the &= operation before the if statement destroys the information the
if asks for so we always go into the else branch.

Signed-off-by: Rolf Eike Beer <eike-hotplug@sf-tec.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] PCI: Add pci shutdown ability
Greg KH [Fri, 8 Apr 2005 05:53:31 +0000]
[PATCH] PCI: Add pci shutdown ability

Now pci drivers can know when the system is going down without having to
add a reboot notifier event.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] PCI: fix up word-aligned 16-bit PCI config access through sysfs
ssant@in.ibm.com [Fri, 8 Apr 2005 05:53:31 +0000]
[PATCH] PCI: fix up word-aligned 16-bit PCI config access through sysfs

This patch adds the possibility to do word-aligned 16-bit atomic PCI
configuration space accesses via the sysfs PCI interface. As a result, problems
with Emulex LFPC on IBM PowerPC64 are fixed.

Patch is present in SLES 9 SP1.

Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] PCI: Clean up a lot of sparse "Should it be static?" warnings.
Greg KH [Fri, 8 Apr 2005 05:53:31 +0000]
[PATCH] PCI: Clean up a lot of sparse "Should it be static?" warnings.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] PCI: fix stale PCI pm docs
Pavel Machek [Tue, 5 Apr 2005 21:49:49 +0000]
[PATCH] PCI: fix stale PCI pm docs

This fixes u32 vs. pm_message_t confusion in documentation, and
removes references to no-longer-existing (*save_state), too. With
exception of USB (I hope David will fix/apply my patch), this should
fix last piece of this confusion... famous last words.

Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] PCI: update PCI documentation for pci_get_slot() depreciation
Matthew Wilcox [Tue, 29 Mar 2005 18:08:48 +0000]
[PATCH] PCI: update PCI documentation for pci_get_slot() depreciation

pci_find_slot() doesn't work on multiple-domain boxes so pci_get_slot()
should be used instead.

Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] PCI: 'is_enabled' flag should be set/cleared when the device is actually...
Kenji Kaneshige [Fri, 8 Apr 2005 05:53:31 +0000]
[PATCH] PCI: 'is_enabled' flag should be set/cleared when the device is actually enabled/disabled

I think 'is_enabled' flag in pci_dev structure should be set/cleared
when the device actually enabled/disabled. Especially about
pci_enable_device(), it can be failed. By this change, we will also
get the possibility of refering 'is_enabled' flag from the functions
called through pci_enable_device()/pci_disable_device().

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] aoe: update version number to 10
Ed L Cashin [Fri, 29 Apr 2005 14:24:28 +0000]
[PATCH] aoe: update version number to 10

update version number to 10

Signed-off-by: Ed L. Cashin <ecashin@coraid.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] aoe: add firmware version to info in sysfs
Ed L Cashin [Fri, 29 Apr 2005 14:24:25 +0000]
[PATCH] aoe: add firmware version to info in sysfs

add firmware version to info in sysfs

Signed-off-by: Ed L. Cashin <ecashin@coraid.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] aoe: allow multiple aoe devices to have the same mac
Ed L Cashin [Fri, 29 Apr 2005 14:24:22 +0000]
[PATCH] aoe: allow multiple aoe devices to have the same mac

allow multiple aoe devices to have the same mac

Signed-off-by: Ed L. Cashin <ecashin@coraid.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

diff -u b/drivers/block/aoe/aoedev.c b/drivers/block/aoe/aoedev.c

15 years ago[PATCH] aoe: update the documentation to mention aoetools
Ed L Cashin [Fri, 29 Apr 2005 14:24:18 +0000]
[PATCH] aoe: update the documentation to mention aoetools

update the documentation to mention aoetools

Signed-off-by: Ed L. Cashin <ecashin@coraid.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] aoe: aoe-stat should work for built-in as well as module
Ed L Cashin [Fri, 29 Apr 2005 14:24:13 +0000]
[PATCH] aoe: aoe-stat should work for built-in as well as module

aoe-stat should work for built-in as well as module

Signed-off-by: Ed L. Cashin <ecashin@coraid.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

diff -uprN a/Documentation/aoe/status.sh b/Documentation/aoe/status.sh

15 years ago[PATCH] aoe: improve allowed interfaces configuration
Ed L Cashin [Fri, 29 Apr 2005 14:24:03 +0000]
[PATCH] aoe: improve allowed interfaces configuration

improve allowed interfaces configuration

Signed-off-by: Ed L. Cashin <ecashin@coraid.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

diff -uprN a/Documentation/aoe/aoe.txt b/Documentation/aoe/aoe.txt

15 years ago[PATCH] USB cypress_m8: update kernel driver with current source
Lonnie Mendez [Tue, 3 May 2005 22:02:20 +0000]
[PATCH] USB cypress_m8: update kernel driver with current source

Fixed problem where setting or retreiving the serial config would fail
with EPIPE.  Removed CRTS toggling so the driver behaves more like other
usbserial adapters.  Issued new interval of 1ms instead of the default
bInterval.  As a result, transfer speed has been substantially
increased.  From avg. 850bps to avg. 3300bps.  Also added new module
parameter 'interval' to tweak the interval in case this change causes
problems for someone.  Cleaned up code and formatting issues so source
is more readable.  Replaced the C++ style comments.  Various other code
cleanups.

Signed-off-by: Lonnie Mendez <lmendez19@austin.rr.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] USB: Spelling fixes for drivers/usb.
Steven Cole [Wed, 4 May 2005 01:07:24 +0000]
[PATCH] USB: Spelling fixes for drivers/usb.

Here are some spelling corrections for drivers/usb.

cancelation -> cancellation
succesful -> successful
cancelation -> cancellation
decriptor -> descriptor
Initalize -> Initialize
wierd -> weird
Protocoll -> Protocol
occured -> occurred
successfull -> successful
Procesing -> Processing
devide -> divide
Isochronuous -> Isochronous
noticable -> noticeable
Basicly -> Basically
transfering -> transferring
intialize -> initialize
Incomming -> Incoming
additionnal -> additional
asume -> assume
Unfortunatly -> Unfortunately
retreive -> retrieve
tranceiver -> transceiver
Compatiblity -> Compatibility
Incorprated -> Incorporated
existance -> existence
Ununsual -> Unusual

Signed-off-by: Steven Cole <elenstev@mesatop.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] USB: unusual_devs entry for Minolta Dimage Z10
Phil Dibowitz [Tue, 3 May 2005 06:54:28 +0000]
[PATCH] USB: unusual_devs entry for Minolta Dimage Z10

This patch adds an unusual_devs entry for the Minolta Dimage Z10.
Originally reported by Vilisas <vilisas@xxx.lt>

Signed-off-by: Phil Dibowitz <phil@ipom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] USB: unusual_devs.h: atmel snd1 storage
Vivian Bregier [Tue, 3 May 2005 00:16:34 +0000]
[PATCH] USB: unusual_devs.h: atmel snd1 storage

Signed-off-by: Phil Dibowitz <phil@ipom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] USB: ftdi_sio redundant macro removal
Ian Abbott [Fri, 29 Apr 2005 15:09:44 +0000]
[PATCH] USB: ftdi_sio redundant macro removal

[ftdi_sio] Replaced redundant INTERFACE_A and INTERFACE_B macros with
the equivalent PIT_SIOA and PIT_SIOB macros.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] USB: VID/PID updates for ftdi_sio driver
Ian Abbott [Fri, 29 Apr 2005 15:06:14 +0000]
[PATCH] USB: VID/PID updates for ftdi_sio driver

Some VID/PID updates for the ftdi_sio driver:

* The "Gude Analog- und Digitalsysteme GmbH" entries were missing from
  the "combined" table.
* Replaced FTDI_8U232AM_ALT_ALT_PID with 3 PIDs for devices from
  4n-galaxy.de.
* Removed redundant FTDI_RM_VID and renamed FTDI_RMCANVIEW_PID to
  FTDI_RM_CANVIEW_PID.
* Added VID/PID for serial converter in Mobility Electronics EasiDock
  USB 200 (mentioned by Gregory Schmitt).
* Added PID for Active Robots USB comms board (mentioned by John Koch).

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

diff -ur a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c

15 years ago[PATCH] USB: new usbnet device id
Andrea Arcangeli [Mon, 2 May 2005 20:47:55 +0000]
[PATCH] USB: new usbnet device id

On Thu, Apr 14, 2005 at 11:06:21PM +0400, Sergey Vlasov wrote:
> http://thread.gmane.org/gmane.linux.usb.devel/32977
>
> (see "[PATCH] N/3 cdc acm errors").
>
> You also need this driver core fix:
>
> http://thread.gmane.org/gmane.linux.usb.devel/33132

I reproduced the same oops while trying to execute at+mode=99, it would
be nice to get these fix merged since I believe it's still needed to
connect the laptop over gprs (something I didn't test yet).

This further patch will allow you to connect via usbnet, Greg could you
apply? Thanks!

Signed-off-by: Andrea Arcangeli <andrea@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] USB: add a driver for the AirPrime CDMA Wireless PC card.
Greg KH [Tue, 26 Apr 2005 04:46:29 +0000]
[PATCH] USB: add a driver for the AirPrime CDMA Wireless PC card.

Easier than trying to use the generic usb-serial driver.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] USB: ehci power fixes
David Brownell [Sat, 9 Apr 2005 16:00:29 +0000]
[PATCH] USB: ehci power fixes

Miscellaneous updates for EHCI.

 - Mostly updates the power switching on EHCI controllers.  One routine
   centralizes the "power on/off all ports" logic, and the capability to
   do that is reported more correctly.

 - Courtesy Colin Leroy, a patch to always power up ports after resumes
   which didn't keep a USB device suspended.  The reset-everything logic
   powers down those ports (on some hardware) so something needs to turn
   them back on.

 - Minor tweaks/bugfixes for the debug port support.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[PATCH] USB Storage: fix compile error
Matthew Dharm [Tue, 26 Apr 2005 04:46:29 +0000]
[PATCH] USB Storage: fix compile error

This patch fixes a compiler error caused by a missing prototype.  It should
apply directly to Greg KH's usb-2.6.git tree.

Signed-off-by: Matthew Dharm <mdharm-usb@one-eyed-alien.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

15 years ago[IPV6]: net/addrconf.h needs to include linux/in6.h earlier
Patrick McHardy [Wed, 4 May 2005 05:17:18 +0000]
[IPV6]: net/addrconf.h needs to include linux/in6.h earlier

Else the in6_addr layout is not known for struct
prefix_info.

Signed-off-by: Patrick McHardy <kaber@trash.net>

15 years ago[SPARC64]: Disable IRQ forwarding.
David S. Miller [Wed, 4 May 2005 05:05:43 +0000]
[SPARC64]: Disable IRQ forwarding.

There is some race whereby IRQs get stuck, the IRQ status
is pending but no processor actually handles the IRQ vector
and thus the interrupt.

This is a temporary workaround.

Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[SPARC64]: Fix goal_cpu tracking in retarget_one_irq().
David S. Miller [Wed, 4 May 2005 05:04:36 +0000]
[SPARC64]: Fix goal_cpu tracking in retarget_one_irq().

We would never advance the goal_cpu counter like we
should, so all IRQs would go to a single processor.

Signed-off-by: David S. Miller <davem@davemloft.net>

15 years agoMerge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.git/
Linus Torvalds [Wed, 4 May 2005 00:24:08 +0000]
Merge ... /linux/kernel/git/davem/net-2.6.git/

15 years ago[PKT_SCHED]: Action repeat
J Hadi Salim [Tue, 3 May 2005 23:29:13 +0000]
[PKT_SCHED]: Action repeat

Long standing bug.
Policy to repeat an action never worked.

Signed-off-by: J Hadi Salim <hadi@cyberus.ca>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[IA64] Update arch/ia64/configs/tiger_defconfig
Tony Luck [Tue, 3 May 2005 23:27:44 +0000]
[IA64] Update arch/ia64/configs/tiger_defconfig

Kristen did most of the checking, bring this up to -rc2.

Signed-off-by: Tony Luck <tony.luck@intel.com>

15 years ago[IPSEC]: Store idev entries
Herbert Xu [Tue, 3 May 2005 23:27:10 +0000]
[IPSEC]: Store idev entries

I found a bug that stopped IPsec/IPv6 from working.  About
a month ago IPv6 started using rt6i_idev->dev on the cached socket dst
entries.  If the cached socket dst entry is IPsec, then rt6i_idev will
be NULL.

Since we want to look at the rt6i_idev of the original route in this
case, the easiest fix is to store rt6i_idev in the IPsec dst entry just
as we do for a number of other IPv6 route attributes.  Unfortunately
this means that we need some new code to handle the references to
rt6i_idev.  That's why this patch is bigger than it would otherwise be.

I've also done the same thing for IPv4 since it is conceivable that
once these idev attributes start getting used for accounting, we
probably need to dereference them for IPv4 IPsec entries too.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[PKT_SCHED]: netetm: adjust parent qlen when duplicating
Stephen Hemminger [Tue, 3 May 2005 23:24:57 +0000]
[PKT_SCHED]: netetm: adjust parent qlen when duplicating

Fix qlen underrun when doing duplication with netem. If netem is used
as leaf discipline, then the parent needs to be tweaked when packets
are duplicated.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[PKT_SCHED]: netetm: make qdisc friendly to outer disciplines
Stephen Hemminger [Tue, 3 May 2005 23:24:32 +0000]
[PKT_SCHED]: netetm: make qdisc friendly to outer disciplines

Netem currently dumps packets into the queue when timer expires. This
patch makes work by self-clocking (more like TBF).  It fixes a bug
when 0 delay is requested (only doing loss or duplication).

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[PKT_SCHED]: netetm: trap infinite loop hange on qlen underflow
Stephen Hemminger [Tue, 3 May 2005 23:24:03 +0000]
[PKT_SCHED]: netetm: trap infinite loop hange on qlen underflow

Due to bugs in netem (fixed by later patches), it is possible to get qdisc
qlen to go negative. If this happens the CPU ends up spinning forever
in qdisc_run(). So add a BUG_ON() to trap it.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[IA64] Fix two warnings introduced by perfmon patches.
Tony Luck [Tue, 3 May 2005 23:21:45 +0000]
[IA64] Fix two warnings introduced by perfmon patches.

Signed-off-by: Tony Luck <tony.luck@intel.com>

15 years ago[NETFILTER]: Drop conntrack reference in ip_dev_loopback_xmit()
Patrick McHardy [Tue, 3 May 2005 23:21:37 +0000]
[NETFILTER]: Drop conntrack reference in ip_dev_loopback_xmit()

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[NETFILTER]: Fix nf_debug_ip_local_deliver()
Patrick McHardy [Tue, 3 May 2005 23:20:39 +0000]
[NETFILTER]: Fix nf_debug_ip_local_deliver()

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[NET]: Disable queueing when carrier is lost.
Tommy S. Christensen [Tue, 3 May 2005 23:18:52 +0000]
[NET]: Disable queueing when carrier is lost.

Some network drivers call netif_stop_queue() when detecting loss of
carrier. This leads to packets being queued up at the qdisc level for
an unbound period of time. In order to prevent this effect, the core
networking stack will now cease to queue packets for any device, that
is operationally down (i.e. the queue is flushed and disabled).

Signed-off-by: Tommy S. Christensen <tommy.christensen@tpack.net>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[XFRM/RTNETLINK]: Decrement qlen properly in {xfrm_,rt}netlink_rcv().
David S. Miller [Tue, 3 May 2005 23:15:59 +0000]
[XFRM/RTNETLINK]: Decrement qlen properly in {xfrm_,rt}netlink_rcv().

If we free up a partially processed packet because it's
skb->len dropped to zero, we need to decrement qlen because
we are dropping out of the top-level loop so it will do
the decrement for us.

Spotted by Herbert Xu.

Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[IA64] another perfmon fix (take2)
stephane eranian [Mon, 18 Apr 2005 18:42:00 +0000]
[IA64] another perfmon fix (take2)

- pfm_context_load(): change return value from EINVAL to EBUSY
  when context is already loaded.

- pfm_check_task_state(): pass test if context state is MASKED.
  It is safe to give access on PFM_CTX_MASKED because the PMU
  state (PMD) is stable and saved in software state.
  This helps multiplexing programs such as the example given
  in libpfm-3.1.

Signed-off-by: stephane eranian <eranian@hpl.hp.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>

15 years ago[IA64] perfmon & PAL_HALT again
Stephane Eranian [Mon, 11 Apr 2005 20:45:00 +0000]
[IA64] perfmon & PAL_HALT again

The pmu_active test is based on the values of PSR.up. THIS IS THE PROBLEM as
it does not take into account the lazy restore logic which is as follow (simplified):

context switch out:
save PMDs
clear psr.up
release ownership

context switch in:
if (ctx->last_cpu == smp_processor_id() && ctx->cpu_activation == cpu_activation) {
set psr.up
return
}
restore PMD
restore PMC
ctx->last_cpu   = smp_processor_id();
ctx->activation = ++cpu_activation;
set psr.up

The key here is that on context switch out, we clear psr.up and on context switch in
we check if nobody else used the PMU on that processor since last time we came. In
that case, we assume the PMD/PMC are ours and we simply reactivate.

The Caliper problem is that between the moment we context switch out and the moment we
come back, nobody effectively used the PMU BUT the processor went idle. Normally this
would have no incidence but PAL_HALT does alter the PMU registers.  In default_idle(),
the test on psr.up is not strong enough to cover this case and we go into PAL which
trashed the PMU resgisters. When we come back we falsely assume that this is our state
yet it is corrupted. Very nasty indeed.

To avoid the problem it is necessary to forbid going to PAL_HALT as soon as perfmon
installs some valid state in the PMU registers. This happens with an application
attaches a context to a thread or CPU. It is not enough to check the psr/dcr bits.
Hence I propose the attached patch. It adds a callback in process.c to modify the
condition to enter PAL on idle. Basically, now it is conditional to pal_halt=1 AND
perfmon saying it is okay.

Signed-off-by: Tony Luck <tony.luck@intel.com>

15 years ago[NETLINK]: Fix infinite loops in synchronous netlink changes.
David S. Miller [Tue, 3 May 2005 22:30:05 +0000]
[NETLINK]: Fix infinite loops in synchronous netlink changes.

The qlen should continue to decrement, even if we
pop partially processed SKBs back onto the receive queue.

Signed-off-by: David S. Miller <davem@davemloft.net>

15 years agoMerge of master.kernel.org:/home/rmk/linux-2.6-rmk.git
Linus Torvalds [Tue, 3 May 2005 22:27:24 +0000]
Merge ... kernel.org:/home/rmk/linux-2.6-rmk.git

15 years ago[PATCH] ARM: 2662/1: missing "default y" for CONFIG_HAS_TLS_REG
Nicolas Pitre [Tue, 3 May 2005 21:57:56 +0000]
[PATCH] ARM: 2662/1: missing "default y" for CONFIG_HAS_TLS_REG

Patch from Nicolas Pitre

Signed-off-by: Nicolas Pitre
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

15 years ago[PATCH] ARM: 2661/1: imxfb include
Sascha Hauer [Tue, 3 May 2005 21:57:56 +0000]
[PATCH] ARM: 2661/1: imxfb include

Patch from Sascha Hauer

This patch adds the missing include files for the i.MX framebuffer
driver.

Signed-off-by: Sascha Hauer
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

15 years ago[NETLINK]: Synchronous message processing.
Herbert Xu [Tue, 3 May 2005 21:55:09 +0000]
[NETLINK]: Synchronous message processing.

Let's recap the problem.  The current asynchronous netlink kernel
message processing is vulnerable to these attacks:

1) Hit and run: Attacker sends one or more messages and then exits
before they're processed.  This may confuse/disable the next netlink
user that gets the netlink address of the attacker since it may
receive the responses to the attacker's messages.

Proposed solutions:

a) Synchronous processing.
b) Stream mode socket.
c) Restrict/prohibit binding.

2) Starvation: Because various netlink rcv functions were written
to not return until all messages have been processed on a socket,
it is possible for these functions to execute for an arbitrarily
long period of time.  If this is successfully exploited it could
also be used to hold rtnl forever.

Proposed solutions:

a) Synchronous processing.
b) Stream mode socket.

Firstly let's cross off solution c).  It only solves the first
problem and it has user-visible impacts.  In particular, it'll
break user space applications that expect to bind or communicate
with specific netlink addresses (pid's).

So we're left with a choice of synchronous processing versus
SOCK_STREAM for netlink.

For the moment I'm sticking with the synchronous approach as
suggested by Alexey since it's simpler and I'd rather spend
my time working on other things.

However, it does have a number of deficiencies compared to the
stream mode solution:

1) User-space to user-space netlink communication is still vulnerable.

2) Inefficient use of resources.  This is especially true for rtnetlink
since the lock is shared with other users such as networking drivers.
The latter could hold the rtnl while communicating with hardware which
causes the rtnetlink user to wait when it could be doing other things.

3) It is still possible to DoS all netlink users by flooding the kernel
netlink receive queue.  The attacker simply fills the receive socket
with a single netlink message that fills up the entire queue.  The
attacker then continues to call sendmsg with the same message in a loop.

Point 3) can be countered by retransmissions in user-space code, however
it is pretty messy.

In light of these problems (in particular, point 3), we should implement
stream mode netlink at some point.  In the mean time, here is a patch
that implements synchronous processing.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>