Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit eb872c15 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:
  cifs: free nativeFileSystem field before allocating a new one
  [CIFS] Distinguish posix opens and mkdirs from legacy mkdirs in stats
parents ae42b9e1 90a98b2f
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -261,6 +261,8 @@ static ssize_t cifs_stats_proc_write(struct file *file,
					atomic_set(&tcon->num_reads, 0);
					atomic_set(&tcon->num_oplock_brks, 0);
					atomic_set(&tcon->num_opens, 0);
					atomic_set(&tcon->num_posixopens, 0);
					atomic_set(&tcon->num_posixmkdirs, 0);
					atomic_set(&tcon->num_closes, 0);
					atomic_set(&tcon->num_deletes, 0);
					atomic_set(&tcon->num_mkdirs, 0);
@@ -352,6 +354,10 @@ static int cifs_stats_proc_show(struct seq_file *m, void *v)
					atomic_read(&tcon->num_opens),
					atomic_read(&tcon->num_closes),
					atomic_read(&tcon->num_deletes));
				seq_printf(m, "\nPosix Opens: %d "
					      "Posix Mkdirs: %d",
					atomic_read(&tcon->num_posixopens),
					atomic_read(&tcon->num_posixmkdirs));
				seq_printf(m, "\nMkdirs: %d Rmdirs: %d",
					atomic_read(&tcon->num_mkdirs),
					atomic_read(&tcon->num_rmdirs));
+2 −0
Original line number Diff line number Diff line
@@ -260,6 +260,8 @@ struct cifsTconInfo {
	atomic_t num_closes;
	atomic_t num_deletes;
	atomic_t num_mkdirs;
	atomic_t num_posixopens;
	atomic_t num_posixmkdirs;
	atomic_t num_rmdirs;
	atomic_t num_renames;
	atomic_t num_t2renames;
+4 −1
Original line number Diff line number Diff line
@@ -1113,7 +1113,10 @@ PsxCreat:
psx_create_err:
	cifs_buf_release(pSMB);

	cifs_stats_inc(&tcon->num_mkdirs);
	if (posix_flags & SMB_O_DIRECTORY)
		cifs_stats_inc(&tcon->num_posixmkdirs);
	else
		cifs_stats_inc(&tcon->num_posixopens);

	if (rc == -EAGAIN)
		goto PsxCreat;
+1 −0
Original line number Diff line number Diff line
@@ -2726,6 +2726,7 @@ CIFSTCon(unsigned int xid, struct cifsSesInfo *ses,
		strncpy(tcon->treeName, tree, MAX_TREE_SIZE);

		/* mostly informational -- no need to fail on error here */
		kfree(tcon->nativeFileSystem);
		tcon->nativeFileSystem = cifs_strndup_from_ucs(bcc_ptr,
						      bytes_left, is_unicode,
						      nls_codepage);