<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/block, branch v2.6.32.1</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/block?h=v2.6.32.1</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/block?h=v2.6.32.1'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2009-12-02T00:32:20Z</updated>
<entry>
<title>aoe: prevent cache aliases</title>
<updated>2009-12-02T00:32:20Z</updated>
<author>
<name>Peter Horton</name>
<email>phorton@bitbox.co.uk</email>
</author>
<published>2009-12-01T21:17:46Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0a1f127a0594d62cb23c26732686d0e2b097b264'/>
<id>urn:sha1:0a1f127a0594d62cb23c26732686d0e2b097b264</id>
<content type='text'>
Prevent the AoE block driver from creating cache aliases of page cache
pages on machines with virtually indexed caches.

Building kernels on an AT91SAM9G20 board without this patch fails with
segmentation faults after a couple of passes.

Signed-off-by: Peter Horton &lt;zero@colonel-panic.org&gt;
Cc: "Ed L. Cashin" &lt;ecashin@coraid.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>cciss: make device attrs static</title>
<updated>2009-11-13T07:47:53Z</updated>
<author>
<name>Alex Chiang</name>
<email>achiang@hp.com</email>
</author>
<published>2009-11-13T07:47:53Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=69ac74822277fa999a3f469d8362e93262deb3f4'/>
<id>urn:sha1:69ac74822277fa999a3f469d8362e93262deb3f4</id>
<content type='text'>
No need to export those device attributes.

In fact, without this patch, we can trip over a build error if cciss
is a built-in and another driver also declares and exports attributes
with the same name.

You'll see errors like:

	drivers/scsi/built-in.o: multiple definition of `dev_attr_lunid'
	drivers/block/built-in.o: first defined here

Cc: Stephen M. Cameron &lt;scameron@beardog.cce.hp.com&gt;
Signed-off-by: Alex Chiang &lt;achiang@hp.com&gt;
Cc: &lt;mike.miller@hp.com&gt;
Cc: Jens Axboe &lt;jens.axboe@oracle.com&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>loop: fix NULL dereference if mount fails</title>
<updated>2009-10-29T14:39:27Z</updated>
<author>
<name>Alexey Dobriyan</name>
<email>adobriyan@gmail.com</email>
</author>
<published>2009-10-26T23:49:55Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=cf6e693212263d33c5882e4653df89a2fca4c0c4'/>
<id>urn:sha1:cf6e693212263d33c5882e4653df89a2fca4c0c4</id>
<content type='text'>
Commit bb21488482bd36eae6b30b014d93619063773fd4 ("[PATCH] switch loop")
started to pass NULL bdev to ioctl hook.

Steps to reproduce:

	[boot with loop.max_part=1]
	[mount -o loop something so mount fails]

BUG: unable to handle kernel NULL pointer dereference at 00000000000000b8
IP: [&lt;ffffffff811486ee&gt;] blkdev_ioctl+0x2e/0xa30
PGD 0
Oops: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC
last sysfs file: /sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:35/ACPI0003:00/power_supply/ACAD/online
CPU 0
Modules linked in: zfs nvidia(P) [last unloaded: zfs]
Pid: 15177, comm: mount Tainted: P           2.6.32-rc4-zfs #2 Satellite X200
RIP: 0010:[&lt;ffffffff811486ee&gt;]  [&lt;ffffffff811486ee&gt;] blkdev_ioctl+0x2e/0xa30
RSP: 0018:ffff88003b3d5bb8  EFLAGS: 00010286
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: 000000000000125f RSI: 0000000000000000 RDI: 0000000000000000
RBP: ffff88003b3d5ce8 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 00007ffffffff000
R13: 0000000000000000 R14: ffff880071cef280 R15: 00000000000200da
FS:  00007fd77cfe7740(0000) GS:ffff880001600000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
CR2: 00000000000000b8 CR3: 0000000001001000 CR4: 00000000000026f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Process mount (pid: 15177, threadinfo ffff88003b3d4000, task ffff88007572f920)
Stack:
 ffff88003b3d5c38 ffffffff812f95f5 ffff88007eeb6600 0000000000000000
&lt;0&gt; 0000000000000000 ffff88003b3d5c18 ffffffff811547d9 ffff88001bf11ef0
&lt;0&gt; 7fffffffffffffff ffff88001bf11ee8 ffff88001bf11ef0 0000000000000000
Call Trace:
 [&lt;ffffffff812f95f5&gt;] ? schedule_timeout+0x1f5/0x250
 [&lt;ffffffff811547d9&gt;] ? rb_insert_color+0x109/0x140
 [&lt;ffffffff812fb754&gt;] ? _spin_unlock_irq+0x14/0x40
 [&lt;ffffffff812f84c6&gt;] ? wait_for_common+0x66/0x170
 [&lt;ffffffff8105a280&gt;] ? default_wake_function+0x0/0x10
 [&lt;ffffffff810f8258&gt;] ioctl_by_bdev+0x38/0x50
 [&lt;ffffffff811d2481&gt;] loop_clr_fd+0x1e1/0x210
 [&lt;ffffffff811d2522&gt;] lo_release+0x72/0x80
 [&lt;ffffffff810f934c&gt;] __blkdev_put+0x1ac/0x1d0
 [&lt;ffffffff810f937b&gt;] blkdev_put+0xb/0x10
 [&lt;ffffffff810f93b9&gt;] blkdev_close+0x39/0x60
 [&lt;ffffffff810ccef3&gt;] __fput+0xd3/0x230
 [&lt;ffffffff810cd06d&gt;] fput+0x1d/0x30
 [&lt;ffffffff810c9680&gt;] filp_close+0x50/0x80
 [&lt;ffffffff81061f11&gt;] put_files_struct+0x81/0x100
 [&lt;ffffffff81061fde&gt;] exit_files+0x4e/0x60
 [&lt;ffffffff81063ec5&gt;] do_exit+0x6b5/0x730
 [&lt;ffffffff8107b279&gt;] ? up_read+0x9/0x10
 [&lt;ffffffff8104c86e&gt;] ? do_page_fault+0x18e/0x2a0
 [&lt;ffffffff81063f81&gt;] do_group_exit+0x41/0xc0
 [&lt;ffffffff81064012&gt;] sys_exit_group+0x12/0x20
 [&lt;ffffffff81030deb&gt;] system_call_fastpath+0x16/0x1b
Code: f8 48 89 e5 48 81 ec 30 01 00 00 48 89 5d d8 4c 89 6d e8 4c 89 65 e0 4c 89 75 f0 4c 89 7d f8 48 89 bd e8 fe ff ff 49 89 cd 89 f3 &lt;49&gt; 8b 88 b8 00 00 00 81 fa 68 12 00 00 0f 84 57 05 00 00 0f 86
RIP  [&lt;ffffffff811486ee&gt;] blkdev_ioctl+0x2e/0xa30
 RSP &lt;ffff88003b3d5bb8&gt;
CR2: 00000000000000b8
---[ end trace c0b4d3c3118d1427 ]---
Fixing recursive fault but reboot is needed!

Signed-off-by: Alexey Dobriyan &lt;adobriyan@gmail.com&gt;
Cc: Jens Axboe &lt;jens.axboe@oracle.com&gt;
Cc: Al Viro &lt;viro@zeniv.linux.org.uk&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>virtio_blk: Revert serial number support</title>
<updated>2009-10-22T06:09:30Z</updated>
<author>
<name>Rusty Russell</name>
<email>rusty@rustcorp.com.au</email>
</author>
<published>2009-10-22T22:39:28Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3225beaba05d4f06087593f5e903ce867b6e118a'/>
<id>urn:sha1:3225beaba05d4f06087593f5e903ce867b6e118a</id>
<content type='text'>
This reverts "Add serial number support for virtio_blk, V4a".

Turns out that virtio_pci, lguest and s/390 all have an 8 bit limit
on virtio config space, so noone could ever use this.

This is coming back later in a cleaner form.

Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
Cc: john cooper &lt;john.cooper@redhat.com&gt;
Cc: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>virtio: let header files include virtio_ids.h</title>
<updated>2009-10-22T06:09:28Z</updated>
<author>
<name>Christian Borntraeger</name>
<email>borntraeger@de.ibm.com</email>
</author>
<published>2009-09-30T09:17:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e95646c3ec33c8ec0693992da4332a6b32eb7e31'/>
<id>urn:sha1:e95646c3ec33c8ec0693992da4332a6b32eb7e31</id>
<content type='text'>
Rusty,

commit 3ca4f5ca73057a617f9444a91022d7127041970a
    virtio: add virtio IDs file
moved all device IDs into a single file. While the change itself is
a very good one, it can break userspace applications. For example
if a userspace tool wanted to get the ID of virtio_net it used to
include virtio_net.h. This does no longer work, since virtio_net.h
does not include virtio_ids.h.
This patch moves all "#include &lt;linux/virtio_ids.h&gt;" from the C
files into the header files, making the header files compatible with
the old ones.

In addition, this patch exports virtio_ids.h to userspace.

CC: Fernando Luis Vazquez Cao &lt;fernando@oss.ntt.co.jp&gt;
Signed-off-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
</content>
</entry>
<entry>
<title>virtio_blk: revert QUEUE_FLAG_VIRT addition</title>
<updated>2009-10-22T06:09:26Z</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2009-09-04T20:44:42Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f8b12e513b953aebf30f8ff7d2de9be7e024dbbe'/>
<id>urn:sha1:f8b12e513b953aebf30f8ff7d2de9be7e024dbbe</id>
<content type='text'>
It seems like the addition of QUEUE_FLAG_VIRT caueses major performance
regressions for Fedora users:

	https://bugzilla.redhat.com/show_bug.cgi?id=509383
	https://bugzilla.redhat.com/show_bug.cgi?id=505695

while I can't reproduce those extreme regressions myself I think the flag
is wrong.

Rationale:

  QUEUE_FLAG_VIRT expands to QUEUE_FLAG_NONROT which casus the queue
  unplugged immediately.  This is not a good behaviour for at least
  qemu and kvm where we do have significant overhead for every
  I/O operations.  Even with all the latested speeups (native AIO,
  MSI support, zero copy) we can only get native speed for up to 128kb
  I/O requests we already are down to 66% of native performance for 4kb
  requests even on my laptop running the Intel X25-M SSD for which the
  QUEUE_FLAG_NONROT was designed.
  If we ever get virtio-blk overhead low enough that this flag makes
  sense it should only be set based on a feature flag set by the host.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
</content>
</entry>
<entry>
<title>cciss: Add cciss_allow_hpsa module parameter</title>
<updated>2009-10-13T07:18:22Z</updated>
<author>
<name>Stephen M. Cameron</name>
<email>scameron@beardog.cce.hp.com</email>
</author>
<published>2009-10-13T07:18:22Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=2ec24ff1d1875defa742c76c9c7d74dca06b7e1f'/>
<id>urn:sha1:2ec24ff1d1875defa742c76c9c7d74dca06b7e1f</id>
<content type='text'>
Add cciss_allow_hpsa module parameter.  This parameter causes
the cciss driver to ignore any Smart Array devices known to be
supported by the hpsa driver.

Signed-off-by: Stephen M. Cameron &lt;scameron@beardog.cce.hp.com&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>cciss: Fix multiple calls to pci_release_regions</title>
<updated>2009-10-13T07:18:22Z</updated>
<author>
<name>Stephen M. Cameron</name>
<email>scameron@beardog.cce.hp.com</email>
</author>
<published>2009-10-13T07:18:22Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=2cfa948c9ea8681e831743a3bb61157f590fa8d8'/>
<id>urn:sha1:2cfa948c9ea8681e831743a3bb61157f590fa8d8</id>
<content type='text'>
Fix multiple calls to pci_release_regions.  If cciss_pci_init
fails, it already does any necessary call to pci_release_regions,
so this does not need to be done again in cciss_init_one in that
case.

Signed-off-by: Stephen M. Cameron &lt;scameron@beardog.cce.hp.com&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block</title>
<updated>2009-10-04T19:39:14Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2009-10-04T19:39:14Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=58e57fbd1c7e8833314459555e337364fe5521f3'/>
<id>urn:sha1:58e57fbd1c7e8833314459555e337364fe5521f3</id>
<content type='text'>
* 'for-linus' of git://git.kernel.dk/linux-2.6-block: (41 commits)
  Revert "Seperate read and write statistics of in_flight requests"
  cfq-iosched: don't delay async queue if it hasn't dispatched at all
  block: Topology ioctls
  cfq-iosched: use assigned slice sync value, not default
  cfq-iosched: rename 'desktop' sysfs entry to 'low_latency'
  cfq-iosched: implement slower async initiate and queue ramp up
  cfq-iosched: delay async IO dispatch, if sync IO was just done
  cfq-iosched: add a knob for desktop interactiveness
  Add a tracepoint for block request remapping
  block: allow large discard requests
  block: use normal I/O path for discard requests
  swapfile: avoid NULL pointer dereference in swapon when s_bdev is NULL
  fs/bio.c: move EXPORT* macros to line after function
  Add missing blk_trace_remove_sysfs to be in pair with blk_trace_init_sysfs
  cciss: fix build when !PROC_FS
  block: Do not clamp max_hw_sectors for stacking devices
  block: Set max_sectors correctly for stacking devices
  cciss: cciss_host_attr_groups should be const
  cciss: Dynamically allocate the drive_info_struct for each logical drive.
  cciss: Add usage_count attribute to each logical drive in /sys
  ...
</content>
</entry>
<entry>
<title>const: constify remaining file_operations</title>
<updated>2009-10-01T23:11:11Z</updated>
<author>
<name>Alexey Dobriyan</name>
<email>adobriyan@gmail.com</email>
</author>
<published>2009-10-01T22:43:56Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=828c09509b9695271bcbdc53e9fc9a6a737148d2'/>
<id>urn:sha1:828c09509b9695271bcbdc53e9fc9a6a737148d2</id>
<content type='text'>
[akpm@linux-foundation.org: fix KVM]
Signed-off-by: Alexey Dobriyan &lt;adobriyan@gmail.com&gt;
Acked-by: Mike Frysinger &lt;vapier@gentoo.org&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>
</feed>
