<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/staging, branch v3.4.74</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/staging?h=v3.4.74</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/staging?h=v3.4.74'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2013-12-04T18:50:35Z</updated>
<entry>
<title>media: lirc_zilog: Don't use dynamic static allocation</title>
<updated>2013-12-04T18:50:35Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
<email>m.chehab@samsung.com</email>
</author>
<published>2013-11-02T11:16:47Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ffd4ce123eb153aba8cee4d4f9994f9e80a1fbe9'/>
<id>urn:sha1:ffd4ce123eb153aba8cee4d4f9994f9e80a1fbe9</id>
<content type='text'>
commit ac5b4b6bf0c84c48d7e2e3fce22e35b04282ba76 upstream.

Dynamic static allocation is evil, as Kernel stack is too low, and
ompilation complains about it on some archs:
	drivers/staging/media/lirc/lirc_zilog.c:967:1: warning: 'read' uses dynamic stack allocation [enabled by default]
Instead, let's enforce a limit for the buffer to be 64. That should
be more than enough.

Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Reviewed-by: Hans Verkuil &lt;hans.verkuil@cisco.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>staging: vt6656: [BUG] Fix for TX USB resets from vendors driver.</title>
<updated>2013-12-04T18:50:30Z</updated>
<author>
<name>Malcolm Priestley</name>
<email>tvboxspy@gmail.com</email>
</author>
<published>2013-11-07T21:49:04Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=6aefef7eea073c9b0de5c6e69d50cffd5381b969'/>
<id>urn:sha1:6aefef7eea073c9b0de5c6e69d50cffd5381b969</id>
<content type='text'>
commit 9df682927c2e3a92f43803d6b52095992e3b2ab8 upstream.

This fixes resets on heavy TX data traffic.

Vendor driver
VT6656_Linux_src_v1.21.03_x86_11.04.zip
http://www.viaembedded.com/servlet/downloadSvl?id=1890&amp;download_file_id=14704
This is GPL-licensed code.

original code
BBbVT3184Init
...
//2007-0725, RobertChang add, Enable Squelch detect reset option(SQ_RST_Opt), USB (register4, bit1)
CONTROLnsRequestIn(pDevice,
                                 MESSAGE_TYPE_READ,
                                 (WORD)0x600+4,     // USB's Reg4's bit1
                                 MESSAGE_REQUEST_MEM,
                                 1,
                                 (PBYTE) &amp;byData);
byData = byData|2 ;
CONTROLnsRequestOut(pDevice,
                              MESSAGE_TYPE_WRITE,
                              (WORD)0x600+4,     // USB's Reg4's bit1
                              MESSAGE_REQUEST_MEM,
                              1,
                              (PBYTE) &amp;byData);

return TRUE;//ntStatus;
....

A back port patch is needed for kernels less than 3.10.

Signed-off-by: Malcolm Priestley &lt;tvboxspy@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>Staging: tidspbridge: disable driver</title>
<updated>2013-12-04T18:50:13Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@linuxfoundation.org</email>
</author>
<published>2013-11-27T17:32:49Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e3f8bcd36db9a86b78738224ff37e875cc793782'/>
<id>urn:sha1:e3f8bcd36db9a86b78738224ff37e875cc793782</id>
<content type='text'>
commit 930ba4a374b96560ef9fde2145cdc454a164ddcc upstream.

There seems to be no active maintainer for the driver, and there is an
unfixed security bug, so disable the driver for now.

Hopefully someone steps up to be the maintainer, and works to get this
out of staging, otherwise it will be deleted soon.

Reported-by: Nico Golde &lt;nico@ngolde.de&gt;
Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Cc: Omar Ramirez Luna &lt;omar.ramirez@copitl.com&gt;
Cc: Omar Ramirez Luna &lt;omar.ramirez@ti.com&gt;
Cc: Kanigeri, Hari &lt;h-kanigeri2@ti.com&gt;
Cc: Ameya Palande &lt;ameya.palande@nokia.com&gt;
Cc: Guzman Lugo, Fernando &lt;fernando.lugo@ti.com&gt;
Cc: Hebbar, Shivananda &lt;x0hebbar@ti.com&gt;
Cc: Ramos Falcon, Ernesto &lt;ernesto@ti.com&gt;
Cc: Felipe Contreras &lt;felipe.contreras@gmail.com&gt;
Cc: Anna, Suman &lt;s-anna@ti.com&gt;
Cc: Gupta, Ramesh &lt;grgupta@ti.com&gt;
Cc: Gomez Castellanos, Ivan &lt;ivan.gomez@ti.com&gt;
Cc: Andy Shevchenko &lt;ext-andriy.shevchenko@nokia.com&gt;
Cc: Armando Uribe De Leon &lt;x0095078@ti.com&gt;
Cc: Deepak Chitriki &lt;deepak.chitriki@ti.com&gt;
Cc: Menon, Nishanth &lt;nm@ti.com&gt;
Cc: Phil Carmody &lt;ext-phil.2.carmody@nokia.com&gt;
Cc: Ohad Ben-Cohen &lt;ohad@wizery.com&gt;
Cc: stable &lt;stable@vger.kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>Staging: bcm: info leak in ioctl</title>
<updated>2013-11-13T03:01:49Z</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2013-10-29T20:01:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8c373c185f096a93a70f7ebba792cb16f2a8530e'/>
<id>urn:sha1:8c373c185f096a93a70f7ebba792cb16f2a8530e</id>
<content type='text'>
commit 8d1e72250c847fa96498ec029891de4dc638a5ba upstream.

The DevInfo.u32Reserved[] array isn't initialized so it leaks kernel
information to user space.

Reported-by: Nico Golde &lt;nico@ngolde.de&gt;
Reported-by: Fabian Yamaguchi &lt;fabs@goesec.de&gt;
Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>staging: ozwpan: prevent overflow in oz_cdev_write()</title>
<updated>2013-11-13T03:01:49Z</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2013-10-29T19:07:47Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8c4ff75c8345b3463a4a76af942ee2d401ccf2e2'/>
<id>urn:sha1:8c4ff75c8345b3463a4a76af942ee2d401ccf2e2</id>
<content type='text'>
commit c2c65cd2e14ada6de44cb527e7f1990bede24e15 upstream.

We need to check "count" so we don't overflow the ei-&gt;data buffer.

Reported-by: Nico Golde &lt;nico@ngolde.de&gt;
Reported-by: Fabian Yamaguchi &lt;fabs@goesec.de&gt;
Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>staging: comedi: ni_65xx: (bug fix) confine insn_bits to one subdevice</title>
<updated>2013-10-13T22:42:49Z</updated>
<author>
<name>Ian Abbott</name>
<email>abbotti@mev.co.uk</email>
</author>
<published>2013-10-10T09:53:46Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9712612a91e92824349ce9fece31dba6d2fbde70'/>
<id>urn:sha1:9712612a91e92824349ce9fece31dba6d2fbde70</id>
<content type='text'>
commit 677a31565692d596ef42ea589b53ba289abf4713 upstream.

The `insn_bits` handler `ni_65xx_dio_insn_bits()` has a `for` loop that
currently writes (optionally) and reads back up to 5 "ports" consisting
of 8 channels each.  It reads up to 32 1-bit channels but can only read
and write a whole port at once - it needs to handle up to 5 ports as the
first channel it reads might not be aligned on a port boundary.  It
breaks out of the loop early if the next port it handles is beyond the
final port on the card.  It also breaks out early on the 5th port in the
loop if the first channel was aligned.  Unfortunately, it doesn't check
that the current port it is dealing with belongs to the comedi subdevice
the `insn_bits` handler is acting on.  That's a bug.

Redo the `for` loop to terminate after the final port belonging to the
subdevice, changing the loop variable in the process to simplify things
a bit.  The `for` loop could now try and handle more than 5 ports if the
subdevice has more than 40 channels, but the test `if (bitshift &gt;= 32)`
ensures it will break out early after 4 or 5 ports (depending on whether
the first channel is aligned on a port boundary).  (`bitshift` will be
between -7 and 7 inclusive on the first iteration, increasing by 8 for
each subsequent operation.)

Signed-off-by: Ian Abbott &lt;abbotti@mev.co.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>staging: vt6656: [BUG] main_usb.c oops on device_close move flag earlier.</title>
<updated>2013-10-05T14:06:53Z</updated>
<author>
<name>Malcolm Priestley</name>
<email>tvboxspy@gmail.com</email>
</author>
<published>2013-09-22T18:48:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e5b46b4a861e37b802af33e2108f170b142ca86f'/>
<id>urn:sha1:e5b46b4a861e37b802af33e2108f170b142ca86f</id>
<content type='text'>
commit e3eb270fab7734427dd8171a93e4946fe28674bc upstream.

The vt6656 is prone to resetting on the usb bus.

It seems there is a race condition and wpa supplicant is
trying to open the device via iw_handlers before its actually
closed at a stage that the buffers are being removed.

The device is longer considered open when the
buffers are being removed. So move ~DEVICE_FLAGS_OPENED
flag to before freeing the device buffers.

Signed-off-by: Malcolm Priestley &lt;tvboxspy@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>staging: comedi: dt282x: dt282x_ai_insn_read() always fails</title>
<updated>2013-09-27T00:15:31Z</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2013-08-20T08:57:35Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b9ba2a57551649a3386acf0fb54255e5b042bd43'/>
<id>urn:sha1:b9ba2a57551649a3386acf0fb54255e5b042bd43</id>
<content type='text'>
commit 2c4283ca7cdcc6605859c836fc536fcd83a4525f upstream.

In dt282x_ai_insn_read() we call this macro like:
wait_for(!mux_busy(), comedi_error(dev, "timeout\n"); return -ETIME;);
Because the if statement doesn't have curly braces it means we always
return -ETIME and the function never succeeds.

Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Acked-by: Ian Abbott &lt;abbotti@mev.co.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>staging: comedi: COMEDI_CANCEL ioctl should wake up read/write</title>
<updated>2013-08-04T08:25:54Z</updated>
<author>
<name>Ian Abbott</name>
<email>abbotti@mev.co.uk</email>
</author>
<published>2013-07-08T12:36:19Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=cf63fbd49c23ad07983e629febfc3cbcc9382d05'/>
<id>urn:sha1:cf63fbd49c23ad07983e629febfc3cbcc9382d05</id>
<content type='text'>
commit 69acbaac303e8cb948801a9ddd0ac24e86cc4a1b upstream.

Comedi devices can do blocking read() or write() (or poll()) if an
asynchronous command has been set up, blocking for data (for read()) or
buffer space (for write()).  Various events associated with the
asynchronous command will wake up the blocked reader or writer (or
poller).  It is also possible to force the asynchronous command to
terminate by issuing a `COMEDI_CANCEL` ioctl.  That shuts down the
asynchronous command, but does not currently wake up the blocked reader
or writer (or poller).  If the blocked task could be woken up, it would
see that the command is no longer active and return.  The caller of the
`COMEDI_CANCEL` ioctl could attempt to wake up the blocked task by
sending a signal, but that's a nasty workaround.

Change `do_cancel_ioctl()` to wake up the wait queue after it returns
from `do_cancel()`.  `do_cancel()` can propagate an error return value
from the low-level comedi driver's cancel routine, but it always shuts
the command down regardless, so `do_cancel_ioctl()` can wake up he wait
queue regardless of the return value from `do_cancel()`.

Signed-off-by: Ian Abbott &lt;abbotti@mev.co.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>staging: vt6656: use free_netdev instead of kfree</title>
<updated>2013-06-07T19:49:10Z</updated>
<author>
<name>Hema Prathaban</name>
<email>hemaklnce@gmail.com</email>
</author>
<published>2013-05-11T17:09:47Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=622be96e6177c9bd787ad5f163f0e28f9ab6925f'/>
<id>urn:sha1:622be96e6177c9bd787ad5f163f0e28f9ab6925f</id>
<content type='text'>
commit 0a438d5b381e2bdfd5e02d653bf46fcc878356e3 upstream.

use free_netdev() instead of kfree(pDevice-&gt;apdev)

Signed-off-by: Hema Prathaban &lt;hemaklnce@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
</feed>
