Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'nfsd-6.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux

Pull nfsd fixes from Chuck Lever:

- v6.15 libcrc clean-up makes invalid configurations possible

- Fix a potential deadlock introduced during the v6.15 merge window

* tag 'nfsd-6.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux:
nfsd: decrease sc_count directly if fail to queue dl_recall
nfs: add missing selections of CONFIG_CRC32

+4 -27
+1
fs/Kconfig
··· 368 368 config LOCKD 369 369 tristate 370 370 depends on FILE_LOCKING 371 + select CRC32 371 372 select GRACE_PERIOD 372 373 373 374 config LOCKD_V4
+1 -1
fs/nfs/Kconfig
··· 2 2 config NFS_FS 3 3 tristate "NFS client support" 4 4 depends on INET && FILE_LOCKING && MULTIUSER 5 + select CRC32 5 6 select LOCKD 6 7 select SUNRPC 7 8 select NFS_COMMON ··· 197 196 config NFS_DEBUG 198 197 bool 199 198 depends on NFS_FS && SUNRPC_DEBUG 200 - select CRC32 201 199 default y 202 200 203 201 config NFS_DISABLE_UDP_SUPPORT
-7
fs/nfs/internal.h
··· 899 899 return ((u64)ts->tv_sec << 30) + ts->tv_nsec; 900 900 } 901 901 902 - #ifdef CONFIG_CRC32 903 902 static inline u32 nfs_stateid_hash(const nfs4_stateid *stateid) 904 903 { 905 904 return ~crc32_le(0xFFFFFFFF, &stateid->other[0], 906 905 NFS4_STATEID_OTHER_SIZE); 907 906 } 908 - #else 909 - static inline u32 nfs_stateid_hash(nfs4_stateid *stateid) 910 - { 911 - return 0; 912 - } 913 - #endif 914 907 915 908 static inline bool nfs_current_task_exiting(void) 916 909 {
-4
fs/nfs/nfs4session.h
··· 148 148 memcpy(dst->data, src->data, NFS4_MAX_SESSIONID_LEN); 149 149 } 150 150 151 - #ifdef CONFIG_CRC32 152 151 /* 153 152 * nfs_session_id_hash - calculate the crc32 hash for the session id 154 153 * @session - pointer to session 155 154 */ 156 155 #define nfs_session_id_hash(sess_id) \ 157 156 (~crc32_le(0xFFFFFFFF, &(sess_id)->data[0], sizeof((sess_id)->data))) 158 - #else 159 - #define nfs_session_id_hash(session) (0) 160 - #endif 161 157 #else /* defined(CONFIG_NFS_V4_1) */ 162 158 163 159 static inline int nfs4_init_session(struct nfs_client *clp)
+1
fs/nfsd/Kconfig
··· 4 4 depends on INET 5 5 depends on FILE_LOCKING 6 6 depends on FSNOTIFY 7 + select CRC32 7 8 select LOCKD 8 9 select SUNRPC 9 10 select EXPORTFS
+1 -1
fs/nfsd/nfs4state.c
··· 5430 5430 queued = nfsd4_run_cb(&dp->dl_recall); 5431 5431 WARN_ON_ONCE(!queued); 5432 5432 if (!queued) 5433 - nfs4_put_stid(&dp->dl_stid); 5433 + refcount_dec(&dp->dl_stid.sc_count); 5434 5434 } 5435 5435 5436 5436 /* Called from break_lease() with flc_lock held. */
-7
fs/nfsd/nfsfh.h
··· 267 267 return true; 268 268 } 269 269 270 - #ifdef CONFIG_CRC32 271 270 /** 272 271 * knfsd_fh_hash - calculate the crc32 hash for the filehandle 273 272 * @fh - pointer to filehandle ··· 278 279 { 279 280 return ~crc32_le(0xFFFFFFFF, fh->fh_raw, fh->fh_size); 280 281 } 281 - #else 282 - static inline u32 knfsd_fh_hash(const struct knfsd_fh *fh) 283 - { 284 - return 0; 285 - } 286 - #endif 287 282 288 283 /** 289 284 * fh_clear_pre_post_attrs - Reset pre/post attributes
-7
include/linux/nfs.h
··· 55 55 NFS_INVALID_STABLE_HOW = -1 56 56 }; 57 57 58 - #ifdef CONFIG_CRC32 59 58 /** 60 59 * nfs_fhandle_hash - calculate the crc32 hash for the filehandle 61 60 * @fh - pointer to filehandle ··· 66 67 { 67 68 return ~crc32_le(0xFFFFFFFF, &fh->data[0], fh->size); 68 69 } 69 - #else /* CONFIG_CRC32 */ 70 - static inline u32 nfs_fhandle_hash(const struct nfs_fh *fh) 71 - { 72 - return 0; 73 - } 74 - #endif /* CONFIG_CRC32 */ 75 70 #endif /* _LINUX_NFS_H */