Hello,
Benjamin Herrenschmidt asked to re-report this issue to linuxppc-dev and
here it is.
[original LKML message http://lkml.org/lkml/2008/12/21/105]
Synopsis
Plain/non-root userspace application which doesn't interface with
any weird out-of/in-tree drivers manages to lock-up a PS3 machine
ru
Andrew Morton writes:
> On Wed, 24 Dec 2008 13:25:49 +0530 Chandru wrote:
>
> > On a ppc machine booting linux-2.6.28-rc9 with crashkernel=2...@32m boot
> > parameter causes the kernel to panic while booting. __Following are the
> > console
> > messages...
>
> - Please put [patch] in the Sub
From: Julia Lawall
SPIN_LOCK_UNLOCKED is deprecated. The following makes the change suggested
in Documentation/spinlocks.txt
The semantic patch that makes this change is as follows:
(http://www.emn.fr/x-info/coccinelle/)
//
@@
declarer name DEFINE_SPINLOCK;
identifier xxx_lock;
@@
- spinlock
From: Julia Lawall
SPIN_LOCK_UNLOCKED is deprecated. The following makes the change suggested
in Documentation/spinlocks.txt
The semantic patch that makes this change is as follows:
(http://www.emn.fr/x-info/coccinelle/)
//
@@
declarer name DEFINE_SPINLOCK;
identifier xxx_lock;
@@
- spinlock
While disabling an endpoint the driver nuking any pending requests,
thus completing them with -ESHUTDOWN status. But the driver doesn't
clear the tx_req, which means that a next TX request (after
ep_enable), might get stalled, since the driver won't queue the new
reqests.
This patch fixes a bug I'
Before freeing an endpoint's muram memory, we should stop all activity
of the endpoint, otherwise the QE UDC controller might do nasty things
with the muram memory that isn't belong to that endpoint anymore.
The qe_ep_reset() effectively flushes the hardware fifos, finishes all
late transaction an
Freescale QE UDC controllers can't report the "port change" states,
so the only way to handle disconnects is to process bus reset
interrupts. The bus reset can take some time, that is, few irqs.
Gadgets may print the disconnection events, and this causes few
repetitive messages in the kernel log.
qe_udc_reg_init() leaves the USB controller enabled before muram memory
initialized. Sometimes the uninitialized muram memory confuses the
controller, and it start sending the busy interrupts.
Fix this by disabling the controller, it will be enabled later by
the gadget driver, at bind time.
Signe
The call chain is this:
qe_udc_irq() <- grabs the udc->lock spinlock
rx_irq()
qe_ep0_rx()
ep0_setup_handle()
setup_received_handle()
ch9getstatus()
qe_ep_queue() <- tries to grab the udc->lock again
It seems unsafe to temporarily drop the lock in the ch9getstatus(),
so to fix that bug the lock-le
In case of probing errors the driver kfrees the udc_controller, but it
doesn't set the pointer to NULL.
When usb_gadget_register_driver is called, it checks for udc_controller
!= NULL, the check passes and the driver accesses nonexistent memory.
Fix this by setting udc_controller to NULL in case o
Hi all,
Just resending some fixes that seem to be lost...
--
Anton Vorontsov
email: cbouatmai...@gmail.com
irc://irc.freenode.net/bd2
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev
On Wed, 24 Dec 2008 23:35:36 -0800 Andrew Morton
wrote:
> - Please put [patch] in the Subject: line of patches
>
> - Please choose a suitable title, as per
> Documentation/SubmittingPatches, section 15.
>
> - Please cc suitable mailing lists and maintainers on bug reports and
> on patches.
12 matches
Mail list logo