<feed xmlns='http://www.w3.org/2005/Atom'>
<title>BMC/Intel-BMC/linux.git/fs/nfs/internal.h, branch dev</title>
<subtitle>Intel OpenBMC Linux kernel source tree (mirror)</subtitle>
<id>https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev</id>
<link rel='self' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/'/>
<updated>2015-07-28T16:37:44+00:00</updated>
<entry>
<title>Merge tag 'nfs-for-4.2-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs</title>
<updated>2015-07-28T16:37:44+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2015-07-28T16:37:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=d8132e08d25a47e2d5156aa2268cd1cd9b0d6c0d'/>
<id>urn:sha1:d8132e08d25a47e2d5156aa2268cd1cd9b0d6c0d</id>
<content type='text'>
Pull NFS client bugfixes from Trond Myklebust:
 "Highlights include:

  Stable patches:
   - Fix a situation where the client uses the wrong (zero) stateid.
   - Fix a memory leak in nfs_do_recoalesce

  Bugfixes:
   - Plug a memory leak when -&gt;prepare_layoutcommit fails
   - Fix an Oops in the NFSv4 open code
   - Fix a backchannel deadlock
   - Fix a livelock in sunrpc when sendmsg fails due to low memory
     availability
   - Don't revalidate the mapping if both size and change attr are up to
     date
   - Ensure we don't miss a file extension when doing pNFS
   - Several fixes to handle NFSv4.1 sequence operation status bits
     correctly
   - Several pNFS layout return bugfixes"

* tag 'nfs-for-4.2-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (28 commits)
  nfs: Fix an oops caused by using other thread's stack space in ASYNC mode
  nfs: plug memory leak when -&gt;prepare_layoutcommit fails
  SUNRPC: Report TCP errors to the caller
  sunrpc: translate -EAGAIN to -ENOBUFS when socket is writable.
  NFSv4.2: handle NFS-specific llseek errors
  NFS: Don't clear desc-&gt;pg_moreio in nfs_do_recoalesce()
  NFS: Fix a memory leak in nfs_do_recoalesce
  NFS: nfs_mark_for_revalidate should always set NFS_INO_REVAL_PAGECACHE
  NFS: Remove the "NFS_CAP_CHANGE_ATTR" capability
  NFS: Set NFS_INO_REVAL_PAGECACHE if the change attribute is uninitialised
  NFS: Don't revalidate the mapping if both size and change attr are up to date
  NFSv4/pnfs: Ensure we don't miss a file extension
  NFSv4: We must set NFS_OPEN_STATE flag in nfs_resync_open_stateid_locked
  SUNRPC: xprt_complete_bc_request must also decrement the free slot count
  SUNRPC: Fix a backchannel deadlock
  pNFS: Don't throw out valid layout segments
  pNFS: pnfs_roc_drain() fix a race with open
  pNFS: Fix races between return-on-close and layoutreturn.
  pNFS: pnfs_roc_drain should return 'true' when sleeping
  pNFS: Layoutreturn must invalidate all existing layout segments.
  ...
</content>
</entry>
<entry>
<title>nfs: Fix an oops caused by using other thread's stack space in ASYNC mode</title>
<updated>2015-07-28T13:07:03+00:00</updated>
<author>
<name>Kinglong Mee</name>
<email>kinglongmee@gmail.com</email>
</author>
<published>2015-07-27T07:31:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=a49c269111a5b3c1fd2a98f36fa27423b94549f8'/>
<id>urn:sha1:a49c269111a5b3c1fd2a98f36fa27423b94549f8</id>
<content type='text'>
An oops caused by using other thread's stack space in sunrpc ASYNC sending thread.

[ 9839.007187] ------------[ cut here ]------------
[ 9839.007923] kernel BUG at fs/nfs/nfs4xdr.c:910!
[ 9839.008069] invalid opcode: 0000 [#1] SMP
[ 9839.008069] Modules linked in: blocklayoutdriver rpcsec_gss_krb5 nfsv4 dns_resolver nfs fscache snd_hda_codec_generic snd_hda_intel snd_hda_controller snd_hda_codec snd_hwdep snd_seq snd_seq_device snd_pcm joydev iosf_mbi crct10dif_pclmul snd_timer crc32_pclmul crc32c_intel ghash_clmulni_intel snd soundcore ppdev pvpanic parport_pc i2c_piix4 serio_raw virtio_balloon parport acpi_cpufreq nfsd nfs_acl lockd grace auth_rpcgss sunrpc qxl drm_kms_helper virtio_net virtio_console virtio_blk ttm drm virtio_pci virtio_ring virtio ata_generic pata_acpi
[ 9839.008069] CPU: 0 PID: 308 Comm: kworker/0:1H Not tainted 4.0.0-0.rc4.git1.3.fc23.x86_64 #1
[ 9839.008069] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[ 9839.008069] Workqueue: rpciod rpc_async_schedule [sunrpc]
[ 9839.008069] task: ffff8800d8b4d8e0 ti: ffff880036678000 task.ti: ffff880036678000
[ 9839.008069] RIP: 0010:[&lt;ffffffffa0339cc9&gt;]  [&lt;ffffffffa0339cc9&gt;] reserve_space.part.73+0x9/0x10 [nfsv4]
[ 9839.008069] RSP: 0018:ffff88003667ba58  EFLAGS: 00010246
[ 9839.008069] RAX: 0000000000000000 RBX: 000000001fc15e18 RCX: ffff8800c0193800
[ 9839.008069] RDX: ffff8800e4ae3f24 RSI: 000000001fc15e2c RDI: ffff88003667bcd0
[ 9839.008069] RBP: ffff88003667ba58 R08: ffff8800d9173008 R09: 0000000000000003
[ 9839.008069] R10: ffff88003667bcd0 R11: 000000000000000c R12: 0000000000010000
[ 9839.008069] R13: ffff8800d9173350 R14: 0000000000000000 R15: ffff8800c0067b98
[ 9839.008069] FS:  0000000000000000(0000) GS:ffff88011fc00000(0000) knlGS:0000000000000000
[ 9839.008069] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 9839.008069] CR2: 00007f988c9c8bb0 CR3: 00000000d99b6000 CR4: 00000000000407f0
[ 9839.008069] Stack:
[ 9839.008069]  ffff88003667bbc8 ffffffffa03412c5 00000000c6c55680 ffff880000000003
[ 9839.008069]  0000000000000088 00000010c6c55680 0001000000000002 ffffffff816e87e9
[ 9839.008069]  0000000000000000 00000000477290e2 ffff88003667bab8 ffffffff81327ba3
[ 9839.008069] Call Trace:
[ 9839.008069]  [&lt;ffffffffa03412c5&gt;] encode_attrs+0x435/0x530 [nfsv4]
[ 9839.008069]  [&lt;ffffffff816e87e9&gt;] ? inet_sendmsg+0x69/0xb0
[ 9839.008069]  [&lt;ffffffff81327ba3&gt;] ? selinux_socket_sendmsg+0x23/0x30
[ 9839.008069]  [&lt;ffffffff8164c1df&gt;] ? do_sock_sendmsg+0x9f/0xc0
[ 9839.008069]  [&lt;ffffffff8164c278&gt;] ? kernel_sendmsg+0x58/0x70
[ 9839.008069]  [&lt;ffffffffa011acc0&gt;] ? xdr_reserve_space+0x20/0x170 [sunrpc]
[ 9839.008069]  [&lt;ffffffffa011acc0&gt;] ? xdr_reserve_space+0x20/0x170 [sunrpc]
[ 9839.008069]  [&lt;ffffffffa0341b40&gt;] ? nfs4_xdr_enc_open_noattr+0x130/0x130 [nfsv4]
[ 9839.008069]  [&lt;ffffffffa03419a5&gt;] encode_open+0x2d5/0x340 [nfsv4]
[ 9839.008069]  [&lt;ffffffffa0341b40&gt;] ? nfs4_xdr_enc_open_noattr+0x130/0x130 [nfsv4]
[ 9839.008069]  [&lt;ffffffffa011ab89&gt;] ? xdr_encode_opaque+0x19/0x20 [sunrpc]
[ 9839.008069]  [&lt;ffffffffa0339cfb&gt;] ? encode_string+0x2b/0x40 [nfsv4]
[ 9839.008069]  [&lt;ffffffffa0341bf3&gt;] nfs4_xdr_enc_open+0xb3/0x140 [nfsv4]
[ 9839.008069]  [&lt;ffffffffa0110a4c&gt;] rpcauth_wrap_req+0xac/0xf0 [sunrpc]
[ 9839.008069]  [&lt;ffffffffa01017db&gt;] call_transmit+0x18b/0x2d0 [sunrpc]
[ 9839.008069]  [&lt;ffffffffa0101650&gt;] ? call_decode+0x860/0x860 [sunrpc]
[ 9839.008069]  [&lt;ffffffffa0101650&gt;] ? call_decode+0x860/0x860 [sunrpc]
[ 9839.008069]  [&lt;ffffffffa010caa0&gt;] __rpc_execute+0x90/0x460 [sunrpc]
[ 9839.008069]  [&lt;ffffffffa010ce85&gt;] rpc_async_schedule+0x15/0x20 [sunrpc]
[ 9839.008069]  [&lt;ffffffff810b452b&gt;] process_one_work+0x1bb/0x410
[ 9839.008069]  [&lt;ffffffff810b47d3&gt;] worker_thread+0x53/0x470
[ 9839.008069]  [&lt;ffffffff810b4780&gt;] ? process_one_work+0x410/0x410
[ 9839.008069]  [&lt;ffffffff810b4780&gt;] ? process_one_work+0x410/0x410
[ 9839.008069]  [&lt;ffffffff810ba7b8&gt;] kthread+0xd8/0xf0
[ 9839.008069]  [&lt;ffffffff810ba6e0&gt;] ? kthread_worker_fn+0x180/0x180
[ 9839.008069]  [&lt;ffffffff81786418&gt;] ret_from_fork+0x58/0x90
[ 9839.008069]  [&lt;ffffffff810ba6e0&gt;] ? kthread_worker_fn+0x180/0x180
[ 9839.008069] Code: 00 00 48 c7 c7 21 fa 37 a0 e8 94 1c d6 e0 c6 05 d2 17 05 00 01 8b 03 eb d7 66 0f 1f 84 00 00 00 00 00 66 66 66 66 90 55 48 89 e5 &lt;0f&gt; 0b 0f 1f 44 00 00 66 66 66 66 90 55 48 89 e5 41 54 53 89 f3
[ 9839.008069] RIP  [&lt;ffffffffa0339cc9&gt;] reserve_space.part.73+0x9/0x10 [nfsv4]
[ 9839.008069]  RSP &lt;ffff88003667ba58&gt;
[ 9839.071114] ---[ end trace cc14c03adb522e94 ]---

Signed-off-by: Kinglong Mee &lt;kinglongmee@gmail.com&gt;
Signed-off-by: Trond Myklebust &lt;trond.myklebust@primarydata.com&gt;
</content>
</entry>
<entry>
<title>writeback: move backing_dev_info-&gt;bdi_stat[] into bdi_writeback</title>
<updated>2015-06-02T14:33:34+00:00</updated>
<author>
<name>Tejun Heo</name>
<email>tj@kernel.org</email>
</author>
<published>2015-05-22T21:13:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=93f78d882865cb90020d0f80a9523c99cf46924c'/>
<id>urn:sha1:93f78d882865cb90020d0f80a9523c99cf46924c</id>
<content type='text'>
Currently, a bdi (backing_dev_info) embeds single wb (bdi_writeback)
and the role of the separation is unclear.  For cgroup support for
writeback IOs, a bdi will be updated to host multiple wb's where each
wb serves writeback IOs of a different cgroup on the bdi.  To achieve
that, a wb should carry all states necessary for servicing writeback
IOs for a cgroup independently.

This patch moves bdi-&gt;bdi_stat[] into wb.

* enum bdi_stat_item is renamed to wb_stat_item and the prefix of all
  enums is changed from BDI_ to WB_.

* BDI_STAT_BATCH() -&gt; WB_STAT_BATCH()

* [__]{add|inc|dec|sum}_wb_stat(bdi, ...) -&gt; [__]{add|inc}_wb_stat(wb, ...)

* bdi_stat[_error]() -&gt; wb_stat[_error]()

* bdi_writeout_inc() -&gt; wb_writeout_inc()

* stat init is moved to bdi_wb_init() and bdi_wb_exit() is added and
  frees stat.

* As there's still only one bdi_writeback per backing_dev_info, all
  uses of bdi-&gt;stat[] are mechanically replaced with bdi-&gt;wb.stat[]
  introducing no behavior changes.

Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt;
Reviewed-by: Jan Kara &lt;jack@suse.cz&gt;
Cc: Jens Axboe &lt;axboe@kernel.dk&gt;
Cc: Wu Fengguang &lt;fengguang.wu@intel.com&gt;
Cc: Miklos Szeredi &lt;miklos@szeredi.hu&gt;
Cc: Trond Myklebust &lt;trond.myklebust@primarydata.com&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>NFS: Add attribute update barriers to NFS writebacks</title>
<updated>2015-03-02T04:23:06+00:00</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@primarydata.com</email>
</author>
<published>2015-02-26T22:36:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=a08a8cd375db9769588257e7782f6b6b68561b88'/>
<id>urn:sha1:a08a8cd375db9769588257e7782f6b6b68561b88</id>
<content type='text'>
Ensure that other operations that race with our write RPC calls
cannot revert the file size updates that were made on the server.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@primarydata.com&gt;
Tested-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
</content>
</entry>
<entry>
<title>nfs: Provide and use helper functions for marking a page as unstable</title>
<updated>2015-02-13T22:47:26+00:00</updated>
<author>
<name>Tom Haynes</name>
<email>thomas.haynes@primarydata.com</email>
</author>
<published>2015-02-13T21:19:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=d15bc38df607c893c36f4962dca0f57174c6a5c9'/>
<id>urn:sha1:d15bc38df607c893c36f4962dca0f57174c6a5c9</id>
<content type='text'>
Signed-off-by: Tom Haynes &lt;loghyr@primarydata.com&gt;
Signed-off-by: Trond Myklebust &lt;trond.myklebust@primarydata.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'for-3.20/bdi' of git://git.kernel.dk/linux-block</title>
<updated>2015-02-12T21:50:21+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2015-02-12T21:50:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=6bec0035286119eefc32a5b1102127e6a4032cb2'/>
<id>urn:sha1:6bec0035286119eefc32a5b1102127e6a4032cb2</id>
<content type='text'>
Pull backing device changes from Jens Axboe:
 "This contains a cleanup of how the backing device is handled, in
  preparation for a rework of the life time rules.  In this part, the
  most important change is to split the unrelated nommu mmap flags from
  it, but also removing a backing_dev_info pointer from the
  address_space (and inode), and a cleanup of other various minor bits.

  Christoph did all the work here, I just fixed an oops with pages that
  have a swap backing.  Arnd fixed a missing export, and Oleg killed the
  lustre backing_dev_info from staging.  Last patch was from Al,
  unexporting parts that are now no longer needed outside"

* 'for-3.20/bdi' of git://git.kernel.dk/linux-block:
  Make super_blocks and sb_lock static
  mtd: export new mtd_mmap_capabilities
  fs: make inode_to_bdi() handle NULL inode
  staging/lustre/llite: get rid of backing_dev_info
  fs: remove default_backing_dev_info
  fs: don't reassign dirty inodes to default_backing_dev_info
  nfs: don't call bdi_unregister
  ceph: remove call to bdi_unregister
  fs: remove mapping-&gt;backing_dev_info
  fs: export inode_to_bdi and use it in favor of mapping-&gt;backing_dev_info
  nilfs2: set up s_bdi like the generic mount_bdev code
  block_dev: get bdev inode bdi directly from the block device
  block_dev: only write bdev inode on close
  fs: introduce f_op-&gt;mmap_capabilities for nommu mmap support
  fs: kill BDI_CAP_SWAP_BACKED
  fs: deduplicate noop_backing_dev_info
</content>
</entry>
<entry>
<title>NFSv4: Ensure we reference the inode for return-on-close in delegreturn</title>
<updated>2015-02-06T02:31:06+00:00</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@primarydata.com</email>
</author>
<published>2015-02-05T20:13:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=ea7c38fef0b774a5dc16fb0ca5935f0ae8568176'/>
<id>urn:sha1:ea7c38fef0b774a5dc16fb0ca5935f0ae8568176</id>
<content type='text'>
If we have to do a return-on-close in the delegreturn code, then
we must ensure that the inode and super block remain referenced.

Cc: Peng Tao &lt;tao.peng@primarydata.com&gt;
Cc: stable@vger.kernel.org # 3.17.x
Signed-off-by: Trond Myklebust &lt;trond.myklebust@primarydata.com&gt;
Reviewed-by: Peng Tao &lt;tao.peng@primarydata.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'flexfiles'</title>
<updated>2015-02-03T21:01:27+00:00</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@primarydata.com</email>
</author>
<published>2015-02-03T21:01:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=e2c63e091e29786a34ecf42c169e627a3d1d96d7'/>
<id>urn:sha1:e2c63e091e29786a34ecf42c169e627a3d1d96d7</id>
<content type='text'>
* flexfiles: (53 commits)
  pnfs: lookup new lseg at lseg boundary
  nfs41: .init_read and .init_write can be called with valid pg_lseg
  pnfs: Update documentation on the Layout Drivers
  pnfs/flexfiles: Add the FlexFile Layout Driver
  nfs: count DIO good bytes correctly with mirroring
  nfs41: wait for LAYOUTRETURN before retrying LAYOUTGET
  nfs: add a helper to set NFS_ODIRECT_RESCHED_WRITES to direct writes
  nfs41: add NFS_LAYOUT_RETRY_LAYOUTGET to layout header flags
  nfs/flexfiles: send layoutreturn before freeing lseg
  nfs41: introduce NFS_LAYOUT_RETURN_BEFORE_CLOSE
  nfs41: allow async version layoutreturn
  nfs41: add range to layoutreturn args
  pnfs: allow LD to ask to resend read through pnfs
  nfs: add nfs_pgio_current_mirror helper
  nfs: only reset desc-&gt;pg_mirror_idx when mirroring is supported
  nfs41: add a debug warning if we destroy an unempty layout
  pnfs: fail comparison when bucket verifier not set
  nfs: mirroring support for direct io
  nfs: add mirroring support to pgio layer
  pnfs: pass ds_commit_idx through the commit path
  ...

Conflicts:
	fs/nfs/pnfs.c
	fs/nfs/pnfs.h
</content>
</entry>
<entry>
<title>nfs: add a helper to set NFS_ODIRECT_RESCHED_WRITES to direct writes</title>
<updated>2015-02-03T19:06:51+00:00</updated>
<author>
<name>Peng Tao</name>
<email>tao.peng@primarydata.com</email>
</author>
<published>2014-12-01T00:22:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=012fa16dca0da6c487dd066829ff0b0954925fe6'/>
<id>urn:sha1:012fa16dca0da6c487dd066829ff0b0954925fe6</id>
<content type='text'>
To allow pnfs LD to ask direct writes to be resend.

Signed-off-by: Peng Tao &lt;tao.peng@primarydata.com&gt;
</content>
</entry>
<entry>
<title>nfs: add nfs_pgio_current_mirror helper</title>
<updated>2015-02-03T19:06:48+00:00</updated>
<author>
<name>Peng Tao</name>
<email>tao.peng@primarydata.com</email>
</author>
<published>2014-11-10T00:35:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=48d635f14a544c2b3ca870d2c7349b41160496d2'/>
<id>urn:sha1:48d635f14a544c2b3ca870d2c7349b41160496d2</id>
<content type='text'>
Let it return current nfs_pgio_mirror in use depending on pg_mirror_count.
For read, we always use pg_mirrors[0], so this effectively gives us freedom
to use pg_mirror_idx to track the actual mirror to read from through out the
IO stack.

Signed-off-by: Peng Tao &lt;tao.peng@primarydata.com&gt;
Signed-off-by: Tom Haynes &lt;loghyr@primarydata.com&gt;
</content>
</entry>
</feed>
