Linux CIFS filesystem development
 help / color / mirror / Atom feed
* [PATCH 0/5] cifs: Fix xid leak in cifs
@ 2022-10-17 14:45 Zhang Xiaoxu
  2022-10-17 13:53 ` Paulo Alcantara
                   ` (6 more replies)
  0 siblings, 7 replies; 9+ messages in thread
From: Zhang Xiaoxu @ 2022-10-17 14:45 UTC (permalink / raw)
  To: linux-cifs, zhangxiaoxu5, sfrench, smfrench, pc, lsahlber,
	sprasad, tom, aaptel

Found some xid leak with the following cocci script:

/usr/bin/spatch -I include -timeout 60 -very_quiet \
	-sp_file missing-free_xid.cocci fs/cifs

@r1@
identifier xid;
position p;
@@
...
  xid = get_xid();
<+... when != free_xid(xid)
  if (...) {
    ... when != free_xid(xid)
        when forall
    return@p ...;
  }
...+>
  free_xid(xid);

@depends on r1@
position r1.p;
@@
+ free_xid(xid);
  return@p ...;

@r2@
identifier xid;
position p;
@@
...
  unsigned int xid = get_xid();
<+... when != free_xid(xid)
  if (...) {
    ... when != free_xid(xid)
        when forall
    return@p ...;
  }
...+>
  free_xid(xid);

@depends on r2@
position r2.p;
@@
+ free_xid(xid);
  return@p ...;

@r3@
identifier xid;
position p;
@@
...
  xid = get_xid();
  ... when != \(free_xid\|_free_xid\)(xid);
  return@p ...;

@depends on r3@
position r3.p;
@@
+ free_xid(xid);
  return@p ...;

@r4@
identifier xid;
position p;
@@
...
  unsigned int xid = get_xid();
  ... when != \(free_xid\|_free_xid\)(xid);
  return@p ...;

@depends on r4@
position r4.p;
@@
+ free_xid(xid);
  return@p ...;

Zhang Xiaoxu (5):
  cifs: Fix xid leak in cifs_create()
  cifs: Fix xid leak in cifs_copy_file_range()
  cifs: Fix xid leak in cifs_flock()
  cifs: Fix xid leak in cifs_ses_add_channel()
  cifs: Fix xid leak in cifs_get_file_info_unix()

 fs/cifs/cifsfs.c |  7 +++++--
 fs/cifs/dir.c    |  6 ++++--
 fs/cifs/file.c   | 11 +++++++----
 fs/cifs/inode.c  |  6 ++++--
 fs/cifs/sess.c   |  1 +
 5 files changed, 21 insertions(+), 10 deletions(-)

-- 
2.31.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2022-10-17 17:30 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-10-17 14:45 [PATCH 0/5] cifs: Fix xid leak in cifs Zhang Xiaoxu
2022-10-17 13:53 ` Paulo Alcantara
2022-10-17 14:45 ` [PATCH 1/5] cifs: Fix xid leak in cifs_create() Zhang Xiaoxu
2022-10-17 14:45 ` [PATCH 2/5] cifs: Fix xid leak in cifs_copy_file_range() Zhang Xiaoxu
2022-10-17 14:45 ` [PATCH 3/5] cifs: Fix xid leak in cifs_flock() Zhang Xiaoxu
2022-10-17 14:45 ` [PATCH 4/5] cifs: Fix xid leak in cifs_ses_add_channel() Zhang Xiaoxu
2022-10-17 17:28   ` Steve French
2022-10-17 14:45 ` [PATCH 5/5] cifs: Fix xid leak in cifs_get_file_info_unix() Zhang Xiaoxu
2022-10-17 17:28 ` [PATCH 0/5] cifs: Fix xid leak in cifs Steve French

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox