All of lore.kernel.org
 help / color / mirror / Atom feed
* Hole punch races in CIFS
@ 2021-04-22 11:58 Jan Kara
  0 siblings, 0 replies; only message in thread
From: Jan Kara @ 2021-04-22 11:58 UTC (permalink / raw)
  To: Steve French; +Cc: linux-cifs, linux-fsdevel

Hello,

I was looking into what protects CIFS from races between hole punching and
operations like page fault or readahead and AFAICT there's nothing to
prevent a race like:

CPU1						CPU2
smb3_fallocate()
  smb3_punch_hole()
    truncate_pagecache_range()
						filemap_fault()
						  - loads old data into the
						    page cache
    SMB2_ioctl(..., FSCTL_SET_ZERO_DATA, ...)

And now we have stale data in the page cache and if the page gets later
dirtied and written out, even persistent data corruption. Is there anything
I'm missing?

								Honza
-- 
Jan Kara <jack@suse.com>
SUSE Labs, CR

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-04-22 11:58 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-22 11:58 Hole punch races in CIFS Jan Kara

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.