diff options
| -rw-r--r-- | arch/mips/kernel/kspd.c | 2 | ||||
| -rw-r--r-- | fs/exec.c | 2 | ||||
| -rw-r--r-- | fs/select.c | 10 | ||||
| -rw-r--r-- | include/linux/posix_types.h | 18 | ||||
| -rw-r--r-- | include/linux/time.h | 8 | ||||
| -rw-r--r-- | kernel/exit.c | 2 | ||||
| -rw-r--r-- | security/selinux/hooks.c | 2 | 
7 files changed, 12 insertions, 32 deletions
diff --git a/arch/mips/kernel/kspd.c b/arch/mips/kernel/kspd.c index 84d0639e458..b77f56bbb47 100644 --- a/arch/mips/kernel/kspd.c +++ b/arch/mips/kernel/kspd.c @@ -323,7 +323,7 @@ static void sp_cleanup(void)  	fdt = files_fdtable(files);  	for (;;) {  		unsigned long set; -		i = j * __NFDBITS; +		i = j * BITS_PER_LONG;  		if (i >= fdt->max_fds)  			break;  		set = fdt->open_fds[j++]; diff --git a/fs/exec.c b/fs/exec.c index da27b91ff1e..e95aeeddd25 100644 --- a/fs/exec.c +++ b/fs/exec.c @@ -1020,7 +1020,7 @@ static void flush_old_files(struct files_struct * files)  		unsigned long set, i;  		j++; -		i = j * __NFDBITS; +		i = j * BITS_PER_LONG;  		fdt = files_fdtable(files);  		if (i >= fdt->max_fds)  			break; diff --git a/fs/select.c b/fs/select.c index bae321569df..db14c781335 100644 --- a/fs/select.c +++ b/fs/select.c @@ -345,8 +345,8 @@ static int max_select_fd(unsigned long n, fd_set_bits *fds)  	struct fdtable *fdt;  	/* handle last in-complete long-word first */ -	set = ~(~0UL << (n & (__NFDBITS-1))); -	n /= __NFDBITS; +	set = ~(~0UL << (n & (BITS_PER_LONG-1))); +	n /= BITS_PER_LONG;  	fdt = files_fdtable(current->files);  	open_fds = fdt->open_fds + n;  	max = 0; @@ -373,7 +373,7 @@ get_max:  			max++;  			set >>= 1;  		} while (set); -		max += n * __NFDBITS; +		max += n * BITS_PER_LONG;  	}  	return max; @@ -435,11 +435,11 @@ int do_select(int n, fd_set_bits *fds, struct timespec *end_time)  			in = *inp++; out = *outp++; ex = *exp++;  			all_bits = in | out | ex;  			if (all_bits == 0) { -				i += __NFDBITS; +				i += BITS_PER_LONG;  				continue;  			} -			for (j = 0; j < __NFDBITS; ++j, ++i, bit <<= 1) { +			for (j = 0; j < BITS_PER_LONG; ++j, ++i, bit <<= 1) {  				int fput_needed;  				if (i >= n)  					break; diff --git a/include/linux/posix_types.h b/include/linux/posix_types.h index f04c98cf44f..988f76e636e 100644 --- a/include/linux/posix_types.h +++ b/include/linux/posix_types.h @@ -15,26 +15,14 @@   */  /* - * Those macros may have been defined in <gnu/types.h>. But we always - * use the ones here.  + * This macro may have been defined in <gnu/types.h>. But we always + * use the one here.   */ -#undef __NFDBITS -#define __NFDBITS	(8 * sizeof(unsigned long)) -  #undef __FD_SETSIZE  #define __FD_SETSIZE	1024 -#undef __FDSET_LONGS -#define __FDSET_LONGS	(__FD_SETSIZE/__NFDBITS) - -#undef __FDELT -#define	__FDELT(d)	((d) / __NFDBITS) - -#undef __FDMASK -#define	__FDMASK(d)	(1UL << ((d) % __NFDBITS)) -  typedef struct { -	unsigned long fds_bits [__FDSET_LONGS]; +	unsigned long fds_bits[__FD_SETSIZE / (8 * sizeof(long))];  } __kernel_fd_set;  /* Type of a signal handler.  */ diff --git a/include/linux/time.h b/include/linux/time.h index 179f4d6755f..c81c5e40fcb 100644 --- a/include/linux/time.h +++ b/include/linux/time.h @@ -257,14 +257,6 @@ static __always_inline void timespec_add_ns(struct timespec *a, u64 ns)  #endif /* __KERNEL__ */ -#define NFDBITS			__NFDBITS - -#define FD_SETSIZE		__FD_SETSIZE -#define FD_SET(fd,fdsetp)	__FD_SET(fd,fdsetp) -#define FD_CLR(fd,fdsetp)	__FD_CLR(fd,fdsetp) -#define FD_ISSET(fd,fdsetp)	__FD_ISSET(fd,fdsetp) -#define FD_ZERO(fdsetp)		__FD_ZERO(fdsetp) -  /*   * Names of the interval timers, and structure   * defining a timer setting: diff --git a/kernel/exit.c b/kernel/exit.c index d17f6c4ddfa..f65345f9e5b 100644 --- a/kernel/exit.c +++ b/kernel/exit.c @@ -483,7 +483,7 @@ static void close_files(struct files_struct * files)  	rcu_read_unlock();  	for (;;) {  		unsigned long set; -		i = j * __NFDBITS; +		i = j * BITS_PER_LONG;  		if (i >= fdt->max_fds)  			break;  		set = fdt->open_fds[j++]; diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c index 689fe2d2216..94c45a1531a 100644 --- a/security/selinux/hooks.c +++ b/security/selinux/hooks.c @@ -2129,7 +2129,7 @@ static inline void flush_unauthorized_files(const struct cred *cred,  		int fd;  		j++; -		i = j * __NFDBITS; +		i = j * BITS_PER_LONG;  		fdt = files_fdtable(files);  		if (i >= fdt->max_fds)  			break;  |