* [GIT PULL] IEEE1394 fix
@ 2007-09-20 19:29 Stefan Richter
0 siblings, 0 replies; 4+ messages in thread
From: Stefan Richter @ 2007-09-20 19:29 UTC (permalink / raw)
To: Linus Torvalds; +Cc: Andrew Morton, linux-kernel, linux1394-devel
Linus, please pull from the for-linus branch at
git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6.git for-linus
to receive the following fix, or simply apply from this mail.
drivers/ieee1394/ieee1394_core.c | 2 +-
drivers/ieee1394/ohci1394.c | 4 +---
2 files changed, 2 insertions(+), 4 deletions(-)
commit be7963b7e7f08a149e247c0bf29a4abd174e0929
Author: Stefan Richter <stefanr@s5r6.in-berlin.de>
Date: Thu Sep 20 21:17:33 2007 +0200
ieee1394: ohci1394: fix initialization if built non-modular
Initialization of ohci1394 was broken according to one reporter if the
driver was statically linked, i.e. not built as loadable module. Dmesg:
PCI: Device 0000:02:07.0 not available because of resource collisions
ohci1394: Failed to enable OHCI hardware.
This was reported for a Toshiba Satellite 5100-503. The cause is commit
8df4083c5291b3647e0381d3c69ab2196f5dd3b7 in Linux 2.6.19-rc1 which only
served purposes of early remote debugging via FireWire. This
functionality is better provided by the currently out-of-tree driver
ohci1394_earlyinit. Reversal of the commit was OK'd by Andi Kleen.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
diff --git a/drivers/ieee1394/ieee1394_core.c b/drivers/ieee1394/ieee1394_core.c
index ee45259..98fd985 100644
--- a/drivers/ieee1394/ieee1394_core.c
+++ b/drivers/ieee1394/ieee1394_core.c
@@ -1273,7 +1273,7 @@ static void __exit ieee1394_cleanup(void)
unregister_chrdev_region(IEEE1394_CORE_DEV, 256);
}
-fs_initcall(ieee1394_init); /* same as ohci1394 */
+module_init(ieee1394_init);
module_exit(ieee1394_cleanup);
/* Exported symbols */
diff --git a/drivers/ieee1394/ohci1394.c b/drivers/ieee1394/ohci1394.c
index 5667c81..372c5c1 100644
--- a/drivers/ieee1394/ohci1394.c
+++ b/drivers/ieee1394/ohci1394.c
@@ -3537,7 +3537,5 @@ static int __init ohci1394_init(void)
return pci_register_driver(&ohci1394_pci_driver);
}
-/* Register before most other device drivers.
- * Useful for remote debugging via physical DMA, e.g. using firescope. */
-fs_initcall(ohci1394_init);
+module_init(ohci1394_init);
module_exit(ohci1394_cleanup);
--
Stefan Richter
-=====-=-=== =--= =-=--
http://arcgraph.de/sr/
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [git pull] ieee1394 fix
@ 2008-12-09 18:46 Stefan Richter
0 siblings, 0 replies; 4+ messages in thread
From: Stefan Richter @ 2008-12-09 18:46 UTC (permalink / raw)
To: Linus Torvalds, Andrew Morton; +Cc: linux-kernel, linux1394-devel
Linus, please pull from the for-linus branch at
git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6.git for-linus
to receive the following update:
Nigel Cunningham (1):
ieee1394: node manager causes up to ~3.25s delay in freezing tasks
drivers/ieee1394/nodemgr.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
commit ec9a13cdbfc8cf29502096ca69b65f07184a9b2c
Author: Nigel Cunningham <ncunningham@crca.org.au>
Date: Tue Dec 9 22:40:20 2008 +1100
ieee1394: node manager causes up to ~3.25s delay in freezing tasks
The firewire nodemanager function "nodemgr_host_thread" contains a loop
that calls try_to_freeze near the top of the loop, but then delays for
up to 3.25 seconds (plus time to do work) before getting back to the top
of the loop. When starting a cycle post-boot, this doesn't seem to bite,
but it is causing a noticeable delay at boot time, when freezing
processes prior to starting to read the image.
The following patch adds invocation of try_to_freeze to the subloops
that are used in the body of this function. With these additions, the
time to freeze when starting to resume at boot time is virtually zero.
I'm no expert on firewire, and so don't know that we shouldn't check
the return value and jump back to the top of the loop or such like after
being frozen, but I submit it for your consideration.
Signed-off-by: Nigel Cunningham <nigel@tuxonice.net>
The delay until nodemgr freezes was up to 0.25s (plus time for node
probes) in Linux 2.6.27 and older and up to 3.25s (plus ~) since Linux
2.6.28-rc1, hence much more noticeable.
try_to_freeze() without any jump is correct. The surrounding code in
the respective loops will catch whether another bus reset happens during
the freeze and handle it.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
diff --git a/drivers/ieee1394/nodemgr.c b/drivers/ieee1394/nodemgr.c
index 9e39f73..d333ae2 100644
--- a/drivers/ieee1394/nodemgr.c
+++ b/drivers/ieee1394/nodemgr.c
@@ -1685,6 +1685,7 @@ static int nodemgr_host_thread(void *data)
g = get_hpsb_generation(host);
for (i = 0; i < 4 ; i++) {
msleep_interruptible(63);
+ try_to_freeze();
if (kthread_should_stop())
goto exit;
@@ -1725,6 +1726,7 @@ static int nodemgr_host_thread(void *data)
/* Sleep 3 seconds */
for (i = 3000/200; i; i--) {
msleep_interruptible(200);
+ try_to_freeze();
if (kthread_should_stop())
goto exit;
Thanks,
--
Stefan Richter
-=====-==--- ==-- -=--=
http://arcgraph.de/sr/
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [GIT PULL] ieee1394 updates post 2.6.20
@ 2007-02-08 21:27 Stefan Richter
2007-02-17 13:55 ` [GIT PULL] ieee1394 updates post 2.6.20, another round Stefan Richter
0 siblings, 1 reply; 4+ messages in thread
From: Stefan Richter @ 2007-02-08 21:27 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, linux1394-devel
Linus, please pull from the for-linus branch at
git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6.git for-linus
to receive IEEE 1394 subsystem updates as listed further below.
The upshot:
- another bit to get suspend/resume going (bug 7072)
- fix video1394 on systems with IO bounce buffers, i.e. typically
on EMT64 with more than ca. 3GB RAM
- fix old issues with PCCard ejection while dv1394 is loaded (bug
7121) and LLD unloading while raw1394 is in use (bug 7701)
- fix a regression in 2.6.20-rc1 in nodemgr (bug 7942, -stable will
get their share)
- remove some fat (people who want to have OUIs translated to
company names can use the ls1394 script)
The patches have been written in December and January and have been in
-mm soon after they were submitted --- except for the three fixes in
video1394, raw1394, and nodemgr which are fresh from February but are
duly tested.
Documentation/feature-removal-schedule.txt | 16 -
drivers/ieee1394/.gitignore | 1 -
drivers/ieee1394/Kconfig | 21 -
drivers/ieee1394/Makefile | 10 -
drivers/ieee1394/csr1212.c | 15 +-
drivers/ieee1394/dv1394.c | 46 +-
drivers/ieee1394/hosts.c | 13 +-
drivers/ieee1394/hosts.h | 7 +-
drivers/ieee1394/ieee1394_core.c | 23 +-
drivers/ieee1394/nodemgr.c | 63 +-
drivers/ieee1394/nodemgr.h | 3 -
drivers/ieee1394/ohci1394.c | 17 +-
drivers/ieee1394/oui.db | 7048 ----------------------------
drivers/ieee1394/oui2c.sh | 22 -
drivers/ieee1394/raw1394.c | 48 +-
drivers/ieee1394/sbp2.c | 23 +-
drivers/ieee1394/video1394.c | 8 +
include/linux/pci_ids.h | 1 +
18 files changed, 105 insertions(+), 7280 deletions(-)
delete mode 100644 drivers/ieee1394/.gitignore
delete mode 100644 drivers/ieee1394/oui.db
delete mode 100644 drivers/ieee1394/oui2c.sh
Adrian Bunk (2):
the scheduled IEEE1394_EXPORT_FULL_API removal
the scheduled IEEE1394_OUI_DB removal
Andrea Guzzo (1):
ieee1394: modified csr1212_key_id_type_map to support lisight
David Moore (1):
ieee1394: video1394: DMA fix
Kristian Høgsberg (1):
Add PCI class ID for firewire OHCI controllers.
Stefan Richter (11):
ieee1394: sbp2: use a better wildcard for blacklist
ieee1394: nodemgr: check info_length in ROM header earlier
ieee1394: ohci1394: drop pcmcia-cs compatibility code
ieee1394: restore config ROM when resuming
ieee1394: save one word in struct hpsb_host
ieee1394: sbp2: remove bogus "emulated" host flag
ieee1394: sbp2: lower block queue alignment requirement
ieee1394: dv1394: fix CardBus card ejection
ieee1394: dv1394: tidy up card removal
ieee1394: raw1394: prevent unloading of low-level driver
ieee1394: fix host device registering when nodemgr disabled
--
Stefan Richter
-=====-=-=== --=- -=---
http://arcgraph.de/sr/
^ permalink raw reply [flat|nested] 4+ messages in thread
* [GIT PULL] ieee1394 updates post 2.6.20, another round
2007-02-08 21:27 [GIT PULL] ieee1394 updates post 2.6.20 Stefan Richter
@ 2007-02-17 13:55 ` Stefan Richter
2007-03-23 10:14 ` [GIT PULL] ieee1394 fix Stefan Richter
0 siblings, 1 reply; 4+ messages in thread
From: Stefan Richter @ 2007-02-17 13:55 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, linux1394-devel
Linus, please pull from the for-linus branch at
git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6.git for-linus
or
git://master.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6.git for-linus
to receive IEEE 1394 subsystem updates as listed further below. It's a
small userspace API addition submitted two weeks ago and an unintrusive
one week old bugfix. (The fixed code was and will be untangled further
in linux1394-2.6.git's master branch and in -mm.)
drivers/ieee1394/ieee1394-ioctl.h | 2 +
drivers/ieee1394/ieee1394_core.c | 43 +++++++++++++++++++++++++++++++++++++
drivers/ieee1394/ieee1394_core.h | 3 ++
drivers/ieee1394/nodemgr.c | 3 +-
drivers/ieee1394/raw1394.c | 20 +++++++++++++++++
drivers/ieee1394/raw1394.h | 10 ++++++++
6 files changed, 80 insertions(+), 1 deletions(-)
Pieter Palmers (1):
ieee1394: cycle timer read extension for raw1394
Stefan Richter (1):
ieee1394: fix another deadlock in nodemgr
--
Stefan Richter
-=====-=-=== --=- =---=
http://arcgraph.de/sr/
^ permalink raw reply [flat|nested] 4+ messages in thread
* [GIT PULL] ieee1394 fix
2007-02-17 13:55 ` [GIT PULL] ieee1394 updates post 2.6.20, another round Stefan Richter
@ 2007-03-23 10:14 ` Stefan Richter
0 siblings, 0 replies; 4+ messages in thread
From: Stefan Richter @ 2007-03-23 10:14 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, linux1394-devel
Linus, please pull from the for-linus branch at
git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6.git for-linus
to receive the appended fix for 2.6.21-rc4. Or apply from this mail.
Thanks.
(The eth1394 issue will be revised as soon as ieee1394 core got rid of
class_Device.)
drivers/ieee1394/eth1394.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
Stefan Richter (1):
ieee1394: fix oops on "modprobe -r ohci1394" after network class_device conversion
>From 7a9eeb2fa1b3a3a83670b9ba08dd396beedb88f8 Mon Sep 17 00:00:00 2001
From: Stefan Richter <stefanr@s5r6.in-berlin.de>
Date: Tue, 20 Mar 2007 22:43:22 +0100
Subject: [PATCH] ieee1394: fix oops on "modprobe -r ohci1394" after network class_device conversion
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The networking subsystem has been converted from class_device to device
but ieee1394 hasn't. This results in a 100% reproducible NULL pointer
dereference if the ohci1394 driver module is unloaded while the eth1394
module is still loaded.
http://lkml.org/lkml/2006/11/16/147
http://lkml.org/lkml/2007/3/14/4
This is a regression in 2.6.21-rc1.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Tested-by: Ismail Dönmez <ismail@pardus.org.tr>
---
drivers/ieee1394/eth1394.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/drivers/ieee1394/eth1394.c b/drivers/ieee1394/eth1394.c
index a953135..03e44b3 100644
--- a/drivers/ieee1394/eth1394.c
+++ b/drivers/ieee1394/eth1394.c
@@ -584,7 +584,10 @@ static void ether1394_add_host (struct hpsb_host *host)
}
SET_MODULE_OWNER(dev);
+#if 0
+ /* FIXME - Is this the correct parent device anyway? */
SET_NETDEV_DEV(dev, &host->device);
+#endif
priv = netdev_priv(dev);
--
1.4.4.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [GIT PULL] ieee1394 fix
@ 2007-01-10 20:21 Stefan Richter
0 siblings, 0 replies; 4+ messages in thread
From: Stefan Richter @ 2007-01-10 20:21 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux1394-devel, linux-kernel
Linus, please pull from the for-linus branch at
git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6.git for-linus
to receive a fix for a regression since 2.6.19 inclusive.
(Or apply from this mail.)
drivers/ieee1394/sbp2.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
commit 1a74bc68e4c0534d150e6454b45a70dab831fa32
Author: Stefan Richter <stefanr@s5r6.in-berlin.de>
Date: Wed Jan 10 20:17:15 2007 +0100
ieee1394: sbp2: fix probing of some DVD-ROM/RWs
Since commit 98e238cd42be6c0852da519303cf0182690f8d9f in Linux 2.6.19,
"ieee1394: sbp2: don't prefer MODE SENSE 10", some FireWire DVD-ROMs and
DVD-RWs were mistaken as CD-ROM because sr_mod now sent MODE SENSE 6.
The MMC command set includes only MODE SENSE 10.
http://bugzilla.kernel.org/show_bug.cgi?id=7800
This fix lets sbp2 switch scsi_device.use_10_for_rw on for MMC LUs.
This should rather be done in the command set driver sr_mod, not in the
sbp2 transport driver, and an according patch will follow for a next
Linux release.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
---
diff --git a/drivers/ieee1394/sbp2.c b/drivers/ieee1394/sbp2.c
index 2b5d7ab..4325aac 100644
--- a/drivers/ieee1394/sbp2.c
+++ b/drivers/ieee1394/sbp2.c
@@ -2020,6 +2020,8 @@ static int sbp2scsi_slave_configure(stru
blk_queue_dma_alignment(sdev->request_queue, (512 - 1));
sdev->use_10_for_rw = 1;
+ if (sdev->type == TYPE_ROM)
+ sdev->use_10_for_ms = 1;
if (sdev->type == TYPE_DISK &&
lu->workarounds & SBP2_WORKAROUND_MODE_SENSE_8)
sdev->skip_ms_page_8 = 1;
--
Stefan Richter
-=====-=-=== ---= -=-=-
http://arcgraph.de/sr/
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2008-12-09 18:47 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-09-20 19:29 [GIT PULL] IEEE1394 fix Stefan Richter
-- strict thread matches above, loose matches on Subject: below --
2008-12-09 18:46 [git pull] ieee1394 fix Stefan Richter
2007-02-08 21:27 [GIT PULL] ieee1394 updates post 2.6.20 Stefan Richter
2007-02-17 13:55 ` [GIT PULL] ieee1394 updates post 2.6.20, another round Stefan Richter
2007-03-23 10:14 ` [GIT PULL] ieee1394 fix Stefan Richter
2007-01-10 20:21 Stefan Richter
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.