Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
5e04e7fe
K
Kernel
项目概览
openeuler
/
Kernel
12 个月 前同步成功
通知
5
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
Kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
5e04e7fe
编写于
11月 10, 2005
作者:
L
Linus Torvalds
浏览文件
操作
浏览文件
下载
差异文件
Merge
git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6
上级
a5cf8b7d
1b397f4f
变更
10
隐藏空白更改
内联
并排
Showing
10 changed file
with
96 addition
and
21 deletion
+96
-21
fs/Kconfig
fs/Kconfig
+43
-10
fs/cifs/CHANGES
fs/cifs/CHANGES
+1
-1
fs/cifs/cifs_unicode.c
fs/cifs/cifs_unicode.c
+3
-2
fs/cifs/cifsfs.c
fs/cifs/cifsfs.c
+8
-3
fs/cifs/cifsproto.h
fs/cifs/cifsproto.h
+1
-1
fs/cifs/cifssmb.c
fs/cifs/cifssmb.c
+0
-2
fs/cifs/cn_cifs.h
fs/cifs/cn_cifs.h
+37
-0
fs/cifs/connect.c
fs/cifs/connect.c
+1
-0
fs/cifs/inode.c
fs/cifs/inode.c
+0
-2
include/linux/connector.h
include/linux/connector.h
+2
-0
未找到文件。
fs/Kconfig
浏览文件 @
5e04e7fe
...
...
@@ -1601,9 +1601,10 @@ config CIFS
PC operating systems. The CIFS protocol is fully supported by
file servers such as Windows 2000 (including Windows 2003, NT 4
and Windows XP) as well by Samba (which provides excellent CIFS
server support for Linux and many other operating systems). Currently
you must use the smbfs client filesystem to access older SMB servers
such as Windows 9x and OS/2.
server support for Linux and many other operating systems). Limited
support for Windows ME and similar servers is provided as well.
You must use the smbfs client filesystem to access older SMB servers
such as OS/2 and DOS.
The intent of the cifs module is to provide an advanced
network file system client for mounting to CIFS compliant servers,
...
...
@@ -1614,7 +1615,7 @@ config CIFS
cifs if running only a (Samba) server. It is possible to enable both
smbfs and cifs (e.g. if you are using CIFS for accessing Windows 2003
and Samba 3 servers, and smbfs for accessing old servers). If you need
to mount to Samba or Windows
2003 servers
from this machine, say Y.
to mount to Samba or Windows from this machine, say Y.
config CIFS_STATS
bool "CIFS statistics"
...
...
@@ -1623,8 +1624,22 @@ config CIFS_STATS
Enabling this option will cause statistics for each server share
mounted by the cifs client to be displayed in /proc/fs/cifs/Stats
config CIFS_STATS2
bool "CIFS extended statistics"
depends on CIFS_STATS
help
Enabling this option will allow more detailed statistics on SMB
request timing to be displayed in /proc/fs/cifs/DebugData and also
allow optional logging of slow responses to dmesg (depending on the
value of /proc/fs/cifs/cifsFYI, see fs/cifs/README for more details).
These additional statistics may have a minor effect on performance
and memory utilization.
Unless you are a developer or are doing network performance analysis
or tuning, say N.
config CIFS_XATTR
bool "CIFS extended attributes
(EXPERIMENTAL)
"
bool "CIFS extended attributes"
depends on CIFS
help
Extended attributes are name:value pairs associated with inodes by
...
...
@@ -1636,11 +1651,11 @@ config CIFS_XATTR
prefaced by the user namespace prefix. The system namespace
(used by some filesystems to store ACLs) is not supported at
this time.
If unsure, say N.
config CIFS_POSIX
bool "CIFS POSIX Extensions
(EXPERIMENTAL)
"
bool "CIFS POSIX Extensions"
depends on CIFS_XATTR
help
Enabling this option will cause the cifs client to attempt to
...
...
@@ -1653,10 +1668,28 @@ config CIFS_POSIX
config CIFS_EXPERIMENTAL
bool "CIFS Experimental Features (EXPERIMENTAL)"
depends on CIFS
depends on CIFS && EXPERIMENTAL
help
Enables cifs features under testing. These features are
experimental and currently include support for writepages
(multipage writebehind performance improvements) and directory
change notification ie fcntl(F_DNOTIFY) as well as some security
improvements. Some also depend on setting at runtime the
pseudo-file /proc/fs/cifs/Experimental (which is disabled by
default). See the file fs/cifs/README for more details.
If unsure, say N.
config CIFS_UPCALL
bool "CIFS Kerberos/SPNEGO advanced session setup (EXPERIMENTAL)"
depends on CIFS_EXPERIMENTAL
select CONNECTOR
help
Enables cifs features under testing. These features
are highly experimental. If unsure, say N.
Enables an upcall mechanism for CIFS which will be used to contact
userspace helper utilities to provide SPNEGO packaged Kerberos
tickets which are needed to mount to certain secure servers
(for which more secure Kerberos authentication is required). If
unsure, say N.
config NCP_FS
tristate "NCP file system support (to mount NetWare volumes)"
...
...
fs/cifs/CHANGES
浏览文件 @
5e04e7fe
...
...
@@ -2,7 +2,7 @@ Version 1.39
------------
Defer close of a file handle slightly if pending writes depend on that file handle
(this reduces the EBADF bad file handle errors that can be logged under heavy
stress on writes).
stress on writes).
Modify cifs Kconfig options to expose CONFIG_CIFS_STATS2
Version 1.38
------------
...
...
fs/cifs/cifs_unicode.c
浏览文件 @
5e04e7fe
...
...
@@ -74,10 +74,11 @@ cifs_strtoUCS(wchar_t * to, const char *from, int len,
cERROR
(
1
,
(
"cifs_strtoUCS: char2uni returned %d"
,
charlen
));
to
[
i
]
=
cpu_to_le16
(
0x003f
);
/* a question mark */
/* A question mark */
to
[
i
]
=
(
wchar_t
)
cpu_to_le16
(
0x003f
);
charlen
=
1
;
}
else
to
[
i
]
=
cpu_to_le16
(
to
[
i
]);
to
[
i
]
=
(
wchar_t
)
cpu_to_le16
(
to
[
i
]);
}
...
...
fs/cifs/cifsfs.c
浏览文件 @
5e04e7fe
...
...
@@ -405,6 +405,7 @@ static struct quotactl_ops cifs_quotactl_ops = {
};
#endif
#ifdef CONFIG_CIFS_EXPERIMENTAL
static
void
cifs_umount_begin
(
struct
super_block
*
sblock
)
{
struct
cifs_sb_info
*
cifs_sb
;
...
...
@@ -422,16 +423,18 @@ static void cifs_umount_begin(struct super_block * sblock)
tcon
->
tidStatus
=
CifsExiting
;
up
(
&
tcon
->
tconSem
);
/* cancel_brl_requests(tcon); */
/* cancel_notify_requests(tcon); */
if
(
tcon
->
ses
&&
tcon
->
ses
->
server
)
{
c
ERROR
(
1
,(
"wake up tasks now - umount begin not complete"
));
c
FYI
(
1
,(
"wake up tasks now - umount begin not complete"
));
wake_up_all
(
&
tcon
->
ses
->
server
->
request_q
);
}
/* BB FIXME - finish add checks for tidStatus BB */
return
;
}
#endif
static
int
cifs_remount
(
struct
super_block
*
sb
,
int
*
flags
,
char
*
data
)
{
...
...
@@ -450,7 +453,9 @@ struct super_operations cifs_super_ops = {
unless later we add lazy close of inodes or unless the kernel forgets to call
us with the same number of releases (closes) as opens */
.
show_options
=
cifs_show_options
,
/* .umount_begin = cifs_umount_begin, */
/* BB finish in the future */
#ifdef CONFIG_CIFS_EXPERIMENTAL
.
umount_begin
=
cifs_umount_begin
,
#endif
.
remount_fs
=
cifs_remount
,
};
...
...
fs/cifs/cifsproto.h
浏览文件 @
5e04e7fe
...
...
@@ -242,11 +242,11 @@ extern int CIFSSMBWrite2(const int xid, struct cifsTconInfo *tcon,
const
int
netfid
,
const
unsigned
int
count
,
const
__u64
offset
,
unsigned
int
*
nbytes
,
struct
kvec
*
iov
,
const
int
nvec
,
const
int
long_op
);
#endif
/* CONFIG_CIFS_EXPERIMENTAL */
extern
int
CIFSGetSrvInodeNumber
(
const
int
xid
,
struct
cifsTconInfo
*
tcon
,
const
unsigned
char
*
searchName
,
__u64
*
inode_number
,
const
struct
nls_table
*
nls_codepage
,
int
remap_special_chars
);
#endif
/* CONFIG_CIFS_EXPERIMENTAL */
extern
int
cifs_convertUCSpath
(
char
*
target
,
const
__le16
*
source
,
int
maxlen
,
const
struct
nls_table
*
codepage
);
extern
int
cifsConvertToUCS
(
__le16
*
target
,
const
char
*
source
,
int
maxlen
,
...
...
fs/cifs/cifssmb.c
浏览文件 @
5e04e7fe
...
...
@@ -2959,7 +2959,6 @@ CIFSFindClose(const int xid, struct cifsTconInfo *tcon, const __u16 searchHandle
return
rc
;
}
#ifdef CONFIG_CIFS_EXPERIMENTAL
int
CIFSGetSrvInodeNumber
(
const
int
xid
,
struct
cifsTconInfo
*
tcon
,
const
unsigned
char
*
searchName
,
...
...
@@ -3053,7 +3052,6 @@ CIFSGetSrvInodeNumber(const int xid, struct cifsTconInfo *tcon,
goto
GetInodeNumberRetry
;
return
rc
;
}
#endif
/* CIFS_EXPERIMENTAL */
int
CIFSGetDFSRefer
(
const
int
xid
,
struct
cifsSesInfo
*
ses
,
...
...
fs/cifs/cn_cifs.h
0 → 100644
浏览文件 @
5e04e7fe
/*
* fs/cifs/cn_cifs.h
*
* Copyright (c) International Business Machines Corp., 2002
* Author(s): Steve French (sfrench@us.ibm.com)
*
* This library is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published
* by the Free Software Foundation; either version 2.1 of the License, or
* (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
* the GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef _CN_CIFS_H
#define _CN_CIFS_H
#ifdef CONFIG_CIFS_UPCALL
#include <linux/types.h>
#include <linux/connector.h>
struct
cifs_upcall
{
char
signature
[
4
];
/* CIFS */
enum
command
{
CIFS_GET_IP
=
0x00000001
,
/* get ip address for hostname */
CIFS_GET_SECBLOB
=
0x00000002
,
/* get SPNEGO wrapped blob */
}
command
;
/* union cifs upcall data follows */
};
#endif
/* CIFS_UPCALL */
#endif
/* _CN_CIFS_H */
fs/cifs/connect.c
浏览文件 @
5e04e7fe
...
...
@@ -42,6 +42,7 @@
#include "ntlmssp.h"
#include "nterr.h"
#include "rfc1002pdu.h"
#include "cn_cifs.h"
#define CIFS_PORT 445
#define RFC1001_PORT 139
...
...
fs/cifs/inode.c
浏览文件 @
5e04e7fe
...
...
@@ -283,7 +283,6 @@ int cifs_get_inode_info(struct inode **pinode,
there Windows server or network appliances for which
IndexNumber field is not guaranteed unique? */
#ifdef CONFIG_CIFS_EXPERIMENTAL
if
(
cifs_sb
->
mnt_cifs_flags
&
CIFS_MOUNT_SERVER_INUM
){
int
rc1
=
0
;
__u64
inode_num
;
...
...
@@ -299,7 +298,6 @@ int cifs_get_inode_info(struct inode **pinode,
}
else
/* do we need cast or hash to ino? */
(
*
pinode
)
->
i_ino
=
inode_num
;
}
/* else ino incremented to unique num in new_inode*/
#endif
/* CIFS_EXPERIMENTAL */
insert_inode_hash
(
*
pinode
);
}
inode
=
*
pinode
;
...
...
include/linux/connector.h
浏览文件 @
5e04e7fe
...
...
@@ -32,6 +32,8 @@
*/
#define CN_IDX_PROC 0x1
#define CN_VAL_PROC 0x1
#define CN_IDX_CIFS 0x2
#define CN_VAL_CIFS 0x1
#define CN_NETLINK_USERS 1
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录