<feed xmlns='http://www.w3.org/2005/Atom'>
<title>blackbird-op-linux/drivers/block/nbd.c, branch v4.5</title>
<subtitle>Blackbird™ Linux sources for OpenPOWER</subtitle>
<id>https://git.raptorcs.com/git/blackbird-op-linux/atom?h=v4.5</id>
<link rel='self' href='https://git.raptorcs.com/git/blackbird-op-linux/atom?h=v4.5'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/blackbird-op-linux/'/>
<updated>2016-01-09T02:20:32+00:00</updated>
<entry>
<title>nbd: use -&gt;compat_ioctl()</title>
<updated>2016-01-09T02:20:32+00:00</updated>
<author>
<name>Al Viro</name>
<email>viro@zeniv.linux.org.uk</email>
</author>
<published>2016-01-07T15:04:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/blackbird-op-linux/commit/?id=263a3df18fa2c078ab3e8b14fece6cfa6053e86a'/>
<id>urn:sha1:263a3df18fa2c078ab3e8b14fece6cfa6053e86a</id>
<content type='text'>
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>signal: turn dequeue_signal_lock() into kernel_dequeue_signal()</title>
<updated>2015-11-07T01:50:42+00:00</updated>
<author>
<name>Oleg Nesterov</name>
<email>oleg@redhat.com</email>
</author>
<published>2015-11-07T00:32:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/blackbird-op-linux/commit/?id=be0e6f290f78b84a3b21b8c8c46819c4514fe632'/>
<id>urn:sha1:be0e6f290f78b84a3b21b8c8c46819c4514fe632</id>
<content type='text'>
1. Rename dequeue_signal_lock() to kernel_dequeue_signal(). This
   matches another "for kthreads only" kernel_sigaction() helper.

2. Remove the "tsk" and "mask" arguments, they are always current
   and current-&gt;blocked. And it is simply wrong if tsk != current.

3. We could also remove the 3rd "siginfo_t *info" arg but it looks
   potentially useful. However we can simplify the callers if we
   change kernel_dequeue_signal() to accept info =&gt; NULL.

4. Remove _irqsave, it is never called from atomic context.

Signed-off-by: Oleg Nesterov &lt;oleg@redhat.com&gt;
Reviewed-by: Tejun Heo &lt;tj@kernel.org&gt;
Cc: David Woodhouse &lt;dwmw2@infradead.org&gt;
Cc: Felipe Balbi &lt;balbi@ti.com&gt;
Cc: Markus Pargmann &lt;mpa@pengutronix.de&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>nbd: Add locking for tasks</title>
<updated>2015-10-08T20:21:24+00:00</updated>
<author>
<name>Markus Pargmann</name>
<email>mpa@pengutronix.de</email>
</author>
<published>2015-10-06T18:03:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/blackbird-op-linux/commit/?id=dcc909d90ccdbb73226397ff6d298f7af35b0e11'/>
<id>urn:sha1:dcc909d90ccdbb73226397ff6d298f7af35b0e11</id>
<content type='text'>
The timeout handling introduced in
	7e2893a16d3e (nbd: Fix timeout detection)
introduces a race condition which may lead to killing of tasks that are
not in nbd context anymore. This was not observed or reproducable yet.

This patch adds locking to critical use of task_recv and task_send to
avoid killing tasks that already left the NBD thread functions. This
lock is only acquired if a timeout occures or the nbd device
starts/stops.

Reported-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Signed-off-by: Markus Pargmann &lt;mpa@pengutronix.de&gt;
Reviewed-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Fixes: 7e2893a16d3e ("nbd: Fix timeout detection")
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>nbd: flags is a u32 variable</title>
<updated>2015-08-17T14:23:01+00:00</updated>
<author>
<name>Markus Pargmann</name>
<email>mpa@pengutronix.de</email>
</author>
<published>2015-08-17T06:20:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/blackbird-op-linux/commit/?id=22d109c1bb312dbf321f3d0ab1b0ed94f1a7e304'/>
<id>urn:sha1:22d109c1bb312dbf321f3d0ab1b0ed94f1a7e304</id>
<content type='text'>
The flags variable is used as u32 variable. This patch changes the type
to be u32.

Signed-off-by: Markus Pargmann &lt;mpa@pengutronix.de&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>nbd: Rename functions for clearness of recv/send path</title>
<updated>2015-08-17T14:22:59+00:00</updated>
<author>
<name>Markus Pargmann</name>
<email>mpa@pengutronix.de</email>
</author>
<published>2015-08-17T06:20:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/blackbird-op-linux/commit/?id=cad73b2703cff68b140d68221eeecd5a30322b44'/>
<id>urn:sha1:cad73b2703cff68b140d68221eeecd5a30322b44</id>
<content type='text'>
This patch renames functions so that it is clear what the function does.
Otherwise it is not directly understandable what for example 'do_it' means.

Signed-off-by: Markus Pargmann &lt;mpa@pengutronix.de&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>nbd: Change 'disconnect' to be boolean</title>
<updated>2015-08-17T14:22:58+00:00</updated>
<author>
<name>Markus Pargmann</name>
<email>mpa@pengutronix.de</email>
</author>
<published>2015-08-17T06:20:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/blackbird-op-linux/commit/?id=696697cb50e4b57d4163d59a496ad9e52f6bff8a'/>
<id>urn:sha1:696697cb50e4b57d4163d59a496ad9e52f6bff8a</id>
<content type='text'>
Signed-off-by: Markus Pargmann &lt;mpa@pengutronix.de&gt;
Acked-by: Pavel Machek  &lt;pavel@ucw.cz&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>nbd: Add debugfs entries</title>
<updated>2015-08-17T14:22:56+00:00</updated>
<author>
<name>Markus Pargmann</name>
<email>mpa@pengutronix.de</email>
</author>
<published>2015-08-17T06:20:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/blackbird-op-linux/commit/?id=30d53d9c11b6c2f71253a2be582969d7e6fa7f10'/>
<id>urn:sha1:30d53d9c11b6c2f71253a2be582969d7e6fa7f10</id>
<content type='text'>
Add some debugfs files that help to understand the internal state of
NBD. This exports the different sizes, flags, tasks and so on.

Signed-off-by: Markus Pargmann &lt;mpa@pengutronix.de&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>nbd: Remove variable 'pid'</title>
<updated>2015-08-17T14:22:55+00:00</updated>
<author>
<name>Markus Pargmann</name>
<email>mpa@pengutronix.de</email>
</author>
<published>2015-08-17T06:20:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/blackbird-op-linux/commit/?id=6521d39a64b3f9c3acb0fd25a34cfaf9a40e548e'/>
<id>urn:sha1:6521d39a64b3f9c3acb0fd25a34cfaf9a40e548e</id>
<content type='text'>
This patch uses nbd-&gt;task_recv to determine the value of the previously
used variable 'pid' for sysfs.

Signed-off-by: Markus Pargmann &lt;mpa@pengutronix.de&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>nbd: Move clear queue debug message</title>
<updated>2015-08-17T14:22:53+00:00</updated>
<author>
<name>Markus Pargmann</name>
<email>mpa@pengutronix.de</email>
</author>
<published>2015-08-17T06:20:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/blackbird-op-linux/commit/?id=e78273c80b213806ec7c51176ec81e034fe5cb9f'/>
<id>urn:sha1:e78273c80b213806ec7c51176ec81e034fe5cb9f</id>
<content type='text'>
This message was a warning without a reason. This patch moves it into
nbd_clear_que and transforms it to a debug message.

Signed-off-by: Markus Pargmann &lt;mpa@pengutronix.de&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>nbd: Remove 'harderror' and propagate error properly</title>
<updated>2015-08-17T14:22:52+00:00</updated>
<author>
<name>Markus Pargmann</name>
<email>mpa@pengutronix.de</email>
</author>
<published>2015-08-17T06:20:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/blackbird-op-linux/commit/?id=193918307f4e66eb6a811f30795991c6f7680b34'/>
<id>urn:sha1:193918307f4e66eb6a811f30795991c6f7680b34</id>
<content type='text'>
Instead of a variable 'harderror' we can simply try to correctly
propagate errors to the userspace.

This patch removes the harderror variable and passes errors through
error pointers and nbd_do_it back to the userspace.

Signed-off-by: Markus Pargmann &lt;mpa@pengutronix.de&gt;
Acked-by: Pavel Machek &lt;pavel@ucw.cz&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
</feed>
