mirror of
https://github.com/joel16/android_kernel_sony_msm8994.git
synced 2025-01-27 07:22:28 +00:00
[PATCH] devfs: Remove devfs from the kernel tree
This is the first patch in a series of patches that removes devfs support from the kernel. This patch removes the core devfs code, and its private header file. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
5fd571cbc1
commit
d8deac5094
@ -66,7 +66,6 @@ obj-$(CONFIG_MSDOS_FS) += msdos/
|
||||
obj-$(CONFIG_VFAT_FS) += vfat/
|
||||
obj-$(CONFIG_BFS_FS) += bfs/
|
||||
obj-$(CONFIG_ISO9660_FS) += isofs/
|
||||
obj-$(CONFIG_DEVFS_FS) += devfs/
|
||||
obj-$(CONFIG_HFSPLUS_FS) += hfsplus/ # Before hfs to find wrapped HFS+
|
||||
obj-$(CONFIG_HFS_FS) += hfs/
|
||||
obj-$(CONFIG_VXFS_FS) += freevxfs/
|
||||
|
@ -44,7 +44,6 @@
|
||||
#include <linux/loop.h>
|
||||
#include <linux/auto_fs.h>
|
||||
#include <linux/auto_fs4.h>
|
||||
#include <linux/devfs_fs.h>
|
||||
#include <linux/tty.h>
|
||||
#include <linux/vt_kern.h>
|
||||
#include <linux/fb.h>
|
||||
|
@ -1,8 +0,0 @@
|
||||
#
|
||||
# Makefile for the linux devfs-filesystem routines.
|
||||
#
|
||||
|
||||
obj-$(CONFIG_DEVFS_FS) += devfs.o
|
||||
|
||||
devfs-objs := base.o util.o
|
||||
|
2836
fs/devfs/base.c
2836
fs/devfs/base.c
File diff suppressed because it is too large
Load Diff
@ -1,97 +0,0 @@
|
||||
/* devfs (Device FileSystem) utilities.
|
||||
|
||||
Copyright (C) 1999-2002 Richard Gooch
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
|
||||
Richard Gooch may be reached by email at rgooch@atnf.csiro.au
|
||||
The postal address is:
|
||||
Richard Gooch, c/o ATNF, P. O. Box 76, Epping, N.S.W., 2121, Australia.
|
||||
|
||||
ChangeLog
|
||||
|
||||
19991031 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Created.
|
||||
19991103 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Created <_devfs_convert_name> and supported SCSI and IDE CD-ROMs
|
||||
20000203 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Changed operations pointer type to void *.
|
||||
20000621 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Changed interface to <devfs_register_series>.
|
||||
20000622 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Took account of interface change to <devfs_mk_symlink>.
|
||||
Took account of interface change to <devfs_mk_dir>.
|
||||
20010519 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Documentation cleanup.
|
||||
20010709 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Created <devfs_*alloc_major> and <devfs_*alloc_devnum>.
|
||||
20010710 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Created <devfs_*alloc_unique_number>.
|
||||
20010730 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Documentation typo fix.
|
||||
20010806 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Made <block_semaphore> and <char_semaphore> private.
|
||||
20010813 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Fixed bug in <devfs_alloc_unique_number>: limited to 128 numbers
|
||||
20010818 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Updated major masks up to Linus' "no new majors" proclamation.
|
||||
Block: were 126 now 122 free, char: were 26 now 19 free.
|
||||
20020324 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Fixed bug in <devfs_alloc_unique_number>: was clearing beyond
|
||||
bitfield.
|
||||
20020326 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Fixed bitfield data type for <devfs_*alloc_devnum>.
|
||||
Made major bitfield type and initialiser 64 bit safe.
|
||||
20020413 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Fixed shift warning on 64 bit machines.
|
||||
20020428 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Copied and used macro for error messages from fs/devfs/base.c
|
||||
20021013 Richard Gooch <rgooch@atnf.csiro.au>
|
||||
Documentation fix.
|
||||
20030101 Adam J. Richter <adam@yggdrasil.com>
|
||||
Eliminate DEVFS_SPECIAL_{CHR,BLK}. Use mode_t instead.
|
||||
20030106 Christoph Hellwig <hch@infradead.org>
|
||||
Rewrite devfs_{,de}alloc_devnum to look like C code.
|
||||
*/
|
||||
#include <linux/module.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/devfs_fs_kernel.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/vmalloc.h>
|
||||
#include <linux/genhd.h>
|
||||
#include <linux/bitops.h>
|
||||
|
||||
int devfs_register_tape(const char *name)
|
||||
{
|
||||
char tname[32], dest[64];
|
||||
static unsigned int tape_counter;
|
||||
unsigned int n = tape_counter++;
|
||||
|
||||
sprintf(dest, "../%s", name);
|
||||
sprintf(tname, "tapes/tape%u", n);
|
||||
devfs_mk_symlink(tname, dest);
|
||||
|
||||
return n;
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(devfs_register_tape);
|
||||
|
||||
void devfs_unregister_tape(int num)
|
||||
{
|
||||
if (num >= 0)
|
||||
devfs_remove("tapes/tape%u", num);
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(devfs_unregister_tape);
|
@ -567,11 +567,6 @@ COMPATIBLE_IOCTL(AUTOFS_IOC_PROTOSUBVER)
|
||||
COMPATIBLE_IOCTL(AUTOFS_IOC_ASKREGHOST)
|
||||
COMPATIBLE_IOCTL(AUTOFS_IOC_TOGGLEREGHOST)
|
||||
COMPATIBLE_IOCTL(AUTOFS_IOC_ASKUMOUNT)
|
||||
/* DEVFS */
|
||||
COMPATIBLE_IOCTL(DEVFSDIOC_GET_PROTO_REV)
|
||||
COMPATIBLE_IOCTL(DEVFSDIOC_SET_EVENT_MASK)
|
||||
COMPATIBLE_IOCTL(DEVFSDIOC_RELEASE_EVENT_QUEUE)
|
||||
COMPATIBLE_IOCTL(DEVFSDIOC_SET_DEBUG_MASK)
|
||||
/* Raw devices */
|
||||
COMPATIBLE_IOCTL(RAW_SETBIND)
|
||||
COMPATIBLE_IOCTL(RAW_GETBIND)
|
||||
|
@ -1,41 +0,0 @@
|
||||
#ifndef _LINUX_DEVFS_FS_H
|
||||
#define _LINUX_DEVFS_FS_H
|
||||
|
||||
#include <linux/ioctl.h>
|
||||
|
||||
#define DEVFSD_PROTOCOL_REVISION_KERNEL 5
|
||||
|
||||
#define DEVFSD_IOCTL_BASE 'd'
|
||||
|
||||
/* These are the various ioctls */
|
||||
#define DEVFSDIOC_GET_PROTO_REV _IOR(DEVFSD_IOCTL_BASE, 0, int)
|
||||
#define DEVFSDIOC_SET_EVENT_MASK _IOW(DEVFSD_IOCTL_BASE, 2, int)
|
||||
#define DEVFSDIOC_RELEASE_EVENT_QUEUE _IOW(DEVFSD_IOCTL_BASE, 3, int)
|
||||
#define DEVFSDIOC_SET_DEBUG_MASK _IOW(DEVFSD_IOCTL_BASE, 4, int)
|
||||
|
||||
#define DEVFSD_NOTIFY_REGISTERED 0
|
||||
#define DEVFSD_NOTIFY_UNREGISTERED 1
|
||||
#define DEVFSD_NOTIFY_ASYNC_OPEN 2
|
||||
#define DEVFSD_NOTIFY_CLOSE 3
|
||||
#define DEVFSD_NOTIFY_LOOKUP 4
|
||||
#define DEVFSD_NOTIFY_CHANGE 5
|
||||
#define DEVFSD_NOTIFY_CREATE 6
|
||||
#define DEVFSD_NOTIFY_DELETE 7
|
||||
|
||||
#define DEVFS_PATHLEN 1024 /* Never change this otherwise the
|
||||
binary interface will change */
|
||||
|
||||
struct devfsd_notify_struct { /* Use native C types to ensure same types in kernel and user space */
|
||||
unsigned int type; /* DEVFSD_NOTIFY_* value */
|
||||
unsigned int mode; /* Mode of the inode or device entry */
|
||||
unsigned int major; /* Major number of device entry */
|
||||
unsigned int minor; /* Minor number of device entry */
|
||||
unsigned int uid; /* Uid of process, inode or device entry */
|
||||
unsigned int gid; /* Gid of process, inode or device entry */
|
||||
unsigned int overrun_count; /* Number of lost events */
|
||||
unsigned int namelen; /* Number of characters not including '\0' */
|
||||
/* The device name MUST come last */
|
||||
char devname[DEVFS_PATHLEN]; /* This will be '\0' terminated */
|
||||
};
|
||||
|
||||
#endif /* _LINUX_DEVFS_FS_H */
|
@ -4,25 +4,8 @@
|
||||
#include <linux/fs.h>
|
||||
#include <linux/spinlock.h>
|
||||
#include <linux/types.h>
|
||||
|
||||
#include <asm/semaphore.h>
|
||||
|
||||
#define DEVFS_SUPER_MAGIC 0x1373
|
||||
|
||||
#ifdef CONFIG_DEVFS_FS
|
||||
extern int devfs_mk_bdev(dev_t dev, umode_t mode, const char *fmt, ...)
|
||||
__attribute__ ((format(printf, 3, 4)));
|
||||
extern int devfs_mk_cdev(dev_t dev, umode_t mode, const char *fmt, ...)
|
||||
__attribute__ ((format(printf, 3, 4)));
|
||||
extern int devfs_mk_symlink(const char *name, const char *link);
|
||||
extern int devfs_mk_dir(const char *fmt, ...)
|
||||
__attribute__ ((format(printf, 1, 2)));
|
||||
extern void devfs_remove(const char *fmt, ...)
|
||||
__attribute__ ((format(printf, 1, 2)));
|
||||
extern int devfs_register_tape(const char *name);
|
||||
extern void devfs_unregister_tape(int num);
|
||||
extern void mount_devfs_fs(void);
|
||||
#else /* CONFIG_DEVFS_FS */
|
||||
static inline int devfs_mk_bdev(dev_t dev, umode_t mode, const char *fmt, ...)
|
||||
{
|
||||
return 0;
|
||||
@ -53,5 +36,4 @@ static inline void mount_devfs_fs(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
#endif /* CONFIG_DEVFS_FS */
|
||||
#endif /* _LINUX_DEVFS_FS_KERNEL_H */
|
||||
|
Loading…
x
Reference in New Issue
Block a user