cifsfs.c (d0c44de2d8ffd2e4780d360b34ee6614aa4af080) cifsfs.c (6f17163b9339fac92023a1d9bef22128db3b9a4b)
1// SPDX-License-Identifier: LGPL-2.1
2/*
3 *
4 * Copyright (C) International Business Machines Corp., 2002,2008
5 * Author(s): Steve French (sfrench@us.ibm.com)
6 *
7 * Common Internet FileSystem (CIFS) client
8 *

--- 145 unchanged lines hidden (view full) ---

154extern mempool_t *cifs_req_poolp;
155extern mempool_t *cifs_mid_poolp;
156
157struct workqueue_struct *cifsiod_wq;
158struct workqueue_struct *decrypt_wq;
159struct workqueue_struct *fileinfo_put_wq;
160struct workqueue_struct *cifsoplockd_wq;
161struct workqueue_struct *deferredclose_wq;
1// SPDX-License-Identifier: LGPL-2.1
2/*
3 *
4 * Copyright (C) International Business Machines Corp., 2002,2008
5 * Author(s): Steve French (sfrench@us.ibm.com)
6 *
7 * Common Internet FileSystem (CIFS) client
8 *

--- 145 unchanged lines hidden (view full) ---

154extern mempool_t *cifs_req_poolp;
155extern mempool_t *cifs_mid_poolp;
156
157struct workqueue_struct *cifsiod_wq;
158struct workqueue_struct *decrypt_wq;
159struct workqueue_struct *fileinfo_put_wq;
160struct workqueue_struct *cifsoplockd_wq;
161struct workqueue_struct *deferredclose_wq;
162struct workqueue_struct *serverclose_wq;
162__u32 cifs_lock_secret;
163
164/*
165 * Bumps refcount for cifs super block.
166 * Note that it should be only called if a referece to VFS super block is
167 * already held, e.g. in open-type syscalls context. Otherwise it can race with
168 * atomic_dec_and_test in deactivate_locked_super.
169 */

--- 1702 unchanged lines hidden (view full) ---

1872
1873 deferredclose_wq = alloc_workqueue("deferredclose",
1874 WQ_FREEZABLE|WQ_MEM_RECLAIM, 0);
1875 if (!deferredclose_wq) {
1876 rc = -ENOMEM;
1877 goto out_destroy_cifsoplockd_wq;
1878 }
1879
163__u32 cifs_lock_secret;
164
165/*
166 * Bumps refcount for cifs super block.
167 * Note that it should be only called if a referece to VFS super block is
168 * already held, e.g. in open-type syscalls context. Otherwise it can race with
169 * atomic_dec_and_test in deactivate_locked_super.
170 */

--- 1702 unchanged lines hidden (view full) ---

1873
1874 deferredclose_wq = alloc_workqueue("deferredclose",
1875 WQ_FREEZABLE|WQ_MEM_RECLAIM, 0);
1876 if (!deferredclose_wq) {
1877 rc = -ENOMEM;
1878 goto out_destroy_cifsoplockd_wq;
1879 }
1880
1881 serverclose_wq = alloc_workqueue("serverclose",
1882 WQ_FREEZABLE|WQ_MEM_RECLAIM, 0);
1883 if (!serverclose_wq) {
1884 rc = -ENOMEM;
1885 goto out_destroy_serverclose_wq;
1886 }
1887
1880 rc = cifs_init_inodecache();
1881 if (rc)
1882 goto out_destroy_deferredclose_wq;
1883
1884 rc = init_mids();
1885 if (rc)
1886 goto out_destroy_inodecache;
1887

--- 58 unchanged lines hidden (view full) ---

1946out_destroy_cifsoplockd_wq:
1947 destroy_workqueue(cifsoplockd_wq);
1948out_destroy_fileinfo_put_wq:
1949 destroy_workqueue(fileinfo_put_wq);
1950out_destroy_decrypt_wq:
1951 destroy_workqueue(decrypt_wq);
1952out_destroy_cifsiod_wq:
1953 destroy_workqueue(cifsiod_wq);
1888 rc = cifs_init_inodecache();
1889 if (rc)
1890 goto out_destroy_deferredclose_wq;
1891
1892 rc = init_mids();
1893 if (rc)
1894 goto out_destroy_inodecache;
1895

--- 58 unchanged lines hidden (view full) ---

1954out_destroy_cifsoplockd_wq:
1955 destroy_workqueue(cifsoplockd_wq);
1956out_destroy_fileinfo_put_wq:
1957 destroy_workqueue(fileinfo_put_wq);
1958out_destroy_decrypt_wq:
1959 destroy_workqueue(decrypt_wq);
1960out_destroy_cifsiod_wq:
1961 destroy_workqueue(cifsiod_wq);
1962out_destroy_serverclose_wq:
1963 destroy_workqueue(serverclose_wq);
1954out_clean_proc:
1955 cifs_proc_clean();
1956 return rc;
1957}
1958
1959static void __exit
1960exit_cifs(void)
1961{

--- 13 unchanged lines hidden (view full) ---

1975#endif
1976 cifs_destroy_request_bufs();
1977 destroy_mids();
1978 cifs_destroy_inodecache();
1979 destroy_workqueue(deferredclose_wq);
1980 destroy_workqueue(cifsoplockd_wq);
1981 destroy_workqueue(decrypt_wq);
1982 destroy_workqueue(fileinfo_put_wq);
1964out_clean_proc:
1965 cifs_proc_clean();
1966 return rc;
1967}
1968
1969static void __exit
1970exit_cifs(void)
1971{

--- 13 unchanged lines hidden (view full) ---

1985#endif
1986 cifs_destroy_request_bufs();
1987 destroy_mids();
1988 cifs_destroy_inodecache();
1989 destroy_workqueue(deferredclose_wq);
1990 destroy_workqueue(cifsoplockd_wq);
1991 destroy_workqueue(decrypt_wq);
1992 destroy_workqueue(fileinfo_put_wq);
1993 destroy_workqueue(serverclose_wq);
1983 destroy_workqueue(cifsiod_wq);
1984 cifs_proc_clean();
1985}
1986
1987MODULE_AUTHOR("Steve French");
1988MODULE_LICENSE("GPL"); /* combination of LGPL + GPL source behaves as GPL */
1989MODULE_DESCRIPTION
1990 ("VFS to access SMB3 servers e.g. Samba, Macs, Azure and Windows (and "

--- 15 unchanged lines hidden ---
1994 destroy_workqueue(cifsiod_wq);
1995 cifs_proc_clean();
1996}
1997
1998MODULE_AUTHOR("Steve French");
1999MODULE_LICENSE("GPL"); /* combination of LGPL + GPL source behaves as GPL */
2000MODULE_DESCRIPTION
2001 ("VFS to access SMB3 servers e.g. Samba, Macs, Azure and Windows (and "

--- 15 unchanged lines hidden ---