<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/fs/exofs, branch v3.0.75</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/fs/exofs?h=v3.0.75</id>
<link rel='self' href='https://git.amat.us/linux/atom/fs/exofs?h=v3.0.75'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2011-07-18T03:20:29Z</updated>
<entry>
<title>fix exofs -&gt;get_parent()</title>
<updated>2011-07-18T03:20:29Z</updated>
<author>
<name>Al Viro</name>
<email>viro@zeniv.linux.org.uk</email>
</author>
<published>2011-07-09T00:56:55Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a803b8067e317832d6a251c5b0486e36a4f81922'/>
<id>urn:sha1:a803b8067e317832d6a251c5b0486e36a4f81922</id>
<content type='text'>
NULL is not a possible return value for that method, TYVM...

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&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>Merge branch 'for-2.6.39/core' of git://git.kernel.dk/linux-2.6-block</title>
<updated>2011-03-24T17:16:26Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-03-24T17:16:26Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=6c5103890057b1bb781b26b7aae38d33e4c517d8'/>
<id>urn:sha1:6c5103890057b1bb781b26b7aae38d33e4c517d8</id>
<content type='text'>
* 'for-2.6.39/core' of git://git.kernel.dk/linux-2.6-block: (65 commits)
  Documentation/iostats.txt: bit-size reference etc.
  cfq-iosched: removing unnecessary think time checking
  cfq-iosched: Don't clear queue stats when preempt.
  blk-throttle: Reset group slice when limits are changed
  blk-cgroup: Only give unaccounted_time under debug
  cfq-iosched: Don't set active queue in preempt
  block: fix non-atomic access to genhd inflight structures
  block: attempt to merge with existing requests on plug flush
  block: NULL dereference on error path in __blkdev_get()
  cfq-iosched: Don't update group weights when on service tree
  fs: assign sb-&gt;s_bdi to default_backing_dev_info if the bdi is going away
  block: Require subsystems to explicitly allocate bio_set integrity mempool
  jbd2: finish conversion from WRITE_SYNC_PLUG to WRITE_SYNC and explicit plugging
  jbd: finish conversion from WRITE_SYNC_PLUG to WRITE_SYNC and explicit plugging
  fs: make fsync_buffers_list() plug
  mm: make generic_writepages() use plugging
  blk-cgroup: Add unaccounted time to timeslice_used.
  block: fixup plugging stubs for !CONFIG_BLOCK
  block: remove obsolete comments for blkdev_issue_zeroout.
  blktrace: Use rq-&gt;cmd_flags directly in blk_add_trace_rq.
  ...

Fix up conflicts in fs/{aio.c,super.c}
</content>
</entry>
<entry>
<title>exofs: deprecate the commands pending counter</title>
<updated>2011-03-15T13:02:52Z</updated>
<author>
<name>Boaz Harrosh</name>
<email>bharrosh@panasas.com</email>
</author>
<published>2011-02-07T16:12:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a49fb4c3d035ab516507b31ec3bd49263caee14d'/>
<id>urn:sha1:a49fb4c3d035ab516507b31ec3bd49263caee14d</id>
<content type='text'>
One leftover from the days of IBM's original code, is an SB counter
that counts in-flight asynchronous commands. And a piece of code that
waits for the counter to reach zero at unmount. I guess it might have
been needed then, cause of some reference missing or something.

I'm not removing it yet but am putting a warning message if ever this
counter triggers at unmount. If I'll never see it triggers or reported
I'll remove the counter for good.
(I had this print as a debug output for a long time and never had it
 trigger)

Signed-off-by: Boaz Harrosh &lt;bharrosh@panasas.com&gt;
</content>
</entry>
<entry>
<title>exofs: Write sbi-&gt;s_nextid as part of the Create command</title>
<updated>2011-03-15T13:02:51Z</updated>
<author>
<name>Boaz Harrosh</name>
<email>bharrosh@panasas.com</email>
</author>
<published>2011-02-03T15:53:25Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1cea312ad49d9cb964179a784fedb1fcfe396283'/>
<id>urn:sha1:1cea312ad49d9cb964179a784fedb1fcfe396283</id>
<content type='text'>
Before when creating a new inode, we'd set the sb-&gt;s_dirt flag,
and sometime later the system would write out s_nextid as part
of the sb_info. Also on inode sync we would force the sb sync
as well.

Define the s_nextid as a new partition attribute and set it
every time we create a new object.
At mount we read it from it's new place.

We now never set sb-&gt;s_dirt anywhere in exofs. write_super
is actually never called. The call to exofs_write_super from
exofs_put_super is also removed because the VFS always calls
-&gt;sync_fs before calling -&gt;put_super twice.

To stay backward-and-forward compatible we also write the old
s_nextid in the super_block object at unmount, and support zero
length attribute on mount.

This also fixes a BUG where in layouts when group_width was not
a divisor of EXOFS_SUPER_ID (0x10000) the s_nextid was not read
from the device it was written to. Because of the sliding window
layout trick, and because the read was always done from the 0
device but the write was done via the raid engine that might slide
the device view. Now we read and write through the raid engine.

Signed-off-by: Boaz Harrosh &lt;bharrosh@panasas.com&gt;
</content>
</entry>
<entry>
<title>exofs: Add option to mount by osdname</title>
<updated>2011-03-15T13:02:51Z</updated>
<author>
<name>Boaz Harrosh</name>
<email>bharrosh@panasas.com</email>
</author>
<published>2011-01-31T12:32:14Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9ed96484311b89360b80a4181d856cbdb21630fd'/>
<id>urn:sha1:9ed96484311b89360b80a4181d856cbdb21630fd</id>
<content type='text'>
If /dev/osd* devices are shuffled because more devices
where added, and/or login order has changed. It is hard to
mount the FS you want.

Add an option to mount by osdname. osdname is any osd-device's
osdname as specified to the mkfs.exofs command when formatting
the osd-devices.
The new mount format is:
	OPT="osdname=$UUID0,pid=$PID,_netdev"
	mount -t exofs -o $OPT $DEV_OSD0 $MOUNTDIR

if "osdname=" is specified in options above $DEV_OSD0 is
ignored and can be empty.

Also while at it: Removed some old unused Opt_* enums.

Signed-off-by: Boaz Harrosh &lt;bharrosh@panasas.com&gt;
</content>
</entry>
<entry>
<title>exofs: Override read-ahead to align on stripe_size</title>
<updated>2011-03-15T13:02:50Z</updated>
<author>
<name>bharrosh@panasas.com</name>
<email>bharrosh@panasas.com</email>
</author>
<published>2010-10-07T18:28:18Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=66cd6cad4919f980dd21307d0150ff251762a264'/>
<id>urn:sha1:66cd6cad4919f980dd21307d0150ff251762a264</id>
<content type='text'>
* Set all inode-&gt;i_mapping-&gt;backing_dev_info to point to
  the per super-block sb-&gt;s_bdi.

* Calculating a read_ahead that is:
  - preferable 2 stripes long
    (Future patch will add a mount option to override this)
  - Minimum 128K aligned up to stripe-size
  - Caped to maximum-IO-sizes round down to stripe_size.
    (Max sizes are governed by max bio-size that fits in a page
     times number-of-devices)

CC: Marc Dionne &lt;marc.c.dionne@gmail.com&gt;
Signed-off-by: Boaz Harrosh &lt;bharrosh@panasas.com&gt;
</content>
</entry>
<entry>
<title>exofs: simple fsync race fix</title>
<updated>2011-03-15T13:02:50Z</updated>
<author>
<name>Nick Piggin</name>
<email>npiggin@kernel.dk</email>
</author>
<published>2010-11-25T10:47:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=97178b7b6c84bd14660b89474d27931a1ea65c66'/>
<id>urn:sha1:97178b7b6c84bd14660b89474d27931a1ea65c66</id>
<content type='text'>
It is incorrect to test inode dirty bits without participating in the inode
writeback protocol. Inode writeback sets I_SYNC and clears I_DIRTY_?, then
writes out the particular bits, then clears I_SYNC when it is done. BTW. it
may not completely write all pages out, so I_DIRTY_PAGES would get set
again.

This is a standard pattern used throughout the kernel's writeback caches
(I_SYNC ~= I_WRITEBACK, if that makes it clearer).

And so it is not possible to determine an inode's dirty status just by
checking I_DIRTY bits. Especially not for the purpose of data integrity
syncs.

Missing the check for these bits means that fsync can complete while
writeback to the inode is underway. Inode writeback functions get this
right, so call into them rather than try to shortcut things by testing
dirty state improperly.

Signed-off-by: Nick Piggin &lt;npiggin@kernel.dk&gt;
Signed-off-by: Boaz Harrosh &lt;bharrosh@panasas.com&gt;
</content>
</entry>
<entry>
<title>exofs: Optimize read_4_write</title>
<updated>2011-03-15T13:02:49Z</updated>
<author>
<name>Boaz Harrosh</name>
<email>bharrosh@panasas.com</email>
</author>
<published>2010-11-22T16:02:45Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a8f1418f9e9bd4c487a7b703ff26c5dd5ceb2bf3'/>
<id>urn:sha1:a8f1418f9e9bd4c487a7b703ff26c5dd5ceb2bf3</id>
<content type='text'>
Don't attempt a read passed i_size, just zero the page and be
done with it.

Signed-off-by: Boaz Harrosh &lt;bharrosh@panasas.com&gt;
</content>
</entry>
<entry>
<title>exofs: Trivial: fix some indentation and debug prints</title>
<updated>2011-03-15T13:00:27Z</updated>
<author>
<name>Boaz Harrosh</name>
<email>bharrosh@panasas.com</email>
</author>
<published>2010-10-26T15:52:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0a935519cca83f26dc15e7577fa6c2b39606a4ac'/>
<id>urn:sha1:0a935519cca83f26dc15e7577fa6c2b39606a4ac</id>
<content type='text'>
I stumbled on some of these prints in log files so, might
just submit the fixes.

* All i_ino prints in exofs should be hex
* All OSD_ERR prints should end with a "\n"

Signed-off-by: Boaz Harrosh &lt;bharrosh@panasas.com&gt;
</content>
</entry>
</feed>
