<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/fs/bio.c, branch linux-2.6.28.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.28.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.28.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2008-10-09T06:57:05Z</updated>
<entry>
<title>block: mark bio_split_pool static</title>
<updated>2008-10-09T06:57:05Z</updated>
<author>
<name>Denis ChengRq</name>
</author>
<published>2008-10-09T06:57:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6feef531f55cf4a20fd9eb39f5352e5745203603'/>
<id>urn:sha1:6feef531f55cf4a20fd9eb39f5352e5745203603</id>
<content type='text'>
Since all bio_split calls refer the same single bio_split_pool, the bio_split
function can use bio_split_pool directly instead of the mempool_t parameter;

then the mempool_t parameter can be removed from bio_split param list, and
bio_split_pool is only referred in fs/bio.c file, can be marked static.

Signed-off-by: Denis ChengRq &lt;crquan@gmail.com&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>block: Find bio sector offset given idx and offset</title>
<updated>2008-10-09T06:56:22Z</updated>
<author>
<name>Martin K. Petersen</name>
</author>
<published>2008-10-02T02:42:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ad3316bf4eeb53c89164f759767f911072b56203'/>
<id>urn:sha1:ad3316bf4eeb53c89164f759767f911072b56203</id>
<content type='text'>
Helper function to find the sector offset in a bio given bvec index
and page offset.

Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>block: add bio_kmalloc()</title>
<updated>2008-10-09T06:56:17Z</updated>
<author>
<name>Jens Axboe</name>
</author>
<published>2008-09-11T11:17:37Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0a0d96b03a1f3bfd6bc3ea08008699e8e59fccd9'/>
<id>urn:sha1:0a0d96b03a1f3bfd6bc3ea08008699e8e59fccd9</id>
<content type='text'>
Not all callers need (or want!) the mempool backing guarentee, it
essentially means that you can only use bio_alloc() for short allocations
and not for preallocating some bio's at setup or init time.

So add bio_kmalloc() which does the same thing as bio_alloc(), except
it just uses kmalloc() as the backing instead of the bio mempools.

Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>block: make blk_rq_map_user take a NULL user-space buffer</title>
<updated>2008-10-09T06:56:11Z</updated>
<author>
<name>FUJITA Tomonori</name>
</author>
<published>2008-09-02T07:20:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=818827669d85b84241696ffef2de485db46b0b5e'/>
<id>urn:sha1:818827669d85b84241696ffef2de485db46b0b5e</id>
<content type='text'>
This patch changes blk_rq_map_user to accept a NULL user-space buffer
with a READ command if rq_map_data is not NULL. Thus a caller can pass
page frames to lk_rq_map_user to just set up a request and bios with
page frames propely. bio_uncopy_user (called via blk_rq_unmap_user)
doesn't copy data to user space with such request.

Signed-off-by: FUJITA Tomonori &lt;fujita.tomonori@lab.ntt.co.jp&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>bio: convert bio_copy_kern to use bio_copy_user</title>
<updated>2008-10-09T06:56:10Z</updated>
<author>
<name>FUJITA Tomonori</name>
</author>
<published>2008-08-28T06:05:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4d8ab62e087d9300883b82c2662e73e6eef803a3'/>
<id>urn:sha1:4d8ab62e087d9300883b82c2662e73e6eef803a3</id>
<content type='text'>
bio_copy_kern and bio_copy_user are very similar. This converts
bio_copy_kern to use bio_copy_user.

Signed-off-by: FUJITA Tomonori &lt;fujita.tomonori@lab.ntt.co.jp&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>block: introduce struct rq_map_data to use reserved pages</title>
<updated>2008-10-09T06:56:10Z</updated>
<author>
<name>FUJITA Tomonori</name>
</author>
<published>2008-08-28T07:17:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=152e283fdfea0cd11e297d982378b55937842dde'/>
<id>urn:sha1:152e283fdfea0cd11e297d982378b55937842dde</id>
<content type='text'>
This patch introduces struct rq_map_data to enable bio_copy_use_iov()
use reserved pages.

Currently, bio_copy_user_iov allocates bounce pages but
drivers/scsi/sg.c wants to allocate pages by itself and use
them. struct rq_map_data can be used to pass allocated pages to
bio_copy_user_iov.

The current users of bio_copy_user_iov simply passes NULL (they don't
want to use pre-allocated pages).

Signed-off-by: FUJITA Tomonori &lt;fujita.tomonori@lab.ntt.co.jp&gt;
Cc: Jens Axboe &lt;jens.axboe@oracle.com&gt;
Cc: Douglas Gilbert &lt;dougg@torque.net&gt;
Cc: Mike Christie &lt;michaelc@cs.wisc.edu&gt;
Cc: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>block: add gfp_mask argument to blk_rq_map_user and blk_rq_map_user_iov</title>
<updated>2008-10-09T06:56:10Z</updated>
<author>
<name>FUJITA Tomonori</name>
</author>
<published>2008-08-28T07:17:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a3bce90edd8f6cafe3f63b1a943800792e830178'/>
<id>urn:sha1:a3bce90edd8f6cafe3f63b1a943800792e830178</id>
<content type='text'>
Currently, blk_rq_map_user and blk_rq_map_user_iov always do
GFP_KERNEL allocation.

This adds gfp_mask argument to blk_rq_map_user and blk_rq_map_user_iov
so sg can use it (sg always does GFP_ATOMIC allocation).

Signed-off-by: FUJITA Tomonori &lt;fujita.tomonori@lab.ntt.co.jp&gt;
Signed-off-by: Douglas Gilbert &lt;dougg@torque.net&gt;
Cc: Mike Christie &lt;michaelc@cs.wisc.edu&gt;
Cc: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>block: add support for IO CPU affinity</title>
<updated>2008-10-09T06:56:09Z</updated>
<author>
<name>Jens Axboe</name>
</author>
<published>2008-09-13T18:26:01Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c7c22e4d5c1fdebfac4dba76de7d0338c2b0d832'/>
<id>urn:sha1:c7c22e4d5c1fdebfac4dba76de7d0338c2b0d832</id>
<content type='text'>
This patch adds support for controlling the IO completion CPU of
either all requests on a queue, or on a per-request basis. We export
a sysfs variable (rq_affinity) which, if set, migrates completions
of requests to the CPU that originally submitted it. A bio helper
(bio_set_completion_cpu()) is also added, so that queuers can ask
for completion on that specific CPU.

In testing, this has been show to cut the system time by as much
as 20-40% on synthetic workloads where CPU affinity is desired.

This requires a little help from the architecture, so it'll only
work as designed for archs that are using the new generic smp
helper infrastructure.

Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>drop vmerge accounting</title>
<updated>2008-10-09T06:56:03Z</updated>
<author>
<name>Mikulas Patocka</name>
</author>
<published>2008-08-15T08:20:02Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5df97b91b5d7ed426034fcc84cb6e7cf682b8838'/>
<id>urn:sha1:5df97b91b5d7ed426034fcc84cb6e7cf682b8838</id>
<content type='text'>
Remove hw_segments field from struct bio and struct request. Without virtual
merge accounting they have no purpose.

Signed-off-by: Mikulas Patocka &lt;mpatocka@redhat.com&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>block: drop virtual merging accounting</title>
<updated>2008-10-09T06:56:03Z</updated>
<author>
<name>Mikulas Patocka</name>
</author>
<published>2008-08-15T08:15:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b8b3e16cfe6435d961f6aaebcfd52a1ff2a988c5'/>
<id>urn:sha1:b8b3e16cfe6435d961f6aaebcfd52a1ff2a988c5</id>
<content type='text'>
Remove virtual merge accounting.

Signed-off-by: Mikulas Patocka &lt;mpatocka@redhat.com&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
</feed>
