]> err.no Git - linux-2.6/log
linux-2.6
17 years ago[PATCH] ioremap balanced with iounmap for drivers/video/retz3fb
Amol Lad [Fri, 8 Dec 2006 10:40:06 +0000 (02:40 -0800)]
[PATCH] ioremap balanced with iounmap for drivers/video/retz3fb

ioremap must be balanced by an iounmap and failing to do so can result in a
memory leak.

Signed-off-by: Amol Lad <amol@verismonetworks.com>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] ioremap balanced with iounmap for drivers/video/stifb
Amol Lad [Fri, 8 Dec 2006 10:40:05 +0000 (02:40 -0800)]
[PATCH] ioremap balanced with iounmap for drivers/video/stifb

ioremap must be balanced by an iounmap and failing to do so can result in a
memory leak.

Signed-off-by: Amol Lad <amol@verismonetworks.com>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Cc: Helge Deller <deller@parisc-linux.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] ioremap balanced with iounmap for drivers/video/tgafb
Amol Lad [Fri, 8 Dec 2006 10:40:04 +0000 (02:40 -0800)]
[PATCH] ioremap balanced with iounmap for drivers/video/tgafb

ioremap must be balanced by an iounmap and failing to do so can result in a
memory leak.

Signed-off-by: Amol Lad <amol@verismonetworks.com>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] ioremap balanced with iounmap for drivers/video/tridentfb
Amol Lad [Fri, 8 Dec 2006 10:40:03 +0000 (02:40 -0800)]
[PATCH] ioremap balanced with iounmap for drivers/video/tridentfb

ioremap must be balanced by an iounmap and failing to do so can result in a
memory leak.

Signed-off-by: Amol Lad <amol@verismonetworks.com>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Cc: Knut Petersen <Knut_Petersen@t-online.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] ioremap balanced with iounmap for drivers/video/vesafb
Amol Lad [Fri, 8 Dec 2006 10:40:02 +0000 (02:40 -0800)]
[PATCH] ioremap balanced with iounmap for drivers/video/vesafb

ioremap must be balanced by an iounmap and failing to do so can result in a
memory leak.

Signed-off-by: Amol Lad <amol@verismonetworks.com>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] ioremap balanced with iounmap for drivers/video/virgefb
Amol Lad [Fri, 8 Dec 2006 10:40:02 +0000 (02:40 -0800)]
[PATCH] ioremap balanced with iounmap for drivers/video/virgefb

ioremap must be balanced by an iounmap and failing to do so can result in a
memory leak.

Signed-off-by: Amol Lad <amol@verismonetworks.com>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] sl82c105: straighten up IDE control/status register caching
Sergei Shtylyov [Fri, 8 Dec 2006 10:40:01 +0000 (02:40 -0800)]
[PATCH] sl82c105: straighten up IDE control/status register caching

Straighten up the IDE control/status register caching -- you *really* can't
cache the shared register per-channel and hope that it won't get out ouf
sync.

Set the PIO fallback mode to PIO0 for the slave drive as well as master --
there was no point in having them different (most probably a resutl of
typo).

Do a bit of reformat and cleanup while at it...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] pdc202xx_new: fix PIO mode setup
Sergei Shtylyov [Fri, 8 Dec 2006 10:39:59 +0000 (02:39 -0800)]
[PATCH] pdc202xx_new: fix PIO mode setup

Fix pdcnew_tune_drive() to always set the PIO mode requested, not pick the
best possible one, change pdcnew_config_drive_xfer_rate() accordingly, and
get rid of the duplicate tuneproc() call in config_chipset_for_dma().

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] ide: more conversion to pci_get APIs
Alan Cox [Fri, 8 Dec 2006 10:39:58 +0000 (02:39 -0800)]
[PATCH] ide: more conversion to pci_get APIs

This completes IDE except for one use which requires a new core PCI function
and will be polished up at the end

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] sysctl: fix sys_sysctl interface of ipc sysctls
Eric W. Biederman [Fri, 8 Dec 2006 10:39:57 +0000 (02:39 -0800)]
[PATCH] sysctl: fix sys_sysctl interface of ipc sysctls

Currently there is a regression and the ipc sysctls don't show up in the
binary sysctl namespace.

This patch adds sysctl_ipc_data to read data/write from the appropriate
namespace and deliver it in the expected manner.

[akpm@osdl.org: warning fix]
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] sysctl: simplify ipc ns specific sysctls
Eric W. Biederman [Fri, 8 Dec 2006 10:39:56 +0000 (02:39 -0800)]
[PATCH] sysctl: simplify ipc ns specific sysctls

Refactor the ipc sysctl support so that it is simpler, more readable, and
prepares for fixing the bug with the wrong values being returned in the
sys_sysctl interface.

The function proc_do_ipc_string() was misnamed as it never handled strings.
It's magic of when to work with strings and when to work with longs belonged
in the sysctl table.  I couldn't tell if the code would work if you disabled
the ipc namespace but it certainly looked like it would have problems.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] sysctl: implement sysctl_uts_string()
Eric W. Biederman [Fri, 8 Dec 2006 10:39:55 +0000 (02:39 -0800)]
[PATCH] sysctl: implement sysctl_uts_string()

The problem: When using sys_sysctl we don't read the proper values for the
variables exported from the uts namespace, nor do we do the proper locking.

This patch introduces sysctl_uts_string which properly fetches the values and
does the proper locking.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] sysctl: simplify sysctl_uts_string
Eric W. Biederman [Fri, 8 Dec 2006 10:39:55 +0000 (02:39 -0800)]
[PATCH] sysctl: simplify sysctl_uts_string

The binary interface to the namespace sysctls was never implemented resulting
in some really weird things if you attempted to use sys_sysctl to read your
hostname for example.

This patch series simples the code a little and implements the binary sysctl
interface.

In testing this patch series I discovered that our 32bit compatibility for the
binary sysctl interface is imperfect.  In particular KERN_SHMMAX and
KERN_SMMALL are size_t sized quantities and are returned as 8 bytes on to
32bit binaries using a x86_64 kernel.  However this has existing for a long
time so it is not a new regression with the namespace work.

Gads the whole sysctl thing needs work before it stops being easy to shoot
yourself in the foot.

Looking forward a little bit we need a better way to handle sysctls and
namespaces as our current technique will not work for the network namespace.
I think something based on the current overlapping sysctl trees will work but
the proc side needs to be redone before we can use it.

This patch:

Introduce get_uts() and put_uts() (used later) and remove most of the special
cases for when UTS namespace is compiled in.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] fault-injection: defaults likely to please a new user
Don Mullis [Fri, 8 Dec 2006 10:39:53 +0000 (02:39 -0800)]
[PATCH] fault-injection: defaults likely to please a new user

Assign defaults most likely to please a new user:
 1) generate some logging output
    (verbose=2)
 2) avoid injecting failures likely to lock up UI
    (ignore_gfp_wait=1, ignore_gfp_highmem=1)

Signed-off-by: Don Mullis <dwm@meer.net>
Cc: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] fault-injection: optimize and simplify should_fail()
Don Mullis [Fri, 8 Dec 2006 10:39:53 +0000 (02:39 -0800)]
[PATCH] fault-injection: optimize and simplify should_fail()

Trivial optimization and simplification of should_fail().

Do cheaper disqualification tests first (performance gain not quantified).
Simplify logic; eliminate goto.

Signed-off-by: Don Mullis <dwm@meer.net>
Cc: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] fault-injection: Clamp debugfs stacktrace-depth to MAX_STACK_TRACE_DEPTH
Don Mullis [Fri, 8 Dec 2006 10:39:52 +0000 (02:39 -0800)]
[PATCH] fault-injection: Clamp debugfs stacktrace-depth to MAX_STACK_TRACE_DEPTH

Clamp /debug/fail*/stacktrace-depth to MAX_STACK_TRACE_DEPTH.  Ensures that a
read of /debug/fail*/stacktrace-depth always returns a truthful answer.

Signed-off-by: Don Mullis <dwm@meer.net>
Cc: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] fault-injection: Use bool-true-false throughout
Don Mullis [Fri, 8 Dec 2006 10:39:51 +0000 (02:39 -0800)]
[PATCH] fault-injection: Use bool-true-false throughout

Use bool-true-false throughout.

Signed-off-by: Don Mullis <dwm@meer.net>
Cc: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] fault-injection: Correct, disambiguate, and reformat documentation
Don Mullis [Fri, 8 Dec 2006 10:39:50 +0000 (02:39 -0800)]
[PATCH] fault-injection: Correct, disambiguate, and reformat documentation

Correct, disambiguate, and reformat documentation.

Signed-off-by: Don Mullis <dwm@meer.net>
Cc: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] fault-injection: stacktrace filtering kconfig fix
Andrew Morton [Fri, 8 Dec 2006 10:39:49 +0000 (02:39 -0800)]
[PATCH] fault-injection: stacktrace filtering kconfig fix

`select' doesn't work very well.  With alpha `make allmodconfig' we end up
with CONFIG_STACKTRACE enabled, so we end up with undefined save_stacktrace()
at link time.

Cc: Akinobu Mita <akinobu.mita@gmail.com>
Cc: Don Mullis <dwm@meer.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] fault-injection Kconfig cleanup
Andrew Morton [Fri, 8 Dec 2006 10:39:49 +0000 (02:39 -0800)]
[PATCH] fault-injection Kconfig cleanup

- Fix some spelling and grammatical errors

- Make the Kconfig menu more conventional.  First you select
  fault-injection, then under that you select particular clients of it.

Cc: Akinobu Mita <akinobu.mita@gmail.com>
Cc: Don Mullis <dwm@meer.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] fault injection: stacktrace filtering
Akinobu Mita [Fri, 8 Dec 2006 10:39:48 +0000 (02:39 -0800)]
[PATCH] fault injection: stacktrace filtering

This patch provides stacktrace filtering feature.

The stacktrace filter allows failing only for the caller you are
interested in.

For example someone may want to inject kmalloc() failures into
only e100 module. they want to inject not only direct kmalloc() call,
but also indirect allocation, too.

- e100_poll --> netif_receive_skb --> packet_rcv_spkt --> skb_clone
  --> kmem_cache_alloc

This patch enables to detect function calls like this by stacktrace
and inject failures. The script Documentaion/fault-injection/failmodule.sh
helps it.

The range of text section of loaded e100 is expected to be
[/sys/module/e100/sections/.text, /sys/module/e100/sections/.exit.text)

So failmodule.sh stores these values into /debug/failslab/address-start
and /debug/failslab/address-end. The maximum stacktrace depth is specified
by /debug/failslab/stacktrace-depth.

Please see the example that demonstrates how to inject slab allocation
failures only for a specific module
in Documentation/fault-injection/fault-injection.txt

[dwm@meer.net: reject failure if any caller lies within specified range]
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Don Mullis <dwm@meer.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] fault injection: process filtering for fault-injection capabilities
Akinobu Mita [Fri, 8 Dec 2006 10:39:47 +0000 (02:39 -0800)]
[PATCH] fault injection: process filtering for fault-injection capabilities

This patch provides process filtering feature.
The process filter allows failing only permitted processes
by /proc/<pid>/make-it-fail

Please see the example that demostrates how to inject slab allocation
failures into module init/cleanup code
in Documentation/fault-injection/fault-injection.txt

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] fault-injection capability for disk IO
Akinobu Mita [Fri, 8 Dec 2006 10:39:46 +0000 (02:39 -0800)]
[PATCH] fault-injection capability for disk IO

This patch provides fault-injection capability for disk IO.

Boot option:

fail_make_request=<probability>,<interval>,<space>,<times>

<interval> -- specifies the interval of failures.

<probability> -- specifies how often it should fail in percent.

<space> -- specifies the size of free space where disk IO can be issued
   safely in bytes.

<times> -- specifies how many times failures may happen at most.

Debugfs:

/debug/fail_make_request/interval
/debug/fail_make_request/probability
/debug/fail_make_request/specifies
/debug/fail_make_request/times

Example:

fail_make_request=10,100,0,-1
echo 1 > /sys/blocks/hda/hda1/make-it-fail

generic_make_request() on /dev/hda1 fails once per 10 times.

Cc: Jens Axboe <axboe@suse.de>
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] fault-injection capability for alloc_pages()
Akinobu Mita [Fri, 8 Dec 2006 10:39:45 +0000 (02:39 -0800)]
[PATCH] fault-injection capability for alloc_pages()

This patch provides fault-injection capability for alloc_pages()

Boot option:

fail_page_alloc=<interval>,<probability>,<space>,<times>

<interval> -- specifies the interval of failures.

<probability> -- specifies how often it should fail in percent.

<space> -- specifies the size of free space where memory can be
   allocated safely in pages.

<times> -- specifies how many times failures may happen at most.

Debugfs:

/debug/fail_page_alloc/interval
/debug/fail_page_alloc/probability
/debug/fail_page_alloc/specifies
/debug/fail_page_alloc/times
/debug/fail_page_alloc/ignore-gfp-highmem
/debug/fail_page_alloc/ignore-gfp-wait

Example:

fail_page_alloc=10,100,0,-1

The page allocation (alloc_pages(), ...) fails once per 10 times.

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] fault-injection capability for kmalloc
Akinobu Mita [Fri, 8 Dec 2006 10:39:44 +0000 (02:39 -0800)]
[PATCH] fault-injection capability for kmalloc

This patch provides fault-injection capability for kmalloc.

Boot option:

failslab=<interval>,<probability>,<space>,<times>

<interval> -- specifies the interval of failures.

<probability> -- specifies how often it should fail in percent.

<space> -- specifies the size of free space where memory can be
   allocated safely in bytes.

<times> -- specifies how many times failures may happen at most.

Debugfs:

/debug/failslab/interval
/debug/failslab/probability
/debug/failslab/specifies
/debug/failslab/times
/debug/failslab/ignore-gfp-highmem
/debug/failslab/ignore-gfp-wait

Example:

failslab=10,100,0,-1

slab allocation (kmalloc(), kmem_cache_alloc(),..) fails once per 10 times.

Cc: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] fault-injection capabilities infrastructure
Akinobu Mita [Fri, 8 Dec 2006 10:39:43 +0000 (02:39 -0800)]
[PATCH] fault-injection capabilities infrastructure

This patch provides base functions implement to fault-injection
capabilities.

- The function should_fail() is taken from failmalloc-1.0
  (http://www.nongnu.org/failmalloc/)

[akpm@osdl.org: cleanups, comments, add __init]
Cc: <okuji@enbug.org>
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Don Mullis <dwm@meer.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] fault injection: documentation and scripts
Akinobu Mita [Fri, 8 Dec 2006 10:39:42 +0000 (02:39 -0800)]
[PATCH] fault injection: documentation and scripts

This patch set provides some fault-injection capabilities.

- kmalloc() failures

- alloc_pages() failures

- disk IO errors

We can see what really happens if those failures happen.

In order to enable these fault-injection capabilities:

1. Enable relevant config options (CONFIG_FAILSLAB, CONFIG_PAGE_ALLOC,
   CONFIG_MAKE_REQUEST) and if you want to configure them via debugfs,
   enable CONFIG_FAULT_INJECTION_DEBUG_FS.

2. Build and boot with this kernel

3. Configure fault-injection capabilities behavior by boot option or debugfs

   - Boot option

     failslab=
     fail_page_alloc=
     fail_make_request=

   - Debugfs

     /debug/failslab/*
     /debug/fail_page_alloc/*
     /debug/fail_make_request/*

   Please refer to the Documentation/fault-injection/fault-injection.txt
   for details.

4. See what really happens.

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Don Mullis <dwm@meer.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] nfsd: replace kmalloc+memset with kcalloc + simplify NULL check
Yan Burman [Fri, 8 Dec 2006 10:39:41 +0000 (02:39 -0800)]
[PATCH] nfsd: replace kmalloc+memset with kcalloc + simplify NULL check

Replace kmalloc+memset with kcalloc and simplify

Signed-off-by: Yan Burman <burman.yan@gmail.com>
Cc: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] NFS3: Calculate 'w' a bit later in nfs3svc_encode_getaclres()
Jesper Juhl [Fri, 8 Dec 2006 10:39:40 +0000 (02:39 -0800)]
[PATCH] NFS3: Calculate 'w' a bit later in nfs3svc_encode_getaclres()

NFS3: Calculate 'w' a bit later in nfs3svc_encode_getaclres()
      This is a small performance optimization since we can return before
      needing 'w'. It also saves a few bytes of .text :
      Before:
           text    data     bss     dec     hex filename
           1632     140       0    1772     6ec fs/nfsd/nfs3acl.o
      After:
           text    data     bss     dec     hex filename
           1624     140       0    1764     6e4 fs/nfsd/nfs3acl.o

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Cc: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] NFS2: Calculate 'w' a bit later in nfsaclsvc_encode_getaclres()
Jesper Juhl [Fri, 8 Dec 2006 10:39:39 +0000 (02:39 -0800)]
[PATCH] NFS2: Calculate 'w' a bit later in nfsaclsvc_encode_getaclres()

NFS2: Calculate 'w' a bit later in nfsaclsvc_encode_getaclres()
      This is a small performance optimization since we can return before
      needing 'w'. It also saves a few bytes of .text :
      Before:
           text    data     bss     dec     hex filename
           2406     212       0    2618     a3a fs/nfsd/nfs2acl.o
      After:
           text    data     bss     dec     hex filename
           2400     212       0    2612     a34 fs/nfsd/nfs2acl.o

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Cc: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] lockdep: annotate nfsd4 recover code
Peter Zijlstra [Fri, 8 Dec 2006 10:39:38 +0000 (02:39 -0800)]
[PATCH] lockdep: annotate nfsd4 recover code

> =============================================
> [ INFO: possible recursive locking detected ]
> 2.6.18-1.2724.lockdepPAE #1
> ---------------------------------------------
> nfsd/6884 is trying to acquire lock:
>  (&inode->i_mutex){--..}, at: [<c04811e5>] vfs_rmdir+0x73/0xf4
>
> but task is already holding lock:
>  (&inode->i_mutex){--..}, at: [<f8dfa621>]
> nfsd4_clear_clid_dir+0x1f/0x3d [nfsd]
>
> other info that might help us debug this:
> 3 locks held by nfsd/6884:
>  #0:  (hash_sem){----}, at: [<f8de05eb>] nfsd+0x181/0x2ea [nfsd]
>  #1:  (client_mutex){--..}, at: [<f8df6d19>]
> nfsd4_setclientid_confirm+0x3b/0x2cf [nfsd]
>  #2:  (&inode->i_mutex){--..}, at: [<f8dfa621>]
> nfsd4_clear_clid_dir+0x1f/0x3d [nfsd]
>
> stack backtrace:
>  [<c040524d>] dump_trace+0x69/0x1af
>  [<c04053ab>] show_trace_log_lvl+0x18/0x2c
>  [<c040595f>] show_trace+0xf/0x11
>  [<c0405a53>] dump_stack+0x15/0x17
>  [<c043ca7a>] __lock_acquire+0x110/0x9b6
>  [<c043d91e>] lock_acquire+0x5c/0x7a
>  [<c061a41b>] __mutex_lock_slowpath+0xde/0x234
>  [<c04811e5>] vfs_rmdir+0x73/0xf4
>  [<f8dfa62b>] nfsd4_clear_clid_dir+0x29/0x3d [nfsd]
>  [<f8dfa733>] nfsd4_remove_clid_dir+0xb8/0xf8 [nfsd]
>  [<f8df6e90>] nfsd4_setclientid_confirm+0x1b2/0x2cf [nfsd]
>  [<f8def19a>] nfsd4_proc_compound+0x137a/0x166c [nfsd]
>  [<f8de00d5>] nfsd_dispatch+0xc5/0x180 [nfsd]
>  [<f8d09d83>] svc_process+0x3bd/0x631 [sunrpc]
>  [<f8de0604>] nfsd+0x19a/0x2ea [nfsd]
>  [<c0404e27>] kernel_thread_helper+0x7/0x10
> DWARF2 unwinder stuck at kernel_thread_helper+0x7/0x10
> Leftover inexact backtrace:
>  =======================

Some nesting annotation to the nfsd4 recovery code.
The vfs operations called will take dentry->d_inode->i_mutex.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] ISDN: fix warnings
Jeff Garzik [Fri, 8 Dec 2006 10:39:37 +0000 (02:39 -0800)]
[PATCH] ISDN: fix warnings

* diva, sedlbauer: the 'ready' label is only used in certain configurations
* hfc_pci:
- cast 'arg' to proper size for testing and printing
- print out 'void __iomem *' variables with %p,
  rather than using incorrect casts that throw warnings

Signed-off-by: Jeff Garzik <jeff@garzik.org>
Acked-by: Karsten Keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] i4l: remove the broken HISAX_AMD7930 option
Adrian Bunk [Fri, 8 Dec 2006 10:39:36 +0000 (02:39 -0800)]
[PATCH] i4l: remove the broken HISAX_AMD7930 option

HISAX_AMD7930 was never anywhere near to being working, and this doesn't
seem to change in the forseeable future.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Acked-by: Karsten Keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] isdn: replace kmalloc+memset with kzalloc
Burman Yan [Fri, 8 Dec 2006 10:39:35 +0000 (02:39 -0800)]
[PATCH] isdn: replace kmalloc+memset with kzalloc

Acked-by: Karsten Keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] drivers/isdn/*: trivial vsnprintf() conversion
Alexey Dobriyan [Fri, 8 Dec 2006 10:39:34 +0000 (02:39 -0800)]
[PATCH] drivers/isdn/*: trivial vsnprintf() conversion

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Acked-by: Alan Cox <alan@redhat.com>
Cc: Karsten Keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] ISDN: Avoid a potential NULL ptr deref in ippp
Jesper Juhl [Fri, 8 Dec 2006 10:39:34 +0000 (02:39 -0800)]
[PATCH] ISDN: Avoid a potential NULL ptr deref in ippp

There's a potential problem in isdn_ppp.c::isdn_ppp_decompress().
dev_alloc_skb() may fail and return NULL. If it does we will be passing a
NULL skb_out to ipc->decompress() and may also end up
dereferencing a NULL pointer at

    *proto = isdn_ppp_strip_proto(skb_out);

Correct this by testing 'skb_out' against NULL early and bail out.

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Cc: Karsten Keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] isdn: fix missing unregister_capi_driver
Akinobu Mita [Fri, 8 Dec 2006 10:39:33 +0000 (02:39 -0800)]
[PATCH] isdn: fix missing unregister_capi_driver

unregister_capi_driver() needs to be called in module cleanup.
(It fixes data corruption by reloading t1isa driver)

Cc: Kai Germaschewski <kai.germaschewski@gmx.de>
Acked-by: Karsten Keil <kkeil@suse.de>
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] drivers/isdn: Handcrafted MIN/MAX Macro removal
Amol Lad [Fri, 8 Dec 2006 10:39:32 +0000 (02:39 -0800)]
[PATCH] drivers/isdn: Handcrafted MIN/MAX Macro removal

Cleanups done to use min/max macros from kernel.h.  Handcrafted MIN/MAX
macros are changed to use macros in kernel.h

[akpm@osdl.org: warning fix]
Signed-off-by: Amol Lad <amol@verismonetworks.com>
Cc: Karsten Keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: cyclades, fix warnings
Jiri Slaby [Fri, 8 Dec 2006 10:39:31 +0000 (02:39 -0800)]
[PATCH] Char: cyclades, fix warnings

fix gcc signed/unsigned warnings

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: cyclades, cleanup
Jiri Slaby [Fri, 8 Dec 2006 10:39:30 +0000 (02:39 -0800)]
[PATCH] Char: cyclades, cleanup

- remove cvs rcsid and alter code that uses it.
- allow a semicolon after use of macro to not confuse parsers (e.g. indent)
  by do {} while (0)
- JIFFIES_DIFF is simple subtraction, subtract directly
- returns cleanup -- do not put values in parenthesis and do not return nothing
  at the end of void functions
- comments are /* */ in C (not //)

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: cyclades, Lindent the code
Jiri Slaby [Fri, 8 Dec 2006 10:39:28 +0000 (02:39 -0800)]
[PATCH] Char: cyclades, Lindent the code

make the code indented by tabs.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: cyclades, save indent levels
Jiri Slaby [Fri, 8 Dec 2006 10:39:28 +0000 (02:39 -0800)]
[PATCH] Char: cyclades, save indent levels

Save 3 indent levels in interrupt routine by moving the code to a separate
function.  This needs to be done to allow Lindent do its work, since only 4
columns are used for indenting now and hence Lindent makes a big mess in the
code, when moves it 4*5 columns to the right.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: istallion, use mod_timer
Jiri Slaby [Fri, 8 Dec 2006 10:39:27 +0000 (02:39 -0800)]
[PATCH] Char: istallion, use mod_timer

Do not set expires by hand, use kernel helper, which also calls add_timer.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: istallion, dynamic tty device
Jiri Slaby [Fri, 8 Dec 2006 10:39:26 +0000 (02:39 -0800)]
[PATCH] Char: istallion, dynamic tty device

register tty device dynamically according to the count of board ports.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: istallion, change init sequence
Jiri Slaby [Fri, 8 Dec 2006 10:39:25 +0000 (02:39 -0800)]
[PATCH] Char: istallion, change init sequence

Reorganizate module init and exit and implement logic, when something fails in
these functions.  The former is needed for proper handling dynamic
tty_register_device.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: istallion, move init and exit code
Jiri Slaby [Fri, 8 Dec 2006 10:39:24 +0000 (02:39 -0800)]
[PATCH] Char: istallion, move init and exit code

Let's have these function at the end of the driver and expand stli_init
directly into module_init fucntion, since there is nothing other to have
there.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: istallion, fix enabling
Jiri Slaby [Fri, 8 Dec 2006 10:39:24 +0000 (02:39 -0800)]
[PATCH] Char: istallion, fix enabling

Enable ISA cards before pci_register_driver and then, enable each PCI card in
probe function.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: istallion, correct fail paths
Jiri Slaby [Fri, 8 Dec 2006 10:39:23 +0000 (02:39 -0800)]
[PATCH] Char: istallion, correct fail paths

Check more retvals and react somehow.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: istallion, free only isa
Jiri Slaby [Fri, 8 Dec 2006 10:39:22 +0000 (02:39 -0800)]
[PATCH] Char: istallion, free only isa

Only ISA cards should be freed in module exit.  Pci probed are freed in
pci_remove.  Define a flag, where we store this info a what to check against.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: istallion, brdnr locking
Jiri Slaby [Fri, 8 Dec 2006 10:39:21 +0000 (02:39 -0800)]
[PATCH] Char: istallion, brdnr locking

Kill possible race when getting brdnr by locking.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: istallion, ifdef eisa code
Jiri Slaby [Fri, 8 Dec 2006 10:39:20 +0000 (02:39 -0800)]
[PATCH] Char: istallion, ifdef eisa code

Disable compiling eisa stuff if STLI_EISAPROBE == 0.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: istallion, variables cleanup
Jiri Slaby [Fri, 8 Dec 2006 10:39:19 +0000 (02:39 -0800)]
[PATCH] Char: istallion, variables cleanup

- wipe gcc -W warnings by int -> uint conversion
- move 2 global variables into their local place

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: istallion, eliminate typedefs
Jiri Slaby [Fri, 8 Dec 2006 10:39:18 +0000 (02:39 -0800)]
[PATCH] Char: istallion, eliminate typedefs

Use only struct <name> instead of defining a new type <name_t>.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: istallion, remove the mess
Jiri Slaby [Fri, 8 Dec 2006 10:39:18 +0000 (02:39 -0800)]
[PATCH] Char: istallion, remove the mess

- remove unneeded license text
- remove functions, that are implemented in kernel -- call them (strtoul,
  min, tolower)
- do not cast NULL
- there is no static table, throw away code, which takes care of it --
  find module param cards in that place instead.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: istallion, convert to pci probing
Jiri Slaby [Fri, 8 Dec 2006 10:39:17 +0000 (02:39 -0800)]
[PATCH] Char: istallion, convert to pci probing

Use probing for pci devices.  Change some __inits to __devinits to use these
functions in probe function.  Create stli_cleanup_ports and move there cleanup
code from module_exit() code to not have duplicite cleanup code.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, use dynamic dev
Jiri Slaby [Fri, 8 Dec 2006 10:39:16 +0000 (02:39 -0800)]
[PATCH] Char: stallion, use dynamic dev

Use dynamic tty device registering depending on board's port count.  (i ->
retval change is relevant, since gcc complains about signedness of i)

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, variables cleanup
Jiri Slaby [Fri, 8 Dec 2006 10:39:15 +0000 (02:39 -0800)]
[PATCH] Char: stallion, variables cleanup

- fix `gcc -W' un/signed warnings by converting some ints -> uints.
- move 3 global variables into functions, where are they used.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, remove syntactic sugar
Jiri Slaby [Fri, 8 Dec 2006 10:39:14 +0000 (02:39 -0800)]
[PATCH] Char: stallion, remove syntactic sugar

Remove useless parenthesis and brackets.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, brd struct locking
Jiri Slaby [Fri, 8 Dec 2006 10:39:14 +0000 (02:39 -0800)]
[PATCH] Char: stallion, brd struct locking

Since assigning of stl_brds[brdnr] is racy, add locking to this critical
section.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, fix fail paths
Jiri Slaby [Fri, 8 Dec 2006 10:39:13 +0000 (02:39 -0800)]
[PATCH] Char: stallion, fix fail paths

Release everything what was allocated and check return value of isa probing.
Release only ISA boards in module exit, since pci have their own
pci-probing-remove.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, functions cleanup
Jiri Slaby [Fri, 8 Dec 2006 10:39:12 +0000 (02:39 -0800)]
[PATCH] Char: stallion, functions cleanup

Delete macros and functions, that are implemented in kernel yet (strtoul, min,
tolower).  Expand one function body in place, where it is called from.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, correct __init macros
Jiri Slaby [Fri, 8 Dec 2006 10:39:11 +0000 (02:39 -0800)]
[PATCH] Char: stallion, correct __init macros

Some functions are now called from pci probing functiuon which is __devinit,
not __init, correct this to not free functions after init if hotplug enabled.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, implement fail paths
Jiri Slaby [Fri, 8 Dec 2006 10:39:10 +0000 (02:39 -0800)]
[PATCH] Char: stallion, implement fail paths

This driver expect everything to work.  Implement fail paths logic to release
regions, irq hangler, memory...  if something is in bad state.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, prints cleanup
Jiri Slaby [Fri, 8 Dec 2006 10:39:09 +0000 (02:39 -0800)]
[PATCH] Char: stallion, prints cleanup

Too many information is printed out (they may be easily obtained through
sysfs), wipe them out in probe function.  Convert rest of them to dev_
variants.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, convert to pci probing
Jiri Slaby [Fri, 8 Dec 2006 10:39:09 +0000 (02:39 -0800)]
[PATCH] Char: stallion, convert to pci probing

Convert stallion driver to pci probing instead of pci_dev_get iteration.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: sx, request regions
Jiri Slaby [Fri, 8 Dec 2006 10:39:08 +0000 (02:39 -0800)]
[PATCH] Char: sx, request regions

Check regions if they are free before we touch them.  Release them in
failpaths.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: sx, use pci_iomap
Jiri Slaby [Fri, 8 Dec 2006 10:39:07 +0000 (02:39 -0800)]
[PATCH] Char: sx, use pci_iomap

Use pci_ friends for memory remapping of pci devices.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: sx, fix return in module init
Jiri Slaby [Fri, 8 Dec 2006 10:39:06 +0000 (02:39 -0800)]
[PATCH] Char: sx, fix return in module init

If pci_register_driver fails, but eisa_driver_register doesn't, we don't call
misc_deregister, but returns error.  Return OK in such cases.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: sx, simplify timer logic
Jiri Slaby [Fri, 8 Dec 2006 10:39:05 +0000 (02:39 -0800)]
[PATCH] Char: sx, simplify timer logic

Use kernel helpers for changing timer internals.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: sx, whitespace cleanup
Jiri Slaby [Fri, 8 Dec 2006 10:39:04 +0000 (02:39 -0800)]
[PATCH] Char: sx, whitespace cleanup

Use Lindent to cleanup whitespace.  Wrap long lines by hand.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: sx, remove duplicite code
Jiri Slaby [Fri, 8 Dec 2006 10:39:03 +0000 (02:39 -0800)]
[PATCH] Char: sx, remove duplicite code

sx_remove_code contents were used twice.  Call this function instead.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: sx, lock boards struct
Jiri Slaby [Fri, 8 Dec 2006 10:39:03 +0000 (02:39 -0800)]
[PATCH] Char: sx, lock boards struct

Fix race condition which may occurs when multiple cards are probed at the same
time.  Add mutex to critical sections to avoid this situation.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: sx, ifdef ISA code
Jiri Slaby [Fri, 8 Dec 2006 10:39:02 +0000 (02:39 -0800)]
[PATCH] Char: sx, ifdef ISA code

Most users won't need old probe code -- make it depndent on CONFIG_(E)ISA.

Cc: <R.E.Wolff@BitWizard.nl>
Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: sx, use eisa probing
Jiri Slaby [Fri, 8 Dec 2006 10:39:01 +0000 (02:39 -0800)]
[PATCH] Char: sx, use eisa probing

Instead of finding eisa directly, use eisa probing.

Cc: <R.E.Wolff@BitWizard.nl>
Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: sx, mark functions as devinit
Jiri Slaby [Fri, 8 Dec 2006 10:39:00 +0000 (02:39 -0800)]
[PATCH] Char: sx, mark functions as devinit

Mark as much as possible functions as __devinit to free them after driver
initialization (if no hotplug).

Cc: <R.E.Wolff@BitWizard.nl>
Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: sx, use kcalloc
Jiri Slaby [Fri, 8 Dec 2006 10:38:59 +0000 (02:38 -0800)]
[PATCH] Char: sx, use kcalloc

Convert self-implemented kzalloc to kernel kcalloc.

Cc: <R.E.Wolff@BitWizard.nl>
Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: sx, convert to pci probing
Jiri Slaby [Fri, 8 Dec 2006 10:38:58 +0000 (02:38 -0800)]
[PATCH] Char: sx, convert to pci probing

Convert old pci code to pci probing.

Cc: <R.E.Wolff@BitWizard.nl>
Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: isicom, fix tty index check
Jiri Slaby [Fri, 8 Dec 2006 10:38:57 +0000 (02:38 -0800)]
[PATCH] Char: isicom, fix tty index check

Since tty->index is signed and may be < 0, we should assign this to int not
uint.  There is already a check to ensure if it is not negative, but gcc
complains with -W flag enabled and it is perfectly correct:
drivers/char/isicom.c:953: warning: comparison of unsigned expression < 0
is always false

Fix this issue by converting `line' variable from uint to int.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: isicom, remove cvs stuff
Jiri Slaby [Fri, 8 Dec 2006 10:38:56 +0000 (02:38 -0800)]
[PATCH] Char: isicom, remove cvs stuff

We don't need RCS_ID & co. Extract them from the code and define only one
macro -- SX_VERSION.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: isicom, simplify timer
Jiri Slaby [Fri, 8 Dec 2006 10:38:55 +0000 (02:38 -0800)]
[PATCH] Char: isicom, simplify timer

Don't init timer in such complicated way. Use DEFINE_TIMER and then only
mod_timer to reset the expiration.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: isicom, use completion
Jiri Slaby [Fri, 8 Dec 2006 10:38:55 +0000 (02:38 -0800)]
[PATCH] Char: isicom, use completion

Use wait_for_completion+complete instead of variables+msleep hack.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: isicom, check kmalloc retval
Jiri Slaby [Fri, 8 Dec 2006 10:38:54 +0000 (02:38 -0800)]
[PATCH] Char: isicom, check kmalloc retval

Value returned from kamlloc may be NULL, we should check if ENOMEM occured.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: isicom, use pci_request_region
Jiri Slaby [Fri, 8 Dec 2006 10:38:53 +0000 (02:38 -0800)]
[PATCH] Char: isicom, use pci_request_region

Use pci_request_region in pci probing function instead of request_region.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: isicom, move to tty_register_device
Jiri Slaby [Fri, 8 Dec 2006 10:38:52 +0000 (02:38 -0800)]
[PATCH] Char: isicom, move to tty_register_device

Instead of registering all devices in register_tty_driver, register devices in
probe function and register only port_count devices.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: isicom, remove unneeded memset
Jiri Slaby [Fri, 8 Dec 2006 10:38:51 +0000 (02:38 -0800)]
[PATCH] Char: isicom, remove unneeded memset

Memsetting of global static variables is not needed in the init code.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: isicom, remove isa code
Jiri Slaby [Fri, 8 Dec 2006 10:38:51 +0000 (02:38 -0800)]
[PATCH] Char: isicom, remove isa code

ISA is not supported by this driver, remove parts, that take care of this.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: isicom, rename init function
Jiri Slaby [Fri, 8 Dec 2006 10:38:50 +0000 (02:38 -0800)]
[PATCH] Char: isicom, rename init function

Rename init function from setup to init and mark it as __init, not __devinit.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: isicom, expand function
Jiri Slaby [Fri, 8 Dec 2006 10:38:49 +0000 (02:38 -0800)]
[PATCH] Char: isicom, expand function

Simple functions (those, that calls reuest_irq, request_region et al) may be
expanded directly in code.  It makes probe function more readable and
transparent.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] termios: Enable new style termios ioctls on x86-64
Alan Cox [Fri, 8 Dec 2006 10:38:48 +0000 (02:38 -0800)]
[PATCH] termios: Enable new style termios ioctls on x86-64

This turns on the split input/output speed features and arbitary baud rate
handling for the x86-64 platform.  Nothing should break if you use existing
standard speeds.  If you use the new speed stuff then you may see some
drivers failing to report the speed changes properly in error cases.  This
will be worked on further.  For the working cases this all seems happy.
I'll post a test suite used to test the basic stuff as well.

Patches for i386 will follow when I get a moment but are basically the
same.  If people could patch/test-suite other architectures and submit them
that would be great.

Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] tty_ioctl: use termios for the old structure and termios2 for the new
Alan Cox [Fri, 8 Dec 2006 10:38:47 +0000 (02:38 -0800)]
[PATCH] tty_ioctl: use termios for the old structure and termios2 for the new

Having split out the user and kernel structures it turns out that some non
glibc C libraries pull their termios struct from the kernel headers
directly or indirectly.  This means we must keep "struct termios" as the
library sees it correct for the old ioctls.  Not a big problem just shuffle
the names and ifdef around a bit

[akpm@osdl.org: build fix]
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] tty: switch to ktermios
Alan Cox [Fri, 8 Dec 2006 10:38:45 +0000 (02:38 -0800)]
[PATCH] tty: switch to ktermios

This is the grungy swap all the occurrences in the right places patch that
goes with the updates.  At this point we have the same functionality as
before (except that sgttyb() returns speeds not zero) and are ready to
begin turning new stuff on providing nobody reports lots of bugs

If you are a tty driver author converting an out of tree driver the only
impact should be termios->ktermios name changes for the speed/property
setting functions from your upper layers.

If you are implementing your own TCGETS function before then your driver
was broken already and its about to get a whole lot more painful for you so
please fix it 8)

Also fill in c_ispeed/ospeed on init for most devices, although the current
code will do this for you anyway but I'd like eventually to lose that extra
paranoia

[akpm@osdl.org: bluetooth fix]
[mp3@de.ibm.com: sclp fix]
[mp3@de.ibm.com: warning fix for tty3270]
[hugh@veritas.com: fix tty_ioctl powerpc build]
[jdike@addtoit.com: uml: fix ->set_termios declaration]
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Martin Peschke <mp3@de.ibm.com>
Acked-by: Peter Oberparleiter <oberpar@de.ibm.com>
Cc: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] tty: switch to ktermios and new framework
Alan Cox [Fri, 8 Dec 2006 10:38:44 +0000 (02:38 -0800)]
[PATCH] tty: switch to ktermios and new framework

This is the core of the switch to the new framework.  I've split it from the
driver patches which are mostly search/replace and would encourage people to
give this one a good hard stare.

The references to BOTHER and ISHIFT are the termios values that must be
defined by a platform once it wants to turn on "new style" ioctl support.  The
code patches here ensure that providing

1. The termios overlays the ktermios in memory
2. The only new kernel only fields are c_ispeed/c_ospeed (or none)

the existing behaviour is retained.  This is true for the patches at this
point in time.

Future patches will define BOTHER, ISHIFT and enable newer termios structures
for each architecture, and once they are all done some of the ifdefs also
vanish.

[akpm@osdl.org: warning fix]
[akpm@osdl.org: IRDA fix]
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] tty: preparatory structures for termios revamp
Alan Cox [Fri, 8 Dec 2006 10:38:43 +0000 (02:38 -0800)]
[PATCH] tty: preparatory structures for termios revamp

In order to sort out our struct termios and add proper speed control we need
to separate the kernel and user termios structures.  Glibc is fine but the
other libraries rely on the kernel exported struct termios and we need to
extend this without breaking the ABI/API

To do so we add a struct ktermios which is the kernel view of a termios
structure and overlaps the struct termios with extra fields on the end for
now.  (That limitation will go away in later patches).  Some platforms (eg
alpha) planned ahead and thus use the same struct for both, others did not.

This just adds the structures but does not use them, it seems a sensible
splitting point for bisect if there are compile failures (not that I expect
them)

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, remove many prototypes
Jiri Slaby [Fri, 8 Dec 2006 10:38:42 +0000 (02:38 -0800)]
[PATCH] Char: stallion, remove many prototypes

Many prototypes are useless, since functions are declared before they are
called.  Also some code was easy to move to resolve this dependency and delete
prototypes.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, mark functions as init
Jiri Slaby [Fri, 8 Dec 2006 10:38:41 +0000 (02:38 -0800)]
[PATCH] Char: stallion, mark functions as init

Use __init macro for functions, that may be freed after initialization.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, uninline functions
Jiri Slaby [Fri, 8 Dec 2006 10:38:40 +0000 (02:38 -0800)]
[PATCH] Char: stallion, uninline functions

- Do not inline such long functions, it won't speed up anything.
- Remove prototypes of these functions.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, move init/deinit
Jiri Slaby [Fri, 8 Dec 2006 10:38:40 +0000 (02:38 -0800)]
[PATCH] Char: stallion, move init/deinit

- Move code from stl_init into module init function, because calling it was the
  only one thing, that it did.
- Move this code to the end of the driver (usual place for this) to resolve
  dependencies simply -- without prototypes.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, kill typedefs
Jiri Slaby [Fri, 8 Dec 2006 10:38:39 +0000 (02:38 -0800)]
[PATCH] Char: stallion, kill typedefs

Typedefs are considered ugly in the kernel. Eliminate them.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, remove unneeded casts
Jiri Slaby [Fri, 8 Dec 2006 10:38:38 +0000 (02:38 -0800)]
[PATCH] Char: stallion, remove unneeded casts

casts of NULL are unnecessary. And so casts to (void *) are.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Char: stallion, use pr_debug macro
Jiri Slaby [Fri, 8 Dec 2006 10:38:37 +0000 (02:38 -0800)]
[PATCH] Char: stallion, use pr_debug macro

Use pr_debug kernel macro instead of #ifdef DEBUG | printk() | #endif

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>