<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/drivers/block, branch v4.0.3</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v4.0.3</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v4.0.3'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2015-05-13T12:14:28Z</updated>
<entry>
<title>rbd: end I/O the entire obj_request on error</title>
<updated>2015-05-13T12:14:28Z</updated>
<author>
<name>Ilya Dryomov</name>
<email>idryomov@gmail.com</email>
</author>
<published>2015-04-25T12:56:15Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=11748b94d987911b2c6aa9f2a5a2a24dc571fc2f'/>
<id>urn:sha1:11748b94d987911b2c6aa9f2a5a2a24dc571fc2f</id>
<content type='text'>
commit 082a75dad84d79d1c15ea9e50f31cb4bb4fa7fd6 upstream.

When we end I/O struct request with error, we need to pass
obj_request-&gt;length as @nr_bytes so that the entire obj_request worth
of bytes is completed.  Otherwise block layer ends up confused and we
trip on

    rbd_assert(more ^ (which == img_request-&gt;obj_request_count));

in rbd_img_obj_callback() due to more being true no matter what.  We
already do it in most cases but we are missing some, in particular
those where we don't even get a chance to submit any obj_requests, due
to an early -ENOMEM for example.

A number of obj_request-&gt;xferred assignments seem to be redundant but
I haven't touched any of obj_request-&gt;xferred stuff to keep this small
and isolated.

Cc: Alex Elder &lt;elder@linaro.org&gt;
Reported-by: Shawn Edwards &lt;lesser.evil@gmail.com&gt;
Reviewed-by: Sage Weil &lt;sage@redhat.com&gt;
Signed-off-by: Ilya Dryomov &lt;idryomov@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>NVMe: Initialize device list head before starting</title>
<updated>2015-03-23T15:35:12Z</updated>
<author>
<name>Keith Busch</name>
<email>keith.busch@intel.com</email>
</author>
<published>2015-03-23T15:32:37Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=e6e96d73a2aaaa54ed2c0f98693f4bf572712f1c'/>
<id>urn:sha1:e6e96d73a2aaaa54ed2c0f98693f4bf572712f1c</id>
<content type='text'>
Driver recovery requires the device's list node to have been initialized.

Fixes: https://lkml.org/lkml/2015/3/22/262

Reported-by: Steven Noonan &lt;steven@uplinklabs.net&gt;
Signed-off-by: Keith Busch &lt;keith.busch@intel.com&gt;
Cc: Matthew Wilcox &lt;willy@linux.intel.com&gt;
Cc: Jens Axboe &lt;axboe@fb.com&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>Merge tag 'nbd_fixes_20150305' of git://git.pengutronix.de/git/mpa/linux-nbd into for-linus</title>
<updated>2015-03-05T14:46:13Z</updated>
<author>
<name>Jens Axboe</name>
<email>axboe@fb.com</email>
</author>
<published>2015-03-05T14:46:13Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=b8be79b7144527990377cb032feb5220170712b3'/>
<id>urn:sha1:b8be79b7144527990377cb032feb5220170712b3</id>
<content type='text'>
NBD fixes based on v4.0-rc1
</content>
</entry>
<entry>
<title>nbd: fix possible memory leak</title>
<updated>2015-03-05T07:51:03Z</updated>
<author>
<name>Sudip Mukherjee</name>
<email>sudipm.mukherjee@gmail.com</email>
</author>
<published>2015-01-27T12:38:22Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=ff6b8090e26ef7649ef0cc6b42389141ef48b0cf'/>
<id>urn:sha1:ff6b8090e26ef7649ef0cc6b42389141ef48b0cf</id>
<content type='text'>
we have already allocated memory for nbd_dev, but we were not
releasing that memory and just returning the error value.

Signed-off-by: Sudip Mukherjee &lt;sudip@vectorindia.org&gt;
Acked-by: Paul Clements &lt;Paul.Clements@SteelEye.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Markus Pargmann &lt;mpa@pengutronix.de&gt;
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://git.kernel.dk/linux-block</title>
<updated>2015-02-28T18:21:57Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2015-02-28T18:21:57Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=a015d33c98e67e984718ac2a0063a051e30ec548'/>
<id>urn:sha1:a015d33c98e67e984718ac2a0063a051e30ec548</id>
<content type='text'>
Pull block layer fixes from Jens Axboe:
 "Two smaller fixes for this cycle:

   - A fixup from Keith so that NVMe compiles without BLK_INTEGRITY,
     basically just moving the code around appropriately.

   - A fixup for shm, fixing an oops in shmem_mapping() for mapping with
     no inode.  From Sasha"

[ The shmem fix doesn't look block-layer-related, but fixes a bug that
  happened due to the backing_dev_info removal..  - Linus ]

* 'for-linus' of git://git.kernel.dk/linux-block:
  mm: shmem: check for mapping owner before dereferencing
  NVMe: Fix for BLK_DEV_INTEGRITY not set
</content>
</entry>
<entry>
<title>zram: use proper type to update max_used_pages</title>
<updated>2015-02-28T17:57:51Z</updated>
<author>
<name>Joonsoo Kim</name>
<email>js1304@gmail.com</email>
</author>
<published>2015-02-27T23:52:01Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=2ea55a2caee016daee511431217861fb04767b27'/>
<id>urn:sha1:2ea55a2caee016daee511431217861fb04767b27</id>
<content type='text'>
max_used_pages is defined as atomic_long_t so we need to use unsigned
long to keep temporary value for it rather than int which is smaller
than unsigned long in a 64 bit system.

Signed-off-by: Joonsoo Kim &lt;iamjoonsoo.kim@lge.com&gt;
Cc: Minchan Kim &lt;minchan@kernel.org&gt;
Cc: Jerome Marchand &lt;jmarchan@redhat.com&gt;
Cc: Nitin Gupta &lt;ngupta@vflare.org&gt;
Cc: Sergey Senozhatsky &lt;sergey.senozhatsky.work@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>NVMe: Fix for BLK_DEV_INTEGRITY not set</title>
<updated>2015-02-23T17:17:54Z</updated>
<author>
<name>Keith Busch</name>
<email>keith.busch@intel.com</email>
</author>
<published>2015-02-23T16:16:21Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=52b68d7ef8838b4322da3dc35a05e02c63b05a0d'/>
<id>urn:sha1:52b68d7ef8838b4322da3dc35a05e02c63b05a0d</id>
<content type='text'>
Need to define and use appropriate functions for when BLK_DEV_INTEGRITY
is not set.

Reported-by: Fengguang Wu &lt;fengguang.wu@intel.com&gt;
Signed-off-by: Keith Busch &lt;keith.busch@intel.com&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'for-3.20' of git://git.infradead.org/users/kbusch/linux-nvme into for-linus</title>
<updated>2015-02-21T06:12:02Z</updated>
<author>
<name>Jens Axboe</name>
<email>axboe@fb.com</email>
</author>
<published>2015-02-21T06:12:02Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=decf6d79de84e427d409ff74156af2e77ffadd84'/>
<id>urn:sha1:decf6d79de84e427d409ff74156af2e77ffadd84</id>
<content type='text'>
Merge 3.20 NVMe changes from Keith.
</content>
</entry>
<entry>
<title>NVMe: Fix potential corruption on sync commands</title>
<updated>2015-02-19T23:15:38Z</updated>
<author>
<name>Keith Busch</name>
<email>keith.busch@intel.com</email>
</author>
<published>2015-02-19T21:29:48Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=0c0f9b95c8b710b74772edd9693fe7ab5419a75a'/>
<id>urn:sha1:0c0f9b95c8b710b74772edd9693fe7ab5419a75a</id>
<content type='text'>
This makes all sync commands uninterruptible and schedules without timeout
so the controller either has to post a completion or the timeout recovery
fails the command. This fixes potential memory or data corruption from
a command timing out too early or woken by a signal. Previously any DMA
buffers mapped for that command would have been released even though we
don't know what the controller is planning to do with those addresses.

Signed-off-by: Keith Busch &lt;keith.busch@intel.com&gt;
</content>
</entry>
<entry>
<title>NVMe: Remove unused variables</title>
<updated>2015-02-19T23:15:38Z</updated>
<author>
<name>Keith Busch</name>
<email>keith.busch@intel.com</email>
</author>
<published>2015-02-19T21:01:59Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=483285184059b3f5b3a5707977349528abc82441'/>
<id>urn:sha1:483285184059b3f5b3a5707977349528abc82441</id>
<content type='text'>
We don't track queues in a llist, subscribe to hot-cpu notifications,
or internally retry commands. Delete the unused artifacts.

Signed-off-by: Keith Busch &lt;keith.busch@intel.com&gt;
</content>
</entry>
</feed>
