Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S262284AbVBBSED (ORCPT ); Wed, 2 Feb 2005 13:04:03 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S262328AbVBBSEC (ORCPT ); Wed, 2 Feb 2005 13:04:02 -0500 Received: from fed1rmmtao07.cox.net ([68.230.241.32]:13529 "EHLO fed1rmmtao07.cox.net") by vger.kernel.org with ESMTP id S262284AbVBBSBd (ORCPT ); Wed, 2 Feb 2005 13:01:33 -0500 Date: Wed, 2 Feb 2005 11:00:58 -0700 From: Tom Rini To: David Woodhouse Cc: Andrew Morton , Kernel Mailing List Subject: Re: [PATCH 2.6.11-rc2] Move down in Message-ID: <20050202180057.GD15359@smtp.west.cox.net> References: <20050201160642.GA15359@smtp.west.cox.net> <1107361283.12383.0.camel@localhost.localdomain> <20050202163421.GC15359@smtp.west.cox.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20050202163421.GC15359@smtp.west.cox.net> User-Agent: Mutt/1.5.6+20040907i Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 18262 Lines: 477 On Wed, Feb 02, 2005 at 09:34:21AM -0700, Tom Rini wrote: > On Wed, Feb 02, 2005 at 04:21:23PM +0000, David Woodhouse wrote: > > On Tue, 2005-02-01 at 09:06 -0700, Tom Rini wrote: > > > is unsafe for inclusion by userland apps, but it > > > is in the userland-exposed portion of . It's only needed > > > in the __KERNEL__ protected portion of the file, so move the #include > > > down to there. > > > > You accidentally posted this patch to the kernel list, not to the > > maintainers of the libc-kernelheaders package. And you might as well > > just remove the offending #include rather than moving it to a section of > > the file which is never used. > > Ignoring your hint for a moment, since __KERNEL__ is still scattered all > over the place, and I haven't see anything (changeset-wise) adding "You > must use libc-kernelheaders now" in Documentation/feature-removal-schedule.txt > this is still an actual problem. Thanks. > > Feel free to correct me by getting something added to > Documentation/feature-removal-schedule.txt :) After talking with David a bit off-list, I'd like to ask that my original patch get pushed in time for 2.6.11, and the following a bit later (or now, that's fine too :)) (splitting the reverse was ~1400 lines in fs_kern.h in ~200 in fs.h). Signed-off-by: Tom Rini include/linux/fs_user.h | 197 +++++++++++++++++++++++++++++++++++++++++++++ include/linux/fs.h | 209 ++---------------------------------------------- 2 files changed, 209 insertions(+), 197 deletions(-) --- 1.377/include/linux/fs.h 2005-01-25 14:43:48 -07:00 +++ edited/include/linux/fs.h 2005-02-02 10:42:06 -07:00 @@ -3,9 +3,13 @@ /* * This file has definitions for some important file table - * structures etc. + * structures etc. Any userspace visiable changes must go into + * */ +#include + +#ifdef __KERNEL__ #include #include #include @@ -16,9 +20,15 @@ #include #include #include -#include #include +#include +#include +#include +#include +#include #include +#include +#include struct iovec; struct nameidata; @@ -28,201 +38,6 @@ struct vm_area_struct; struct vfsmount; -/* - * It's silly to have NR_OPEN bigger than NR_FILE, but you can change - * the file limit at runtime and only root can increase the per-process - * nr_file rlimit, so it's safe to set up a ridiculously high absolute - * upper limit on files-per-process. - * - * Some programs (notably those using select()) may have to be - * recompiled to take full advantage of the new limits.. - */ - -/* Fixed constants first: */ -#undef NR_OPEN -#define NR_OPEN (1024*1024) /* Absolute upper limit on fd num */ -#define INR_OPEN 1024 /* Initial setting for nfile rlimits */ - -#define BLOCK_SIZE_BITS 10 -#define BLOCK_SIZE (1<i_sb->s_flags & (flg)) - -#define IS_RDONLY(inode) ((inode)->i_sb->s_flags & MS_RDONLY) -#define IS_SYNC(inode) (__IS_FLG(inode, MS_SYNCHRONOUS) || \ - ((inode)->i_flags & S_SYNC)) -#define IS_DIRSYNC(inode) (__IS_FLG(inode, MS_SYNCHRONOUS|MS_DIRSYNC) || \ - ((inode)->i_flags & (S_SYNC|S_DIRSYNC))) -#define IS_MANDLOCK(inode) __IS_FLG(inode, MS_MANDLOCK) - -#define IS_NOQUOTA(inode) ((inode)->i_flags & S_NOQUOTA) -#define IS_APPEND(inode) ((inode)->i_flags & S_APPEND) -#define IS_IMMUTABLE(inode) ((inode)->i_flags & S_IMMUTABLE) -#define IS_NOATIME(inode) (__IS_FLG(inode, MS_NOATIME) || ((inode)->i_flags & S_NOATIME)) -#define IS_NODIRATIME(inode) __IS_FLG(inode, MS_NODIRATIME) -#define IS_POSIXACL(inode) __IS_FLG(inode, MS_POSIXACL) - -#define IS_DEADDIR(inode) ((inode)->i_flags & S_DEAD) -#define IS_NOCMTIME(inode) ((inode)->i_flags & S_NOCMTIME) -#define IS_SWAPFILE(inode) ((inode)->i_flags & S_SWAPFILE) - -/* the read-only stuff doesn't really belong here, but any other place is - probably as bad and I don't want to create yet another include file. */ - -#define BLKROSET _IO(0x12,93) /* set device read-only (0 = read-write) */ -#define BLKROGET _IO(0x12,94) /* get read-only status (0 = read_write) */ -#define BLKRRPART _IO(0x12,95) /* re-read partition table */ -#define BLKGETSIZE _IO(0x12,96) /* return device size /512 (long *arg) */ -#define BLKFLSBUF _IO(0x12,97) /* flush buffer cache */ -#define BLKRASET _IO(0x12,98) /* set read ahead for block device */ -#define BLKRAGET _IO(0x12,99) /* get current read ahead setting */ -#define BLKFRASET _IO(0x12,100)/* set filesystem (mm/filemap.c) read-ahead */ -#define BLKFRAGET _IO(0x12,101)/* get filesystem (mm/filemap.c) read-ahead */ -#define BLKSECTSET _IO(0x12,102)/* set max sectors per request (ll_rw_blk.c) */ -#define BLKSECTGET _IO(0x12,103)/* get max sectors per request (ll_rw_blk.c) */ -#define BLKSSZGET _IO(0x12,104)/* get block device sector size */ -#if 0 -#define BLKPG _IO(0x12,105)/* See blkpg.h */ - -/* Some people are morons. Do not use sizeof! */ - -#define BLKELVGET _IOR(0x12,106,size_t)/* elevator get */ -#define BLKELVSET _IOW(0x12,107,size_t)/* elevator set */ -/* This was here just to show that the number is taken - - probably all these _IO(0x12,*) ioctls should be moved to blkpg.h. */ -#endif -/* A jump here: 108-111 have been used for various private purposes. */ -#define BLKBSZGET _IOR(0x12,112,size_t) -#define BLKBSZSET _IOW(0x12,113,size_t) -#define BLKGETSIZE64 _IOR(0x12,114,size_t) /* return device size in bytes (u64 *arg) */ - -#define BMAP_IOCTL 1 /* obsolete - kept for compatibility */ -#define FIBMAP _IO(0x00,1) /* bmap access */ -#define FIGETBSZ _IO(0x00,2) /* get the block size used for bmap */ - -#ifdef __KERNEL__ - -#include -#include -#include -#include -#include -#include /* Used to be a macro which just called the function, now just a function */ extern void update_atime (struct inode *); --- /dev/null 2005-01-31 00:25:24.000000000 -0700 +++ b/include/linux/fs_user.h 2005-02-02 10:41:35.000000000 -0700 @@ -0,0 +1,197 @@ +#ifndef _LINUX_USER_FS_H +#define _LINUX_USER_FS_H + +/* + * This file has definitions for some important file table + * structures, etc that userspace needs to see. + */ + +#include + +/* + * It's silly to have NR_OPEN bigger than NR_FILE, but you can change + * the file limit at runtime and only root can increase the per-process + * nr_file rlimit, so it's safe to set up a ridiculously high absolute + * upper limit on files-per-process. + * + * Some programs (notably those using select()) may have to be + * recompiled to take full advantage of the new limits.. + */ + +/* Fixed constants first: */ +#undef NR_OPEN +#define NR_OPEN (1024*1024) /* Absolute upper limit on fd num */ +#define INR_OPEN 1024 /* Initial setting for nfile rlimits */ + +#define BLOCK_SIZE_BITS 10 +#define BLOCK_SIZE (1<i_sb->s_flags & (flg)) + +#define IS_RDONLY(inode) ((inode)->i_sb->s_flags & MS_RDONLY) +#define IS_SYNC(inode) (__IS_FLG(inode, MS_SYNCHRONOUS) || \ + ((inode)->i_flags & S_SYNC)) +#define IS_DIRSYNC(inode) (__IS_FLG(inode, MS_SYNCHRONOUS|MS_DIRSYNC) || \ + ((inode)->i_flags & (S_SYNC|S_DIRSYNC))) +#define IS_MANDLOCK(inode) __IS_FLG(inode, MS_MANDLOCK) + +#define IS_NOQUOTA(inode) ((inode)->i_flags & S_NOQUOTA) +#define IS_APPEND(inode) ((inode)->i_flags & S_APPEND) +#define IS_IMMUTABLE(inode) ((inode)->i_flags & S_IMMUTABLE) +#define IS_NOATIME(inode) (__IS_FLG(inode, MS_NOATIME) || ((inode)->i_flags & S_NOATIME)) +#define IS_NODIRATIME(inode) __IS_FLG(inode, MS_NODIRATIME) +#define IS_POSIXACL(inode) __IS_FLG(inode, MS_POSIXACL) + +#define IS_DEADDIR(inode) ((inode)->i_flags & S_DEAD) +#define IS_NOCMTIME(inode) ((inode)->i_flags & S_NOCMTIME) +#define IS_SWAPFILE(inode) ((inode)->i_flags & S_SWAPFILE) + +/* the read-only stuff doesn't really belong here, but any other place is + probably as bad and I don't want to create yet another include file. */ + +#define BLKROSET _IO(0x12,93) /* set device read-only (0 = read-write) */ +#define BLKROGET _IO(0x12,94) /* get read-only status (0 = read_write) */ +#define BLKRRPART _IO(0x12,95) /* re-read partition table */ +#define BLKGETSIZE _IO(0x12,96) /* return device size /512 (long *arg) */ +#define BLKFLSBUF _IO(0x12,97) /* flush buffer cache */ +#define BLKRASET _IO(0x12,98) /* set read ahead for block device */ +#define BLKRAGET _IO(0x12,99) /* get current read ahead setting */ +#define BLKFRASET _IO(0x12,100)/* set filesystem (mm/filemap.c) read-ahead */ +#define BLKFRAGET _IO(0x12,101)/* get filesystem (mm/filemap.c) read-ahead */ +#define BLKSECTSET _IO(0x12,102)/* set max sectors per request (ll_rw_blk.c) */ +#define BLKSECTGET _IO(0x12,103)/* get max sectors per request (ll_rw_blk.c) */ +#define BLKSSZGET _IO(0x12,104)/* get block device sector size */ +#if 0 +#define BLKPG _IO(0x12,105)/* See blkpg.h */ + +/* Some people are morons. Do not use sizeof! */ + +#define BLKELVGET _IOR(0x12,106,size_t)/* elevator get */ +#define BLKELVSET _IOW(0x12,107,size_t)/* elevator set */ +/* This was here just to show that the number is taken - + probably all these _IO(0x12,*) ioctls should be moved to blkpg.h. */ +#endif +/* A jump here: 108-111 have been used for various private purposes. */ +#define BLKBSZGET _IOR(0x12,112,size_t) +#define BLKBSZSET _IOW(0x12,113,size_t) +#define BLKGETSIZE64 _IOR(0x12,114,size_t) /* return device size in bytes (u64 *arg) */ + +#define BMAP_IOCTL 1 /* obsolete - kept for compatibility */ +#define FIBMAP _IO(0x00,1) /* bmap access */ +#define FIGETBSZ _IO(0x00,2) /* get the block size used for bmap */ +#endif /* _LINUX_FS_USER_H */ -- Tom Rini http://gate.crashing.org/~trini/ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/