<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/pps, branch v3.4.96</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/pps?h=v3.4.96</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/pps?h=v3.4.96'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2014-04-14T13:44:17Z</updated>
<entry>
<title>pps: Fix a use-after free bug when unregistering a source.</title>
<updated>2014-04-14T13:44:17Z</updated>
<author>
<name>George Spelvin</name>
<email>linux@horizon.com</email>
</author>
<published>2013-02-12T07:27:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=cd59fb14918a6b20c1ac8be121fa6397b97b00cb'/>
<id>urn:sha1:cd59fb14918a6b20c1ac8be121fa6397b97b00cb</id>
<content type='text'>
commit d953e0e837e65ecc1ddaa4f9560f7925878a0de6 upstream.

Remove the cdev from the system (with cdev_del) *before* deallocating it
(in pps_device_destruct, called via kobject_put from device_destroy).

Also prevent deallocating a device with open file handles.

A better long-term fix is probably to remove the cdev from the pps_device
entirely, and instead have all devices reference one global cdev.  Then
the deallocation ordering becomes simpler.

But that's more complex and invasive change, so we leave that
for later.

Signed-off-by: George Spelvin &lt;linux@horizon.com&gt;
Acked-by: Rodolfo Giometti &lt;giometti@enneenne.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Cc: Qiang Huang &lt;h.huangqiang@huawei.com&gt;
Cc: Li Zefan &lt;lizefan@huawei.com&gt;
Cc: Jianguo Wu &lt;wujianguo@huawei.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>pps: Use pps_lookup_dev to reduce ldisc coupling</title>
<updated>2014-04-14T13:44:17Z</updated>
<author>
<name>George Spelvin</name>
<email>linux@horizon.com</email>
</author>
<published>2013-02-10T09:41:56Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0965dca06d3659d7cdab7a7e40694affc21be3c9'/>
<id>urn:sha1:0965dca06d3659d7cdab7a7e40694affc21be3c9</id>
<content type='text'>
commit 03a7ffe4e542310838bac70ef85acc17536b6d7c upstream.

Now that N_TTY uses tty-&gt;disc_data for its private data,
'subclass' ldiscs cannot use -&gt;disc_data for their own private data.
(This is a regression is v3.8-rc1)

Use pps_lookup_dev to associate the tty with the pps source instead.

This fixes a crashing regression in 3.8-rc1.

Signed-off-by: George Spelvin &lt;linux@horizon.com&gt;
Acked-by: Rodolfo Giometti &lt;giometti@enneenne.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Cc: Qiang Huang &lt;h.huangqiang@huawei.com&gt;
Cc: Li Zefan &lt;lizefan@huawei.com&gt;
Cc: Jianguo Wu &lt;wujianguo@huawei.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>pps: Add pps_lookup_dev() function</title>
<updated>2014-04-14T13:44:17Z</updated>
<author>
<name>George Spelvin</name>
<email>linux@horizon.com</email>
</author>
<published>2013-02-10T09:08:32Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=71a521898740fc57b062dddd9cff51c9e835cd43'/>
<id>urn:sha1:71a521898740fc57b062dddd9cff51c9e835cd43</id>
<content type='text'>
commit 513b032c98b4b9414aa4e9b4a315cb1bf0380101 upstream.

The PPS serial line discipline wants to attach a PPS device to a tty
without changing the tty code to add a struct pps_device * pointer.

Since the number of PPS devices in a typical system is generally very low
(n=1 is by far the most common), it's practical to search the entire list
of allocated pps devices.  (We capture the timestamp before the lookup,
so the timing isn't affected.)

It is a bit ugly that this function, which is part of the in-kernel
PPS API, has to be in pps.c as opposed to kapi,c, but that's not
something that affects users.

Signed-off-by: George Spelvin &lt;linux@horizon.com&gt;
Acked-by: Rodolfo Giometti &lt;giometti@enneenne.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Cc: Qiang Huang &lt;h.huangqiang@huawei.com&gt;
Cc: Li Zefan &lt;lizefan@huawei.com&gt;
Cc: Jianguo Wu &lt;wujianguo@huawei.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>pps: class_create() returns an ERR_PTR, not NULL</title>
<updated>2012-03-05T23:49:43Z</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2012-03-05T22:59:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=7ad12566dc02ca76e0056af58606b5ce0181460f'/>
<id>urn:sha1:7ad12566dc02ca76e0056af58606b5ce0181460f</id>
<content type='text'>
class_create() never returns NULLs only ERR_PTRs.

Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Cc: Rodolfo Giometti &lt;giometti@enneenne.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>pps gpio client: add missing dependency</title>
<updated>2011-11-02T23:07:02Z</updated>
<author>
<name>Heiko Carstens</name>
<email>heiko.carstens@de.ibm.com</email>
</author>
<published>2011-11-02T20:39:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=79bc57463be2ad5020a53accbf26898e8ac04550'/>
<id>urn:sha1:79bc57463be2ad5020a53accbf26898e8ac04550</id>
<content type='text'>
Add "depends on GENERIC_HARDIRQS" to avoid compile breakage on s390:

drivers/built-in.o: In function `pps_gpio_remove':
linux-next/drivers/pps/clients/pps-gpio.c:189: undefined reference to `free_irq'

Signed-off-by: Heiko Carstens &lt;heiko.carstens@de.ibm.com&gt;
Cc: James Nuss &lt;jamesnuss@nanometrics.ca&gt;
Cc: Rodolfo Giometti &lt;giometti@enneenne.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>pps: new client driver using GPIO</title>
<updated>2011-11-02T23:07:02Z</updated>
<author>
<name>James Nuss</name>
<email>jamesnuss@nanometrics.ca</email>
</author>
<published>2011-11-02T20:39:38Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=161520451dfacd0eb79d501933f47d3fb7464938'/>
<id>urn:sha1:161520451dfacd0eb79d501933f47d3fb7464938</id>
<content type='text'>
This client driver allows you to use a GPIO pin as a source for PPS
signals.  Platform data [1] are used to specify the GPIO pin number,
label, assert event edge type, and whether clear events are captured.

This driver is based on the work by Ricardo Martins who submitted an
initial implementation [2] of a PPS IRQ client driver to the linuxpps
mailing-list on Dec 3 2010.

[1] include/linux/pps-gpio.h
[2] http://ml.enneenne.com/pipermail/linuxpps/2010-December/004155.html

[akpm@linux-foundation.org: remove unneeded cast of void*]
Signed-off-by: James Nuss &lt;jamesnuss@nanometrics.ca&gt;
Cc: Ricardo Martins &lt;rasm@fe.up.pt&gt;
Acked-by: Rodolfo Giometti &lt;giometti@linux.it&gt;
Signed-off-by: Ricardo Martins &lt;rasm@fe.up.pt&gt;
Cc: Alexander Gordeev &lt;lasaine@lvk.cs.msu.su&gt;
Cc: Igor Plyatov &lt;plyatov@gmail.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>pps: default echo function</title>
<updated>2011-11-02T23:07:02Z</updated>
<author>
<name>James Nuss</name>
<email>jamesnuss@nanometrics.ca</email>
</author>
<published>2011-11-02T20:39:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=437c53418616973071fd2d7c87497780944d8fdb'/>
<id>urn:sha1:437c53418616973071fd2d7c87497780944d8fdb</id>
<content type='text'>
A default echo function has been provided so it is no longer an error when
you specify PPS_ECHOASSERT or PPS_ECHOCLEAR without an explicit echo
function.  This allows some code re-use and also makes it easier to write
client drivers since the default echo function does not normally need to
change.

Signed-off-by: James Nuss &lt;jamesnuss@nanometrics.ca&gt;
Reviewed-by: Ben Gardiner &lt;bengardiner@nanometrics.ca&gt;
Acked-by: Rodolfo Giometti &lt;giometti@linux.it&gt;
Cc: Ricardo Martins &lt;rasm@fe.up.pt&gt;
Cc: Alexander Gordeev &lt;lasaine@lvk.cs.msu.su&gt;
Cc: Igor Plyatov &lt;plyatov@gmail.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Fix common misspellings</title>
<updated>2011-03-31T14:26:23Z</updated>
<author>
<name>Lucas De Marchi</name>
<email>lucas.demarchi@profusion.mobi</email>
</author>
<published>2011-03-31T01:57:33Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=25985edcedea6396277003854657b5f3cb31a628'/>
<id>urn:sha1:25985edcedea6396277003854657b5f3cb31a628</id>
<content type='text'>
Fixes generated by 'codespell' and manually reviewed.

Signed-off-by: Lucas De Marchi &lt;lucas.demarchi@profusion.mobi&gt;
</content>
</entry>
<entry>
<title>pps: remove unreachable code</title>
<updated>2011-03-23T00:44:17Z</updated>
<author>
<name>Alexander Gordeev</name>
<email>lasaine@lvk.cs.msu.su</email>
</author>
<published>2011-03-22T23:35:06Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=77d1c8eb8a8e0989f4c46e9a40bbd4185d34974e'/>
<id>urn:sha1:77d1c8eb8a8e0989f4c46e9a40bbd4185d34974e</id>
<content type='text'>
Remove code enabled only when CONFIG_PREEMPT_RT is turned on because it is
not used in the vanilla kernel.

Signed-off-by: Alexander Gordeev &lt;lasaine@lvk.cs.msu.su&gt;
Cc: john stultz &lt;johnstul@us.ibm.com&gt;
Cc: Rodolfo Giometti &lt;giometti@linux.it&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>pps: change to new flag variable</title>
<updated>2011-03-17T13:05:35Z</updated>
<author>
<name>matt mooney</name>
<email>mfm@muteddisk.com</email>
</author>
<published>2011-01-14T14:12:46Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=26a082dc5334ee003167bb9feeee681c150e5b11'/>
<id>urn:sha1:26a082dc5334ee003167bb9feeee681c150e5b11</id>
<content type='text'>
Replace EXTRA_CFLAGS with ccflags-y.

Signed-off-by: matt mooney &lt;mfm@muteddisk.com&gt;
Acked-by: WANG Cong &lt;xiyou.wangcong@gmail.com&gt;
Signed-off-by: Michal Marek &lt;mmarek@suse.cz&gt;
</content>
</entry>
</feed>
