Even though we weren't calling a blocking function within the dynid
spinlock, we do not need a spinlock here but can and should be using
a mutex.
Reported-by: Jiri Slaby
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/ds.c | 19 +++
include/pcmcia/ds.h |2 +-
2
As a side effect,
socket_state_t socket;
u_int state;
u_int suspended_state;
are properly protected now.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cs.c | 21
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/pcmcia_resource.c |3 +++
drivers/pcmcia/socket_sysfs.c|2 ++
2 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/drivers/pcmcia/pcmcia_resource.c b/drivers/pcmcia/pcmcia_resource.c
index f365ecb..f0de7b8 100644
--- a
Signed-off-by: Dominik Brodowski
---
Documentation/pcmcia/locking.txt | 25 +
drivers/pcmcia/ds.c | 38 +
drivers/pcmcia/pcmcia_resource.c | 108 --
3 files changed, 120 insertions(+), 51 deletions(-)
diff --git a
replace pcmcia_socket->lock and pcmcia_dev_list_lock by using the
per-socket "ops_mutex", as we do neither need different locks
nor a spinlock here.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cs.c |2 -
drivers/pcmcia/ds.c
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/ds.c | 32 +---
1 files changed, 29 insertions(+), 3 deletions(-)
diff --git a/drivers/pcmcia/ds.c b/drivers/pcmcia/ds.c
index bcb9ef1..d1d7a0c 100644
--- a/drivers/pcmcia/ds.c
+++ b/drivers/pcmcia/ds.c
@@ -649,10
As a side effect,
io_window_t io[MAX_IO_WIN];
is explicitely protected now.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/pcmcia_resource.c | 10 ++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/drivers/pcmcia/pcmcia_resource.c b
Hey Wolfram,
On Sat, Jan 16, 2010 at 08:41:21PM +0100, Wolfram Sang wrote:
> On Sat, Jan 16, 2010 at 01:41:43PM +0100, Dominik Brodowski wrote:
>
> >
> > on top of what had already been discussed for 2.6.34, here are 12 patches
> > trying to fix the locking mess the PCM
Hey,
On Sun, Jan 17, 2010 at 09:18:34AM -0800, Eric W. Biederman wrote:
> Ming Lei writes:
>
> > On Sat, 02 Jan 2010 13:37:12 -0800
> > ebied...@xmission.com (Eric W. Biederman) wrote:
> >
> >>
> >> Holding locks over device_del -> kobject_del -> sysfs_deactivate can
> >> cause deadlocks if tho
Hey,
On Sun, Jan 17, 2010 at 03:30:08PM +0900, Komuro wrote:
> Same result as Wolfram.
On Sun, Jan 17, 2010 at 12:08:20PM +0100, Wolfram Sang wrote:
> > If it doesn't help, could you enable lockdep, please, and check with
>
> I enabled locking debug and got this while inserting the card:
...
> D
Protect the pccard_operations callback "set_mem_map" by a new
mutex ops_mutex. This mutex also protects the following values
in struct pcmcia_socket:
pccard_mem_map win[]
pccard_mem_map cis_mem
void __iomem*cis_virt
Signed-off-b
it.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6.git#locking
and will be send out to this list.
Dominik Brodowski (16):
pcmcia: add locking to set_mem_map()
pcmcia: also lock fake and cache CIS by ops_mutex
pcmcia: lock ops->set_io_map()
pcmcia: lock ops->se
Even though we weren't calling a blocking function within the dynid
spinlock, we do not need a spinlock here but can and should be using
a mutex.
Reported-by: Jiri Slaby
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/ds.c | 16
include/pcmcia/ds.h |2 +-
2
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/ds.c | 25 ++---
1 files changed, 18 insertions(+), 7 deletions(-)
diff --git a/drivers/pcmcia/ds.c b/drivers/pcmcia/ds.c
index 4f7308d..bcb9ef1 100644
--- a/drivers/pcmcia/ds.c
+++ b/drivers/pcmcia/ds.c
@@ -265,6 +265,7
Signed-off-by: Dominik Brodowski
---
Documentation/pcmcia/locking.txt | 92 ++
1 files changed, 92 insertions(+), 0 deletions(-)
create mode 100644 Documentation/pcmcia/locking.txt
diff --git a/Documentation/pcmcia/locking.txt b/Documentation/pcmcia
Signed-off-by: Dominik Brodowski
---
Documentation/pcmcia/locking.txt |5 +++--
drivers/pcmcia/cs.c |7 ++-
drivers/pcmcia/ds.c |6 +-
drivers/pcmcia/pcmcia_ioctl.c|4 +---
drivers/pcmcia/rsrc_mgr.c|2 --
drivers/pcmcia
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/ds.c | 33 ++---
1 files changed, 30 insertions(+), 3 deletions(-)
diff --git a/drivers/pcmcia/ds.c b/drivers/pcmcia/ds.c
index bcb9ef1..0eb242c 100644
--- a/drivers/pcmcia/ds.c
+++ b/drivers/pcmcia/ds.c
As a side effect,
socket_state_t socket;
u_int state;
u_int suspended_state;
are properly protected now.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cs.c | 18
After a CIS update -- or the finalization of the resource database --,
proceed with the re-scanning or re-querying of PCMCIA cards only in
a separate thread to avoid deadlocks.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cistpl.c | 13 ++
drivers/pcmcia/cs_internal.h |1
This avoids any sysfs-related deadlock (or lockdep warning), such
as reported at http://lkml.org/lkml/2010/1/17/88 .
Reported-by: Ming Lei
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cs.c | 177 +---
drivers/pcmcia/cs_internal.h |6
As a side effect,
io_window_t io[MAX_IO_WIN];
is explicitely protected now.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/pcmcia_resource.c | 10 ++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/drivers/pcmcia/pcmcia_resource.c b
Specifically,
struct list_headcis_cache;
size_t fake_cis_len;
u8 *fake_cis;
are protected.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cistpl.c | 18 +-
drivers/pcmcia/ds.c
replace pcmcia_socket->lock and pcmcia_dev_list_lock by using the
per-socket "ops_mutex", as we do neither need different locks
nor a spinlock here.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cs.c |2 -
drivers/pcmcia/ds.c
In cb_free(), we remove some sysfs files -- other sysfs files might
grab ops_mutex, so we cannot hold it while removing sysfs files. This
fixes http://lkml.org/lkml/2010/1/17/88 .
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cs.c | 12 ++--
1 files changed, 10 insertions(+), 2
The remaining legitimate ioctl user in the past years has been ARM, so
limit the config option to ARM as well. Also, to avoid any locking issues,
limit it to !SMP an !PREEMPT.
CC: Russell King
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/Kconfig |2 +-
1 files changed, 1 insertions
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/pcmcia_resource.c |3 +++
drivers/pcmcia/socket_sysfs.c|2 ++
2 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/drivers/pcmcia/pcmcia_resource.c b/drivers/pcmcia/pcmcia_resource.c
index f365ecb..f0de7b8 100644
--- a
Signed-off-by: Dominik Brodowski
---
Documentation/pcmcia/locking.txt | 25
drivers/pcmcia/ds.c | 38
drivers/pcmcia/pcmcia_resource.c | 122 --
3 files changed, 129 insertions(+), 56 deletions(-)
diff --git a
Hey,
On Tue, Jan 19, 2010 at 09:21:50PM +0900, Komuro wrote:
> It seems [RFC v3 PCMCIA locking updates for 2.6.34] still has some problems.
>
> The 3c589_cs and serial_cs is not loaded at dmesg below.
> After re-plug, it works.
Strange -- what does "lspcmcia -vvv" look like before and after re-p
Hey Uwe,
On Sat, Jan 23, 2010 at 09:59:22PM +0100, Uwe Kleine-König wrote:
> This fixes:
>
> drivers/pcmcia/omap_cf.c:74:1: warning: "SZ_2K" redefined
>
> Since
>
> c1191b0 ([ARM] Kirkwood: create a mapping for the Security Accelerator
> SRAM)
>
> SZ_2K is defined in arch/arm/incl
[pcmcia]
> [] send_event+0xba/0x160 [pcmcia_core]
> [] socket_insert+0x156/0x1b0 [pcmcia_core]
> [] pccardd+0x2c5/0x3a0 [pcmcia_core]
> [<8014b374>] kthread+0x74/0x80
> [<801031ba>] kernel_thread_helper+0x6/0x10
> [] 0x
Should be fixed b
Hey,
On Tue, Jan 19, 2010 at 11:11:26PM +0100, Wolfram Sang wrote:
> > No lockdep-warnings anymore whatever I tried. kmemleak reports something,
> > but
>
> Sorry, today I got this (after applying the patch to make my D-Link DMF560TX
> work):
>
> Jan 19 23:03:11 goodluck kernel: [ 71.618969]
Reported-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/ds.c | 19 ++-
1 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/drivers/pcmcia/ds.c b/drivers/pcmcia/ds.c
index 1b16a0f..10164b9 100644
--- a/drivers/pcmcia/ds.c
+++ b/drivers/pcmcia
After a CIS update -- or the finalization of the resource database --,
proceed with the re-scanning or re-querying of PCMCIA cards only in
a separate thread to avoid deadlocks.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cistpl.c | 10 +
drivers/pcmcia/cs.c |8
The requery callback now also handles the addition of a second pseudo
multifunction device. Avoids messing with dev_{g,s}et_drvdata(), and
fixes any workqueue <-> skt_mutex deadlock.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/ds.c
Do not ignore the error returned by simple_config() / multi_config().
Signed-off-by: Dominik Brodowski
---
drivers/serial/serial_cs.c |7 ---
1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/serial/serial_cs.c b/drivers/serial/serial_cs.c
index 0ee7239..8d38eab
the PCMCIA list. Changes since v3:
- avoid prod_id memleak
- use pccardd for any requery work, not the workqueue
Best,
Dominik
Dominik Brodowski (20):
pcmcia: add locking to set_mem_map()
pcmcia: also lock fake and cache CIS by ops_mutex
pcmcia: lock ops->set_io_
At least warn if pcmcia_write_cis_mem() didn't succeed, util we have
proper error handling in place.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cistpl.c |8 ++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/drivers/pcmcia/cistpl.c b/drivers/pcmcia/cis
Hey,
On Wed, Jan 20, 2010 at 09:03:11PM +0900, Komuro wrote:
> The exported function should be locked like below?
No, as we're not accessing any protected memory here -- just data local to
the call chain. Now, pccard_get_first_tuple and pccard_get_tuple_data do
access protected memory, and so the
Hey,
On Tue, Jan 19, 2010 at 09:21:50PM +0900, Komuro wrote:
> lspcmcia -vvv is same between before and after re-plug.
Are the drivers bound before the re-plug? Now, with v4, does it work
out-of-the-box or does it work if you issue a
echo 1 >
/sys/class/pcmcia_socket/pcmcia_socket0/avai
Hey,
On Tue, Jan 26, 2010 at 10:58:02PM +0100, Wolfram Sang wrote:
> On Sun, Jan 24, 2010 at 06:30:00PM +0100, Dominik Brodowski wrote:
> > Hey,
> >
> > The v4 of the locking pathes are available in the git repository -- along
> > with a few other f
Hey,
On Mon, Mar 15, 2010 at 06:30:53AM +0900, Komuro wrote:
> When the 3com card does not work,
> the card_id and prod_id becomes the bogus value.
Now things become interesting -- and debuggable. Could you apply the
attached patch _on top_ of pcmcia-test and send the complete (long) dmesg
output
Applied, thanks. Any news on the PCMCIA-then-Cardbus bug, by chance?
Best,
Dominik
On Sat, Feb 06, 2010 at 10:09:44PM +0100, Wolfram Sang wrote:
> Signed-off-by: Wolfram Sang
> Cc: Dominik Brodowski
> ---
> drivers/pcmcia/i82365.h |4 ++--
> 1 files changed, 2 i
gt; bug report) until there is someone who can verify the change? Maybe a comment
> in yenta_table could be useful that the change to ENE might be needed?
>
> >
> > Cc: Dominik Brodowski
> > Cc: Daniel Ritz
> > Signed-off-by: Andrew Morton
> > ---
>
Hey,
On Thu, Feb 11, 2010 at 06:39:37PM +0900, Komuro wrote:
> Here is the output of dmesg.
This is most interesting.
> pcmcia_socket pcmcia_socket0: pcmcia_read_cis_mem(1, 0x51, 5)
> pcmcia_socket pcmcia_socket0: 0x00 0x91 0x00 0x00 ...
> pcmcia_socket pcmcia_socket0: pcmcia_read_cis_mem(1, 0
Hey,
On Wed, Feb 10, 2010 at 11:16:09PM +0100, Wolfram Sang wrote:
> > Now that's strange -- especially as this works just fine over here
> > (different network cards, though). I guess it is repeatable with v4, but
> > did not happen with v3? If so, does it work fine with the "master" branch of
>
Dear Komuro,
these were, again, very valuable debug hints. Based on those I've upgraded
my patches in the git repository. It'd be great if yo could re-run the test
once again, ad still with the debug patch applied.
Best and many thanks,
Dominik
___
Hey,
On Wed, Feb 17, 2010 at 09:49:28PM +0900, Komuro wrote:
> >these were, again, very valuable debug hints. Based on those I've upgraded
> >my patches in the git repository. It'd be great if yo could re-run the test
> >once again, ad still with the debug patch applied.
>
> There is no updated p
As this is the socket thread (pccardd) starting up, we do not have
anything to wait for in ds.c. Instead, wait the same amount of time
in pccardd to allow userspace to catch up and - possibly - execute
pcmcia-socket-startup.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cs.c |3
alid. When allocationg mem resources, mem_db_valid is
then preferred to mem_db.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/rsrc_nonstatic.c | 65 +++---
1 files changed, 46 insertions(+), 19 deletions(-)
diff --git a/drivers/pcmcia/rsrc_nonstatic.c b/driv
If a new interval overlaps or extends an existing interval in
add_interval(), do not fail, but extend the existing interval.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/rsrc_nonstatic.c |6 --
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/pcmcia
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cistpl.c | 27 +--
drivers/pcmcia/rsrc_nonstatic.c |5 +
2 files changed, 26 insertions(+), 6 deletions(-)
diff --git a/drivers/pcmcia/cistpl.c b/drivers/pcmcia/cistpl.c
index 17a5da3..602f574 100644
Do not ignore the error returned by simple_config() / multi_config().
CC: linux-ser...@vger.kernel.org
Signed-off-by: Dominik Brodowski
---
drivers/serial/serial_cs.c |7 ---
1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/serial/serial_cs.c b/drivers/serial
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cistpl.c | 63 --
1 files changed, 44 insertions(+), 19 deletions(-)
diff --git a/drivers/pcmcia/cistpl.c b/drivers/pcmcia/cistpl.c
index 602f574..2f3622d 100644
--- a/drivers/pcmcia/cistpl.c
+++ b
John,
On Fri, Feb 12, 2010 at 01:35:19PM -0500, John W. Linville wrote:
> I'm happy to take this through my tree unless someone objects. OTOH,
> I'm happy to let the hostap/orinoco bits go through an appropriate
> tree for PCMCIA...?
I'm fine either way -- just let me know :)
Best,
Domi
Sergio,
any chance you could try out the patches to be found at
git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6.git ?
Best,
Dominik
___
Linux PCMCIA reimplementation list
http://lists.infradead.org/mailman/listinfo/linux-pcmcia
Hey,
On Sat, Feb 20, 2010 at 01:41:59PM +0900, Komuro wrote:
> (1) it seems the 3c562 multi_function card works now.
That's good news -- thanks for testing!
> (2) but another 3com card 3CXEM556 (multi_function + cis override) does not
> work.
> This card works fine with kernel 2.6.33-rc8.
Hey,
thanks for testing!
On Sat, Feb 20, 2010 at 08:42:28PM +0900, Komuro wrote:
> pcmcia 0.0: trying to load CIS file cis/3CXEM556.cis
> pcmcia 0.0: firmware: requesting cis/3CXEM556.cis
> pcmcia_socket pcmcia_socket0: Using replacement CIS
> pcmcia_socket pcmcia_socket0: parse_uevents: events 0
Hey,
On Sun, Feb 21, 2010 at 05:19:13AM +0900, Komuro wrote:
> >> eth0: 3Com 3c589, io 0x300, irq 3, hw_addr 00:00:86:xx:xx:xx
> >> 8K FIFO split 5:3 Rx:Tx, auto xcvr
>
> >Did you modify the hw_addr here, or is it reported wrongly here, compared to
>
> sorry, I modified the hw_addr, so the hw_
Hey,
On Sun, Feb 21, 2010 at 04:05:35PM +0900, Komuro wrote:
> Hi,
>
> After "pccardctl" eject and "pccardctl insert",
> I get the message "cs: warning: no high memory space available!"
> in the PCMCIA patches(brodo/pcmcia-2.6.git).
Ah, that's nothing to worry about. Fixed by this patch, which I
Hey,
On Sun, Feb 21, 2010 at 07:59:37AM +0900, Komuro wrote:
> Hi,
>
> > > eth8: command 0x5800 did not complete!
> > > eth8: command 0x5800 did not complete!
> > > eth8: command 0x5800 did not complete!
> > > eth8: command 0x5800 did not complete!
> > > eth8: command 0x5800 did not complete!
> >
Russell,
On Sat, Feb 20, 2010 at 05:41:00PM +0100, Martin Fuzzey wrote:
> Russell King - ARM Linux wrote:
> > I do wonder whether, as you have windows, you should be using the soc
> > support - the soc support is based interfacing hardware which does not
> > have windows into the generic infrastru
Remove rsrc_mgr indirections only used by pcmcia_resource.c
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cs_internal.h |8
drivers/pcmcia/pcmcia_resource.c | 17 +
drivers/pcmcia/rsrc_mgr.c| 18 --
3
Do not ignore the error returned by simple_config() / multi_config().
CC: linux-ser...@vger.kernel.org
Signed-off-by: Dominik Brodowski
---
drivers/serial/serial_cs.c |7 ---
1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/serial/serial_cs.c b/drivers/serial
If only CardBus cards are used, but not PCMCIA cards, we do not need
the extensive resource management functions provided for by
rsrc_nonstatic.c (~240K).
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/Kconfig |4 ++--
include/pcmcia/ss.h| 10
In cb_free(), we remove some sysfs files -- other sysfs files might
grab ops_mutex, so we cannot hold it while removing sysfs files. This
fixes http://lkml.org/lkml/2010/1/17/88 .
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cs.c | 12 ++--
1 files
Add a lot of documentation to the rsrc_nonstatic io memory probe
functions. Also, add a first memory probe call -- just checking
whether request_resource() succeeds -- upon adding of resources.
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/rsrc_nonstatic.c | 174
@
identifier r.I2;
identifier s.E;
@@
+ const
struct I2 E[] = ...;
//
Signed-off-by: Márton Németh
Cc: Julia Lawall
Cc: co...@diku.dk
Acked-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/electra_cf.c |2 +-
drivers/pcmcia/m8xx_pcmcia.c |2 +-
2 files
As release_resoure_db() used to be called only from one place, and
it's a two-line function, remove it.
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cs.c |3 ++-
drivers/pcmcia/cs_internal.h |3 ---
drivers/pcmcia/rsrc_mgr.c|6
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/ds.c | 25 ++---
1 files changed, 18 insertions(+), 7 deletions(-)
diff --git a/drivers/pcmcia/ds.c b/drivers/pcmcia/ds.c
index 4f7308d..bcb9ef1 100644
--- a/drivers/pcmcia/ds.c
+++ b/drivers
...@gmail.com
[li...@dominikbrodowski.net: whitespace fixes]
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/o2micro.h | 45 ++--
drivers/pcmcia/yenta_socket.c |5
2 files changed, 34 insertions(+), 16 deletions(-)
diff --git a/drivers
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
Documentation/pcmcia/locking.txt | 92 ++
1 files changed, 92 insertions(+), 0 deletions(-)
create mode 100644 Documentation/pcmcia/locking.txt
diff --git a/Documentation/pcmcia/locking.txt b
After a CIS update -- or the finalization of the resource database --,
proceed with the re-scanning or re-querying of PCMCIA cards only in
a separate thread to avoid deadlocks.
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cistpl.c | 10 +-
drivers
: Dominik Brodowski
---
drivers/pcmcia/cistpl.c | 24
drivers/pcmcia/cs.c |4
drivers/pcmcia/rsrc_nonstatic.c |3 +--
3 files changed, 21 insertions(+), 10 deletions(-)
diff --git a/drivers/pcmcia/cistpl.c b/drivers/pcmcia/cistpl.c
index
From: H Hartley Sweeten
The struct file 'private_data' member is a void *, the cast is not needed.
Signed-off-by: H Hartley Sweeten
Cc: Harald Welte
Signed-off-by: Dominik Brodowski
---
drivers/char/pcmcia/cm4000_cs.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
di
As a side effect,
socket_state_t socket;
u_int state;
u_int suspended_state;
are properly protected now.
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cs.c
list.
Thanks,
Dominik
Dominik Brodowski (41):
pcmcia: make use of pcmcia_dev_resume() return value
pcmcia: remove remaining unused IRQ_FIRST_SHARED parameter
pcmcia: do not meddle with already assigned resources
pcmcia: validate CIS, not CIS cache.
pcmcia
As a side effect,
io_window_t io[MAX_IO_WIN];
is explicitely protected now.
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/pcmcia_resource.c | 10 ++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/drivers
If a new interval overlaps or extends an existing interval in
add_interval(), do not fail, but extend the existing interval.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/rsrc_nonstatic.c |6 --
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/pcmcia
Do not release any iomem resources already in use.
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/rsrc_nonstatic.c |7 ---
1 files changed, 0 insertions(+), 7 deletions(-)
diff --git a/drivers/pcmcia/rsrc_nonstatic.c b/drivers/pcmcia/rsrc_nonstatic.c
index
In runtime_resume(), do not throw away the return value of
pcmcia_dev_resume(), for we can use it (at least) in
pcmcia_store_pm_state(). This also fixes the pointless assignment
previosly seen there, as noted by Dan Carpenter.
CC: Dan Carpenter
Tested-by: Wolfram Sang
Signed-off-by: Dominik
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
Documentation/pcmcia/locking.txt |5 +++--
drivers/pcmcia/cs.c |7 ++-
drivers/pcmcia/ds.c |6 +-
drivers/pcmcia/pcmcia_ioctl.c|4 +---
drivers/pcmcia/rsrc_mgr.c|2
: Olof Johansson
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/Kconfig |1 -
drivers/pcmcia/m8xx_pcmcia.c |2 +-
include/pcmcia/ss.h |2 ++
3 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/pcmcia/Kconfig b/drivers/pcmcia/Kconfig
index 7e9fd38
Specifically,
struct list_headcis_cache;
size_t fake_cis_len;
u8 *fake_cis;
are protected.
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cistpl.c | 18
Do not lock the socket driver module on card insert, as
the PCMCIA core can handle a socket module removal, at least
if we add a call to socket_remove() on pccardd()'s shutdown.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cs.c | 13 ++---
drivers/pcmcia/cs_inter
interface doesn't offer a "rescan"
facility which also _removes_ devices no longer to be found behind a
bridge. Therefore, remove and re-add all devices unconditionally.
CC: Jesse Barnes
CC: Linus Torvalds
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/
The requery callback now also handles the addition of a second pseudo
multifunction device. Avoids messing with dev_{g,s}et_drvdata(), and
fixes any workqueue <-> skt_mutex deadlock.
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/ds.c
Acked-by: Andrew Victor
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/at91_cf.c |2 --
1 files changed, 0 insertions(+), 2 deletions(-)
diff --git a/drivers/pcmcia/at91_cf.c b/drivers/pcmcia/at91_cf.c
index e1dcced..5d22807 100644
--- a/drivers/pcmcia/at91_cf.c
+++ b/drivers/pcmcia/at91_cf.
ram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/Kconfig|2 --
drivers/pcmcia/m32r_cfc.c |2 +-
2 files changed, 1 insertions(+), 3 deletions(-)
diff --git a/drivers/pcmcia/Kconfig b/drivers/pcmcia/Kconfig
index 9f3adbd..7e9fd38 100644
--- a/drivers/pcmcia/Kconfig
+++ b/driver
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/pcmcia_resource.c |3 +++
drivers/pcmcia/socket_sysfs.c|2 ++
2 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/drivers/pcmcia/pcmcia_resource.c b/drivers/pcmcia/pcmcia_resource.c
index f365ecb
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cistpl.c | 27 +--
drivers/pcmcia/rsrc_nonstatic.c |5 +
2 files changed, 26 insertions(+), 6 deletions(-)
diff --git a/drivers/pcmcia/cistpl.c b/drivers/pcmcia/cistpl.c
index 17a5da3..602f574 100644
TA, PCMCIA). Change it to 'if PCMCIA!=n'
to remove the upper limit.
[li...@dominikbrodowski.net: propagate change to PCMICA_M8XX]
Reported-by: Randy Dunlap
Signed-off-by: Michal Marek
Acked-by: Randy Dunlap
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/Kconfig |6 +++---
alid. When allocationg mem resources, mem_db_valid is
then preferred to mem_db.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/rsrc_nonstatic.c | 67 ---
1 files changed, 48 insertions(+), 19 deletions(-)
diff --git a/drivers/pcmcia/rsrc_nonstatic.c b/driv
Komuro pointed out correctly that I missed one IRQ_FIRST_SHARED
parameter in smc91c92_cs.c, and that another line could be writter
more beautifully.
CC: net...@vger.kernel.org
CC: Komuro
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/net/pcmcia/smc91c92_cs.c |6
Cleanup pccard_validate_cis() and make it return an error code on
all failures, not merely on some failures.
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cistpl.c | 155 --
1 files changed, 81 insertions(+), 74
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/ds.c | 33 ++---
1 files changed, 30 insertions(+), 3 deletions(-)
diff --git a/drivers/pcmcia/ds.c b/drivers/pcmcia/ds.c
index bcb9ef1..0eb242c 100644
--- a/drivers/pcmcia/ds.c
+++ b
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
Documentation/pcmcia/locking.txt | 25
drivers/pcmcia/ds.c | 38
drivers/pcmcia/pcmcia_resource.c | 122 --
3 files changed, 129 insertions(+), 56 deletions
Reported-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/ds.c | 19 ++-
1 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/drivers/pcmcia/ds.c b/drivers/pcmcia/ds.c
index 9968c0d..93925f5 100644
--- a/drivers/pcmcia/ds.c
+++ b/drivers/pcmcia
ged the return value of platform_get_irq from 0 to -ENXIO on error.
Signed-off-by: Uwe Kleine-König
Cc: David Vrabel
Cc: Greg Kroah-Hartman
Cc: Rafael J. Wysocki
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/bfin_cf_pcmcia.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
d
As this is the socket thread (pccardd) starting up, we do not have
anything to wait for in ds.c. Instead, wait the same amount of time
in pccardd to allow userspace to catch up and - possibly - execute
pcmcia-socket-startup.
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cs.c |3
Do not lock the socket driver module in pcmcia_get_socket(), as
the PCMCIA core can handle a socket module removal: In
pcmcia_unregister_socket(), we explicitely wait for the last
put_device() to succeed.
Tested-by: Wolfram Sang
Signed-off-by: Dominik Brodowski
---
drivers/pcmcia/cs.c |8
401 - 500 of 940 matches
Mail list logo