diff options
Diffstat (limited to 'recipes/linux-uml/linux-uml-2.4.26')
12 files changed, 1005 insertions, 0 deletions
diff --git a/recipes/linux-uml/linux-uml-2.4.26/01-CONFIG_X86_CMPXCHG.patch-2 b/recipes/linux-uml/linux-uml-2.4.26/01-CONFIG_X86_CMPXCHG.patch-2 new file mode 100644 index 0000000000..94003d0aa0 --- /dev/null +++ b/recipes/linux-uml/linux-uml-2.4.26/01-CONFIG_X86_CMPXCHG.patch-2 @@ -0,0 +1,15 @@ +Index: linux-2.4.24-2/arch/um/config.in +--- linux-2.4.24-2/arch/um/config.in 7 Apr 2004 20:44:02 -0000 1.56 ++++ linux-2.4.24-2/arch/um/config.in 17 May 2004 18:35:49 -0000 +@@ -8,6 +8,11 @@ + + define_bool CONFIG_UID16 y + ++# define_bool CONFIG_X86_CMPXCHG y ++# define_bool CONFIG_X86_XADD y ++# define_bool CONFIG_X86_BSWAP y ++# define_bool CONFIG_X86_POPAD_OK y ++ + define_bool CONFIG_RWSEM_XCHGADD_ALGORITHM y + + mainmenu_option next_comment diff --git a/recipes/linux-uml/linux-uml-2.4.26/02-config_cleanup.patch b/recipes/linux-uml/linux-uml-2.4.26/02-config_cleanup.patch new file mode 100644 index 0000000000..87b4476790 --- /dev/null +++ b/recipes/linux-uml/linux-uml-2.4.26/02-config_cleanup.patch @@ -0,0 +1,127 @@ +Index: linux-2.4.24-2/arch/um/config.in +--- linux-2.4.24-2/arch/um/config.in 7 Apr 2004 20:44:02 -0000 1.56 ++++ linux-2.4.24-2/arch/um/config.in 17 May 2004 18:35:49 -0000 +@@ -16,6 +21,16 @@ + endmenu + + mainmenu_option next_comment ++comment 'Loadable module support' ++bool 'Enable loadable module support' CONFIG_MODULES ++if [ "$CONFIG_MODULES" = "y" ]; then ++# MODVERSIONS does not yet work in this architecture ++# bool ' Set version information on all module symbols' CONFIG_MODVERSIONS ++ bool ' Kernel module loader' CONFIG_KMOD ++fi ++endmenu ++ ++mainmenu_option next_comment + comment 'General Setup' + + bool 'Separate kernel address space support' CONFIG_MODE_SKAS +@@ -59,28 +74,17 @@ + bool 'Real-time Clock' CONFIG_UML_REAL_TIME_CLOCK + endmenu + +-mainmenu_option next_comment +-comment 'Loadable module support' +-bool 'Enable loadable module support' CONFIG_MODULES +-if [ "$CONFIG_MODULES" = "y" ]; then +-# MODVERSIONS does not yet work in this architecture +-# bool ' Set version information on all module symbols' CONFIG_MODVERSIONS +- bool ' Kernel module loader' CONFIG_KMOD ++if [ "$CONFIG_NET" = "y" ]; then ++ source net/Config.in + fi +-endmenu + + source arch/um/config_char.in + + source arch/um/config_block.in + +-define_bool CONFIG_NETDEVICES $CONFIG_NET +- +-if [ "$CONFIG_NET" = "y" ]; then +- source arch/um/config_net.in +- source net/Config.in +-fi ++source drivers/mtd/Config.in + +-source fs/Config.in ++source drivers/md/Config.in + + mainmenu_option next_comment + comment 'SCSI support' +@@ -92,11 +96,19 @@ + fi + endmenu + +-source drivers/md/Config.in ++if [ "$CONFIG_NET" = "y" ]; then ++ mainmenu_option next_comment ++ comment 'Network Devices' + +-source drivers/mtd/Config.in ++ bool 'Network device support' CONFIG_NETDEVICES ++ if [ "$CONFIG_NETDEVICES" = "y" ]; then ++ source arch/um/config_net.in ++ fi ++ endmenu ++fi ++ ++source fs/Config.in + +-source lib/Config.in + + mainmenu_option next_comment + comment 'Kernel hacking' +@@ -110,3 +122,6 @@ + dep_bool 'Enable gprof support' CONFIG_GPROF $CONFIG_DEBUGSYM + dep_bool 'Enable gcov support' CONFIG_GCOV $CONFIG_DEBUGSYM + endmenu ++ ++source crypto/Config.in ++source lib/Config.in +Index: linux-2.4.24-2/arch/um/config_net.in +--- linux-2.4.24-2/arch/um/config_net.in 7 Apr 2004 20:42:33 -0000 1.4 ++++ linux-2.4.24-2/arch/um/config_net.in 17 May 2004 18:35:49 -0000 +@@ -1,6 +1,3 @@ +-mainmenu_option next_comment +-comment 'Network Devices' +- + # UML virtual driver + bool 'Virtual network device' CONFIG_UML_NET + +@@ -44,5 +45,3 @@ + dep_bool ' CSLIP compressed headers' CONFIG_SLIP_COMPRESSED $CONFIG_SLIP + dep_bool ' Keepalive and linefill' CONFIG_SLIP_SMART $CONFIG_SLIP + dep_bool ' Six bit SLIP encapsulation' CONFIG_SLIP_MODE_SLIP6 $CONFIG_SLIP +- +-endmenu +Index: linux-2.4.24-2/arch/um/drivers/Makefile +--- linux-2.4.24-2/arch/um/drivers/Makefile 16 Feb 2004 00:09:07 -0000 1.50 ++++ linux-2.4.24-2/arch/um/drivers/Makefile 17 May 2004 18:35:49 -0000 +@@ -27,6 +27,7 @@ + + obj-y = + obj-$(CONFIG_SSL) += ssl.o ++obj-$(CONFIG_STDIO_CONSOLE) += stdio_console.o + obj-$(CONFIG_UML_NET_SLIP) += slip.o + obj-$(CONFIG_UML_NET_SLIRP) += slirp.o + obj-$(CONFIG_UML_NET_DAEMON) += daemon.o +@@ -49,7 +54,7 @@ + + CFLAGS_pcap_user.o = -I/usr/include/pcap + +-obj-y += stdio_console.o $(CHAN_OBJS) ++obj-y += $(CHAN_OBJS) + + USER_SINGLE_OBJS = $(foreach f,$(patsubst %.o,%,$(obj-y) $(obj-m)),$($(f)-objs)) + +@@ -62,6 +71,7 @@ + $(CC) $(CFLAGS_$@) $(USER_CFLAGS) -c -o $@ $< + + clean: ++ rm -f $(OBJS) $(export-objs) + + modules: + diff --git a/recipes/linux-uml/linux-uml-2.4.26/07-mconsole_dir_cleanup.patch b/recipes/linux-uml/linux-uml-2.4.26/07-mconsole_dir_cleanup.patch new file mode 100644 index 0000000000..280f0941c4 --- /dev/null +++ b/recipes/linux-uml/linux-uml-2.4.26/07-mconsole_dir_cleanup.patch @@ -0,0 +1,11 @@ +Index: linux-2.4.24-2/arch/um/kernel/umid.c +--- linux-2.4.24-2/arch/um/kernel/umid.c 16 Feb 2004 00:10:11 -0000 1.21 ++++ linux-2.4.24-2/arch/um/kernel/umid.c 17 May 2004 18:35:49 -0000 +@@ -151,6 +151,7 @@ + + sprintf(dir, "%s%s", uml_dir, umid); + actually_do_remove(dir); ++ rmdir(uml_dir); + } + + char *get_umid(int only_if_set) diff --git a/recipes/linux-uml/linux-uml-2.4.26/10-flock.patch b/recipes/linux-uml/linux-uml-2.4.26/10-flock.patch new file mode 100644 index 0000000000..c64b34d8be --- /dev/null +++ b/recipes/linux-uml/linux-uml-2.4.26/10-flock.patch @@ -0,0 +1,33 @@ +Index: linux-2.4.24-2/arch/um/os-Linux/file.c +--- linux-2.4.24-2/arch/um/os-Linux/file.c 7 Apr 2004 20:44:49 -0000 1.29 ++++ linux-2.4.24-2/arch/um/os-Linux/file.c 17 May 2004 18:35:49 -0000 +@@ -688,6 +688,7 @@ + + int os_lock_file(int fd, int excl) + { ++#if USE_FCNTL_LOCK + int type = excl ? F_WRLCK : F_RDLCK; + struct flock lock = ((struct flock) { .l_type = type, + .l_whence = SEEK_SET, +@@ -710,6 +711,21 @@ + err = save; + out: + return(err); ++#else ++ int type = excl ? LOCK_EX : LOCK_SH; ++ int err, save; ++ ++ err = flock(fd, type | LOCK_NB); ++ if(!err) ++ goto out; ++ ++ save = -errno; ++ ++ printk("file already locked\n"); ++ err = save; ++ out: ++ return(err); ++#endif + } + + int os_ftruncate(int fd, __u64 size) diff --git a/recipes/linux-uml/linux-uml-2.4.26/11-usr1_process_tkill.patch b/recipes/linux-uml/linux-uml-2.4.26/11-usr1_process_tkill.patch new file mode 100644 index 0000000000..d339746c6a --- /dev/null +++ b/recipes/linux-uml/linux-uml-2.4.26/11-usr1_process_tkill.patch @@ -0,0 +1,21 @@ +Index: linux-2.4.24-2/arch/um/os-Linux/process.c +--- linux-2.4.24-2/arch/um/os-Linux/process.c 19 Jan 2004 21:02:20 -0000 1.8 ++++ linux-2.4.24-2/arch/um/os-Linux/process.c 17 May 2004 18:35:49 -0000 +@@ -7,6 +7,7 @@ + #include <stdio.h> + #include <errno.h> + #include <signal.h> ++#include <linux/unistd.h> + #include <sys/mman.h> + #include <sys/wait.h> + #include "os.h" +@@ -92,7 +93,8 @@ + + void os_usr1_process(int pid) + { +- kill(pid, SIGUSR1); ++ if (syscall(__NR_tkill, pid, SIGUSR1) < 0) ++ kill(pid, SIGUSR1); + } + + int os_getpid(void) diff --git a/recipes/linux-uml/linux-uml-2.4.26/12-hostfs.patch b/recipes/linux-uml/linux-uml-2.4.26/12-hostfs.patch new file mode 100644 index 0000000000..124f975650 --- /dev/null +++ b/recipes/linux-uml/linux-uml-2.4.26/12-hostfs.patch @@ -0,0 +1,109 @@ +diff -ru linux-2.4.26-1.orig/arch/um/fs/hostfs/externfs.c linux-2.4.26-1.hno/arch/um/fs/hostfs/externfs.c +--- linux-2.4.26-1.orig/arch/um/fs/hostfs/externfs.c Mon May 17 23:36:17 2004 ++++ linux-2.4.26-1.hno/arch/um/fs/hostfs/externfs.c Tue May 18 00:10:42 2004 +@@ -1133,7 +1133,7 @@ + if((mount_arg != NULL) && (*mount_arg != '\0')) + root = mount_arg; + +- return(uml_strdup(mount_arg)); ++ return(uml_strdup(root)); + } + + struct super_block *hostfs_read_super(struct super_block *sb, void *data, +diff -ru linux-2.4.26-1.orig/arch/um/fs/hostfs/host_file.c linux-2.4.26-1.hno/arch/um/fs/hostfs/host_file.c +--- linux-2.4.26-1.orig/arch/um/fs/hostfs/host_file.c Mon May 17 23:36:17 2004 ++++ linux-2.4.26-1.hno/arch/um/fs/hostfs/host_file.c Tue May 18 11:40:47 2004 +@@ -72,28 +72,21 @@ + { + char tmp[HOSTFS_BUFSIZE], *file; + int mode = 0, err; ++ struct openflags flags = OPENFLAGS(); + +- if(r && !w) +- mode = O_RDONLY; +- else if(!r && w) +- mode = O_WRONLY; +- else if(r && w) +- mode = O_RDWR; +- else { +- printk("Impossible mode in host_open_file - r = %d, w = %d", +- r, w); +- return(-EINVAL); +- } +- ++ if (r) ++ flags = of_read(flags); ++ if (w) ++ flags = of_write(flags); + if(append) +- mode |= O_APPEND; ++ flags = of_append(flags); + + err = -ENOMEM; + file = get_path(path, tmp, sizeof(tmp)); + if(file == NULL) + goto out; + +- err = open_filehandle(file, of_create(of_rdwr(OPENFLAGS())), mode, fh); ++ err = open_filehandle(file, flags, 0, fh); + out: + free_path(file, tmp); + return(err); +diff -ru linux-2.4.26-1.orig/arch/um/fs/hostfs/host_fs.c linux-2.4.26-1.hno/arch/um/fs/hostfs/host_fs.c +--- linux-2.4.26-1.orig/arch/um/fs/hostfs/host_fs.c Mon May 17 23:36:17 2004 ++++ linux-2.4.26-1.hno/arch/um/fs/hostfs/host_fs.c Tue May 18 11:38:51 2004 +@@ -111,10 +111,14 @@ + { + const char *path[] = { jail_dir, mount, file, NULL }; + int uid; ++ int gid; ++ int rc; + ++ /* These should be mount flags from an internal "superblock" */ + *uid_out = 0; ++ *gid_out = 0; + return(host_stat_file(path, dev_out, inode_out, mode_out, nlink_out, +- &uid, gid_out, size_out, atime_out, mtime_out, ++ &uid, &gid, size_out, atime_out, mtime_out, + ctime_out, blksize_out, blocks_out)); + } + +@@ -138,6 +142,12 @@ + goto out; + + err = host_open_file(path, 1, 1, fh); ++ if (err == -EISDIR) { ++ kfree(fh); ++ return NULL; ++ } ++ if (err == -EPERM) ++ err = host_open_file(path, 1, 0, fh); + if(err) + goto out_free; + +@@ -175,10 +185,9 @@ + len - ignore_end); + + out: +- if(err < 0) +- (*completion)(buf, err, arg); +- else err = 0; +- ++ (*completion)(buf, err, arg); ++ if (err > 0) ++ err = 0; + return(err); + } + +@@ -191,8 +200,9 @@ + + err = write_file(fh, offset + start, buf + start, len); + +- if(err < 0) +- (*completion)((char *) buf, err, arg); ++ (*completion)((char *) buf, err, arg); ++ if (err > 0) ++ err = 0; + return(err); + } + diff --git a/recipes/linux-uml/linux-uml-2.4.26/13-hostfs_access.patch b/recipes/linux-uml/linux-uml-2.4.26/13-hostfs_access.patch new file mode 100644 index 0000000000..914c5468f0 --- /dev/null +++ b/recipes/linux-uml/linux-uml-2.4.26/13-hostfs_access.patch @@ -0,0 +1,11 @@ +--- linux-2.4.26-umlhipac/arch/um/fs/hostfs/externfs.c.orig Tue May 18 00:10:42 2004 ++++ linux-2.4.26-umlhipac/arch/um/fs/hostfs/externfs.c Thu May 20 21:12:54 2004 +@@ -961,7 +961,7 @@ + if(name == NULL) + return(-ENOMEM); + +- err = (*ops->access_file)(name, r, w, x, current->fsuid, current->fsgid, ++ err = (*ops->access_file)(name, current->fsuid, current->fsgid, r, w, x, + mount); + kfree(name); + diff --git a/recipes/linux-uml/linux-uml-2.4.26/aio_abi.h b/recipes/linux-uml/linux-uml-2.4.26/aio_abi.h new file mode 100644 index 0000000000..e7fc6b234e --- /dev/null +++ b/recipes/linux-uml/linux-uml-2.4.26/aio_abi.h @@ -0,0 +1,92 @@ +/* linux/aio_abi.h + * + * Copyright 2000,2001,2002 Red Hat. + * + * Written by Benjamin LaHaise <bcrl@redhat.com> + * + * Distribute under the terms of the GPLv2 (see ../../COPYING) or under + * the following terms. + * + * Permission to use, copy, modify, and distribute this software and its + * documentation is hereby granted, provided that the above copyright + * notice appears in all copies. This software is provided without any + * warranty, express or implied. Red Hat makes no representations about + * the suitability of this software for any purpose. + * + * IN NO EVENT SHALL RED HAT BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, + * SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF + * THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF RED HAT HAS BEEN ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + * RED HAT DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND + * RED HAT HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, + * ENHANCEMENTS, OR MODIFICATIONS. + */ +#ifndef __LINUX__AIO_ABI_H +#define __LINUX__AIO_ABI_H + +#include <asm/byteorder.h> + +typedef unsigned long aio_context_t; + +enum { + IOCB_CMD_PREAD = 0, + IOCB_CMD_PWRITE = 1, + IOCB_CMD_FSYNC = 2, + IOCB_CMD_FDSYNC = 3, + /* These two are experimental. + * IOCB_CMD_PREADX = 4, + * IOCB_CMD_POLL = 5, + */ + IOCB_CMD_NOOP = 6, +}; + +/* read() from /dev/aio returns these structures. */ +struct io_event { + __u64 data; /* the data field from the iocb */ + __u64 obj; /* what iocb this event came from */ + __s64 res; /* result code for this event */ + __s64 res2; /* secondary result */ +}; + +#if defined(__LITTLE_ENDIAN) +#define PADDED(x,y) x, y +#elif defined(__BIG_ENDIAN) +#define PADDED(x,y) y, x +#else +#error edit for your odd byteorder. +#endif + +/* + * we always use a 64bit off_t when communicating + * with userland. its up to libraries to do the + * proper padding and aio_error abstraction + */ + +struct iocb { + /* these are internal to the kernel/libc. */ + __u64 aio_data; /* data to be returned in event's data */ + __u32 PADDED(aio_key, aio_reserved1); + /* the kernel sets aio_key to the req # */ + + /* common fields */ + __u16 aio_lio_opcode; /* see IOCB_CMD_ above */ + __s16 aio_reqprio; + __u32 aio_fildes; + + __u64 aio_buf; + __u64 aio_nbytes; + __s64 aio_offset; + + /* extra parameters */ + __u64 aio_reserved2; /* TODO: use this for a (struct sigevent *) */ + __u64 aio_reserved3; +}; /* 64 bytes */ + +#undef IFBIG +#undef IFLITTLE + +#endif /* __LINUX__AIO_ABI_H */ + diff --git a/recipes/linux-uml/linux-uml-2.4.26/defconfig b/recipes/linux-uml/linux-uml-2.4.26/defconfig new file mode 100644 index 0000000000..b4030b532c --- /dev/null +++ b/recipes/linux-uml/linux-uml-2.4.26/defconfig @@ -0,0 +1,430 @@ +# +# Automatically generated make config: don't edit +# +CONFIG_USERMODE=y +# CONFIG_ISA is not set +# CONFIG_SBUS is not set +# CONFIG_PCI is not set +CONFIG_UID16=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y + +# +# Code maturity level options +# +CONFIG_EXPERIMENTAL=y + +# +# General Setup +# +CONFIG_MODE_SKAS=y +CONFIG_MODE_TT=y +CONFIG_NET=y +CONFIG_SYSVIPC=y +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_SYSCTL=y +CONFIG_BINFMT_AOUT=y +CONFIG_BINFMT_ELF=y +CONFIG_BINFMT_MISC=y +CONFIG_HOSTFS=y +CONFIG_HUMFS=y +CONFIG_EXTERNFS=y +CONFIG_HPPFS=y +CONFIG_MCONSOLE=y +CONFIG_MAGIC_SYSRQ=y +# CONFIG_HOST_2G_2G is not set +# CONFIG_UML_SMP is not set +# CONFIG_SMP is not set +CONFIG_NEST_LEVEL=0 +CONFIG_KERNEL_HALF_GIGS=1 +# CONFIG_HIGHMEM is not set +CONFIG_PROC_MM=y +CONFIG_KERNEL_STACK_ORDER=2 +CONFIG_UML_REAL_TIME_CLOCK=y + +# +# Loadable module support +# +CONFIG_MODULES=y +# CONFIG_KMOD is not set + +# +# Character Devices +# +CONFIG_STDIO_CONSOLE=y +CONFIG_SSL=y +CONFIG_FD_CHAN=y +CONFIG_NULL_CHAN=y +CONFIG_PORT_CHAN=y +CONFIG_PTY_CHAN=y +CONFIG_TTY_CHAN=y +CONFIG_XTERM_CHAN=y +CONFIG_CON_ZERO_CHAN="fd:0,fd:1" +CONFIG_CON_CHAN="xterm" +CONFIG_SSL_CHAN="pty" +CONFIG_UNIX98_PTYS=y +CONFIG_UNIX98_PTY_COUNT=256 +# CONFIG_WATCHDOG is not set +# CONFIG_WATCHDOG_NOWAYOUT is not set +# CONFIG_SOFT_WATCHDOG is not set +# CONFIG_UML_WATCHDOG is not set +CONFIG_UML_SOUND=y +CONFIG_SOUND=y +CONFIG_HOSTAUDIO=y +# CONFIG_TTY_LOG is not set + +# +# Block Devices +# +CONFIG_BLK_DEV_UBD=y +# CONFIG_BLK_DEV_UBD_SYNC is not set +# CONFIG_COW is not set +CONFIG_COW_COMMON=y +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_NBD=y +CONFIG_BLK_DEV_RAM=y +CONFIG_BLK_DEV_RAM_SIZE=4096 +CONFIG_BLK_DEV_INITRD=y +# CONFIG_MMAPPER is not set +CONFIG_NETDEVICES=y + +# +# Network Devices +# +CONFIG_UML_NET=y +CONFIG_UML_NET_ETHERTAP=y +CONFIG_UML_NET_TUNTAP=y +CONFIG_UML_NET_SLIP=y +CONFIG_UML_NET_SLIRP=y +CONFIG_UML_NET_DAEMON=y +CONFIG_UML_NET_MCAST=y +# CONFIG_UML_NET_PCAP is not set +CONFIG_DUMMY=y +# CONFIG_BONDING is not set +# CONFIG_EQUALIZER is not set +CONFIG_TUN=y +CONFIG_PPP=y +# CONFIG_PPP_MULTILINK is not set +# CONFIG_PPP_FILTER is not set +# CONFIG_PPP_ASYNC is not set +# CONFIG_PPP_SYNC_TTY is not set +# CONFIG_PPP_DEFLATE is not set +# CONFIG_PPP_BSDCOMP is not set +# CONFIG_PPPOE is not set +# CONFIG_PPP_MPPE is not set +CONFIG_SLIP=y +# CONFIG_SLIP_COMPRESSED is not set +# CONFIG_SLIP_SMART is not set +# CONFIG_SLIP_MODE_SLIP6 is not set + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_MMAP=y +# CONFIG_NETLINK_DEV is not set +# CONFIG_NETFILTER is not set +# CONFIG_FILTER is not set +CONFIG_UNIX=y +CONFIG_INET=y +# CONFIG_IP_MULTICAST is not set +# CONFIG_IP_ADVANCED_ROUTER is not set +# CONFIG_IP_PNP is not set +# CONFIG_NET_IPIP is not set +# CONFIG_NET_IPGRE is not set +# CONFIG_ARPD is not set +# CONFIG_INET_ECN is not set +# CONFIG_SYN_COOKIES is not set +# CONFIG_IPV6 is not set +# CONFIG_KHTTPD is not set + +# +# SCTP Configuration (EXPERIMENTAL) +# +CONFIG_IPV6_SCTP__=y +# CONFIG_IP_SCTP is not set +# CONFIG_ATM is not set +# CONFIG_VLAN_8021Q is not set + +# +# +# +# CONFIG_IPX is not set +# CONFIG_ATALK is not set + +# +# Appletalk devices +# +# CONFIG_DEV_APPLETALK is not set +# CONFIG_DECNET is not set +# CONFIG_BRIDGE is not set +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +# CONFIG_LLC is not set +# CONFIG_NET_DIVERT is not set +# CONFIG_ECONET is not set +# CONFIG_WAN_ROUTER is not set +# CONFIG_NET_FASTROUTE is not set +# CONFIG_NET_HW_FLOWCONTROL is not set + +# +# QoS and/or fair queueing +# +# CONFIG_NET_SCHED is not set + +# +# Network testing +# +# CONFIG_NET_PKTGEN is not set + +# +# File systems +# +CONFIG_QUOTA=y +# CONFIG_QFMT_V2 is not set +CONFIG_AUTOFS_FS=y +CONFIG_AUTOFS4_FS=y +CONFIG_REISERFS_FS=y +# CONFIG_REISERFS_CHECK is not set +# CONFIG_REISERFS_PROC_INFO is not set +# CONFIG_ADFS_FS is not set +# CONFIG_ADFS_FS_RW is not set +# CONFIG_AFFS_FS is not set +# CONFIG_HFS_FS is not set +# CONFIG_HFSPLUS_FS is not set +# CONFIG_BEFS_FS is not set +# CONFIG_BEFS_DEBUG is not set +# CONFIG_BFS_FS is not set +# CONFIG_EXT3_FS is not set +# CONFIG_JBD is not set +# CONFIG_JBD_DEBUG is not set +CONFIG_FAT_FS=y +CONFIG_MSDOS_FS=y +CONFIG_UMSDOS_FS=y +CONFIG_VFAT_FS=y +# CONFIG_EFS_FS is not set +CONFIG_JFFS_FS=y +CONFIG_JFFS_FS_VERBOSE=0 +CONFIG_JFFS_PROC_FS=y +CONFIG_JFFS2_FS=y +CONFIG_JFFS2_FS_DEBUG=0 +# CONFIG_CRAMFS is not set +# CONFIG_TMPFS is not set +CONFIG_RAMFS=y +CONFIG_ISO9660_FS=y +# CONFIG_JOLIET is not set +# CONFIG_ZISOFS is not set +# CONFIG_JFS_FS is not set +# CONFIG_JFS_DEBUG is not set +# CONFIG_JFS_STATISTICS is not set +CONFIG_MINIX_FS=y +# CONFIG_VXFS_FS is not set +# CONFIG_NTFS_FS is not set +# CONFIG_NTFS_RW is not set +# CONFIG_HPFS_FS is not set +CONFIG_PROC_FS=y +CONFIG_DEVFS_FS=y +CONFIG_DEVFS_MOUNT=y +# CONFIG_DEVFS_DEBUG is not set +CONFIG_DEVPTS_FS=y +# CONFIG_QNX4FS_FS is not set +# CONFIG_QNX4FS_RW is not set +# CONFIG_ROMFS_FS is not set +CONFIG_EXT2_FS=y +# CONFIG_SYSV_FS is not set +# CONFIG_UDF_FS is not set +# CONFIG_UDF_RW is not set +# CONFIG_UFS_FS is not set +# CONFIG_UFS_FS_WRITE is not set +# CONFIG_XFS_FS is not set +# CONFIG_XFS_QUOTA is not set +# CONFIG_XFS_RT is not set +# CONFIG_XFS_TRACE is not set +# CONFIG_XFS_DEBUG is not set + +# +# Network File Systems +# +# CONFIG_CODA_FS is not set +# CONFIG_INTERMEZZO_FS is not set +# CONFIG_NFS_FS is not set +# CONFIG_NFS_V3 is not set +# CONFIG_NFS_DIRECTIO is not set +# CONFIG_ROOT_NFS is not set +# CONFIG_NFSD is not set +# CONFIG_NFSD_V3 is not set +# CONFIG_NFSD_TCP is not set +# CONFIG_SUNRPC is not set +# CONFIG_LOCKD is not set +# CONFIG_SMB_FS is not set +# CONFIG_NCP_FS is not set +# CONFIG_NCPFS_PACKET_SIGNING is not set +# CONFIG_NCPFS_IOCTL_LOCKING is not set +# CONFIG_NCPFS_STRONG is not set +# CONFIG_NCPFS_NFS_NS is not set +# CONFIG_NCPFS_OS2_NS is not set +# CONFIG_NCPFS_SMALLDOS is not set +# CONFIG_NCPFS_NLS is not set +# CONFIG_NCPFS_EXTRAS is not set +# CONFIG_ZISOFS_FS is not set + +# +# Partition Types +# +# CONFIG_PARTITION_ADVANCED is not set +CONFIG_MSDOS_PARTITION=y +# CONFIG_SMB_NLS is not set +CONFIG_NLS=y + +# +# Native Language Support +# +CONFIG_NLS_DEFAULT="iso8859-1" +# CONFIG_NLS_CODEPAGE_437 is not set +# CONFIG_NLS_CODEPAGE_737 is not set +# CONFIG_NLS_CODEPAGE_775 is not set +# CONFIG_NLS_CODEPAGE_850 is not set +# CONFIG_NLS_CODEPAGE_852 is not set +# CONFIG_NLS_CODEPAGE_855 is not set +# CONFIG_NLS_CODEPAGE_857 is not set +# CONFIG_NLS_CODEPAGE_860 is not set +# CONFIG_NLS_CODEPAGE_861 is not set +# CONFIG_NLS_CODEPAGE_862 is not set +# CONFIG_NLS_CODEPAGE_863 is not set +# CONFIG_NLS_CODEPAGE_864 is not set +# CONFIG_NLS_CODEPAGE_865 is not set +# CONFIG_NLS_CODEPAGE_866 is not set +# CONFIG_NLS_CODEPAGE_869 is not set +# CONFIG_NLS_CODEPAGE_936 is not set +# CONFIG_NLS_CODEPAGE_950 is not set +# CONFIG_NLS_CODEPAGE_932 is not set +# CONFIG_NLS_CODEPAGE_949 is not set +# CONFIG_NLS_CODEPAGE_874 is not set +# CONFIG_NLS_ISO8859_8 is not set +# CONFIG_NLS_CODEPAGE_1250 is not set +# CONFIG_NLS_CODEPAGE_1251 is not set +# CONFIG_NLS_ISO8859_1 is not set +# CONFIG_NLS_ISO8859_2 is not set +# CONFIG_NLS_ISO8859_3 is not set +# CONFIG_NLS_ISO8859_4 is not set +# CONFIG_NLS_ISO8859_5 is not set +# CONFIG_NLS_ISO8859_6 is not set +# CONFIG_NLS_ISO8859_7 is not set +# CONFIG_NLS_ISO8859_9 is not set +# CONFIG_NLS_ISO8859_13 is not set +# CONFIG_NLS_ISO8859_14 is not set +# CONFIG_NLS_ISO8859_15 is not set +# CONFIG_NLS_KOI8_R is not set +# CONFIG_NLS_KOI8_U is not set +# CONFIG_NLS_UTF8 is not set + +# +# SCSI support +# +CONFIG_SCSI=y + +# +# SCSI support type (disk, tape, CD-ROM) +# +# CONFIG_BLK_DEV_SD is not set +# CONFIG_CHR_DEV_ST is not set +# CONFIG_BLK_DEV_SR is not set +# CONFIG_CHR_DEV_SG is not set + +# +# Some SCSI devices (e.g. CD jukebox) support multiple LUNs +# +# CONFIG_SCSI_DEBUG_QUEUES is not set +# CONFIG_SCSI_MULTI_LUN is not set +# CONFIG_SCSI_CONSTANTS is not set +# CONFIG_SCSI_LOGGING is not set +CONFIG_SCSI_DEBUG=y + +# +# Multi-device support (RAID and LVM) +# +# CONFIG_MD is not set +# CONFIG_BLK_DEV_MD is not set +# CONFIG_MD_LINEAR is not set +# CONFIG_MD_RAID0 is not set +# CONFIG_MD_RAID1 is not set +# CONFIG_MD_RAID5 is not set +# CONFIG_MD_MULTIPATH is not set +# CONFIG_BLK_DEV_LVM is not set + +# +# Memory Technology Devices (MTD) +# +CONFIG_MTD=y +# CONFIG_MTD_DEBUG is not set +# CONFIG_MTD_PARTITIONS is not set +# CONFIG_MTD_CONCAT is not set +# CONFIG_MTD_REDBOOT_PARTS is not set +# CONFIG_MTD_CMDLINE_PARTS is not set + +# +# User Modules And Translation Layers +# +CONFIG_MTD_CHAR=y +CONFIG_MTD_BLOCK=y +# CONFIG_FTL is not set +# CONFIG_NFTL is not set + +# +# RAM/ROM/Flash chip drivers +# +# CONFIG_MTD_CFI is not set +# CONFIG_MTD_JEDECPROBE is not set +# CONFIG_MTD_GEN_PROBE is not set +# CONFIG_MTD_CFI_INTELEXT is not set +# CONFIG_MTD_CFI_AMDSTD is not set +# CONFIG_MTD_CFI_STAA is not set +# CONFIG_MTD_RAM is not set +# CONFIG_MTD_ROM is not set +# CONFIG_MTD_ABSENT is not set +# CONFIG_MTD_OBSOLETE_CHIPS is not set +# CONFIG_MTD_AMDSTD is not set +# CONFIG_MTD_SHARP is not set +# CONFIG_MTD_JEDEC is not set + +# +# Mapping drivers for chip access +# +# CONFIG_MTD_PHYSMAP is not set +# CONFIG_MTD_PCI is not set +# CONFIG_MTD_PCMCIA is not set + +# +# Self-contained MTD device drivers +# +# CONFIG_MTD_PMC551 is not set +# CONFIG_MTD_SLRAM is not set +# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_BLKMTD=y + +# +# Disk-On-Chip Device Drivers +# +# CONFIG_MTD_DOC1000 is not set +# CONFIG_MTD_DOC2000 is not set +# CONFIG_MTD_DOC2001 is not set +# CONFIG_MTD_DOCPROBE is not set + +# +# NAND Flash Device Drivers +# +# CONFIG_MTD_NAND is not set + +# +# Library routines +# +# CONFIG_CRC32 is not set +CONFIG_ZLIB_INFLATE=y +CONFIG_ZLIB_DEFLATE=y + +# +# Kernel hacking +# +# CONFIG_DEBUG_SLAB is not set +CONFIG_DEBUGSYM=y +CONFIG_PT_PROXY=y +# CONFIG_GCOV is not set diff --git a/recipes/linux-uml/linux-uml-2.4.26/disable-aio-check.patch b/recipes/linux-uml/linux-uml-2.4.26/disable-aio-check.patch new file mode 100644 index 0000000000..c71fba1316 --- /dev/null +++ b/recipes/linux-uml/linux-uml-2.4.26/disable-aio-check.patch @@ -0,0 +1,20 @@ + +# +# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher +# + +--- linux-2.4.26/arch/um/os-Linux/Makefile~disable-aio-check 2004-05-21 10:47:13.000000000 +0200 ++++ linux-2.4.26/arch/um/os-Linux/Makefile 2004-05-21 10:52:28.000000000 +0200 +@@ -7,10 +7,8 @@ + + obj-y = aio.o file.o process.o time.o tty.o + +-HAVE_AIO_ABI = $(shell [ -e /usr/include/linux/aio_abi.h ] && \ +- echo -DHAVE_AIO_ABI) +-HAVE_AIO_LIBC = $(shell objdump -T /lib/libc-*.so | grep io_submit && \ +- echo -DHAVE_AIO_LIBC) ++HAVE_AIO_ABI = $(shell echo -UHAVE_AIO_ABI) ++HAVE_AIO_LIBC = $(shell echo -UHAVE_AIO_LIBC) + CFLAGS_aio.o = $(HAVE_AIO_ABI) $(HAVE_AIO_LIBC) + + include $(TOPDIR)/Rules.make diff --git a/recipes/linux-uml/linux-uml-2.4.26/fix-includes.patch b/recipes/linux-uml/linux-uml-2.4.26/fix-includes.patch new file mode 100644 index 0000000000..a6a0260320 --- /dev/null +++ b/recipes/linux-uml/linux-uml-2.4.26/fix-includes.patch @@ -0,0 +1,26 @@ + +# +# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher +# + +--- linux-2.4.21/arch/um/Makefile~remove-bogus-includes 2004-02-01 15:44:08.000000000 +0100 ++++ linux-2.4.21/arch/um/Makefile 2004-02-01 15:51:52.000000000 +0100 +@@ -107,7 +107,7 @@ + linux: setup $(ARCH_DIR)/main.o vmlinux $(LD_SCRIPT-y) + mv vmlinux vmlinux.o + $(CC) -Wl,-T,$(LD_SCRIPT-y) $(LINK-y) $(LINK_WRAPS) \ +- -o linux $(ARCH_DIR)/main.o vmlinux.o -L/usr/lib -lutil ++ -o linux $(ARCH_DIR)/main.o vmlinux.o -L$(STAGING_LIBDIR) -lutil + + USER_CFLAGS := $(patsubst -I%,,$(CFLAGS)) + USER_CFLAGS := $(patsubst -Derrno=kernel_errno,,$(USER_CFLAGS)) +--- linux-2.4.21/arch/um/kernel/tt/Makefile~remove-bogus-includes 2004-02-01 15:44:08.000000000 +0100 ++++ linux-2.4.21/arch/um/kernel/tt/Makefile 2004-02-01 15:51:39.000000000 +0100 +@@ -34,6 +34,6 @@ + $(CC) $(UNMAP_CFLAGS) -c -o $@ $< + + unmap_fin.o : unmap.o +- ld -r -o $@ $< -lc -L/usr/lib ++ ld -r -o $@ $< -lc -L$(STAGING_LIBDIR) + + clean : diff --git a/recipes/linux-uml/linux-uml-2.4.26/unbreak-hostfs.patch b/recipes/linux-uml/linux-uml-2.4.26/unbreak-hostfs.patch new file mode 100644 index 0000000000..3c77dae728 --- /dev/null +++ b/recipes/linux-uml/linux-uml-2.4.26/unbreak-hostfs.patch @@ -0,0 +1,110 @@ + +# +# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher +# + +--- linux-2.4.26/arch/um/fs/hostfs/externfs.c~unbreak-hostfs 2004-05-18 22:01:16.000000000 +0200 ++++ linux-2.4.26/arch/um/fs/hostfs/externfs.c 2004-05-18 22:43:11.000000000 +0200 +@@ -1133,7 +1133,7 @@ + if((mount_arg != NULL) && (*mount_arg != '\0')) + root = mount_arg; + +- return(uml_strdup(mount_arg)); ++ return(uml_strdup(root)); + } + + struct super_block *hostfs_read_super(struct super_block *sb, void *data, +--- linux-2.4.26/arch/um/fs/hostfs/host_file.c~unbreak-hostfs 2004-05-18 22:01:16.000000000 +0200 ++++ linux-2.4.26/arch/um/fs/hostfs/host_file.c 2004-05-18 22:45:17.000000000 +0200 +@@ -72,28 +72,21 @@ + { + char tmp[HOSTFS_BUFSIZE], *file; + int mode = 0, err; ++ struct openflags flags = OPENFLAGS(); + +- if(r && !w) +- mode = O_RDONLY; +- else if(!r && w) +- mode = O_WRONLY; +- else if(r && w) +- mode = O_RDWR; +- else { +- printk("Impossible mode in host_open_file - r = %d, w = %d", +- r, w); +- return(-EINVAL); +- } +- ++ if (r) ++ flags = of_read(flags); ++ if (w) ++ flags = of_write(flags); + if(append) +- mode |= O_APPEND; ++ flags = of_append(flags); + + err = -ENOMEM; + file = get_path(path, tmp, sizeof(tmp)); + if(file == NULL) + goto out; + +- err = open_filehandle(file, of_create(of_rdwr(OPENFLAGS())), mode, fh); ++ err = open_filehandle(file, flags, 0, fh); + out: + free_path(file, tmp); + return(err); +--- linux-2.4.26/arch/um/fs/hostfs/host_fs.c~unbreak-hostfs 2004-05-18 22:01:16.000000000 +0200 ++++ linux-2.4.26/arch/um/fs/hostfs/host_fs.c 2004-05-18 22:50:11.000000000 +0200 +@@ -111,10 +111,13 @@ + { + const char *path[] = { jail_dir, mount, file, NULL }; + int uid; ++ int gid; ++ int rc; + + *uid_out = 0; ++ *gid_out = 0; + return(host_stat_file(path, dev_out, inode_out, mode_out, nlink_out, +- &uid, gid_out, size_out, atime_out, mtime_out, ++ &uid, &gid, size_out, atime_out, mtime_out, + ctime_out, blksize_out, blocks_out)); + } + +@@ -138,6 +141,12 @@ + goto out; + + err = host_open_file(path, 1, 1, fh); ++ if (err == -EISDIR) { ++ kfree(fh); ++ return NULL; ++ } ++ if (err == -EPERM) ++ err = host_open_file(path, 1, 0, fh); + if(err) + goto out_free; + +@@ -175,10 +184,9 @@ + len - ignore_end); + + out: +- if(err < 0) +- (*completion)(buf, err, arg); +- else err = 0; +- ++ (*completion)(buf, err, arg); ++ if (err > 0) ++ err = 0; + return(err); + } + +@@ -191,8 +199,9 @@ + + err = write_file(fh, offset + start, buf + start, len); + +- if(err < 0) +- (*completion)((char *) buf, err, arg); ++ (*completion)((char *) buf, err, arg); ++ if (err > 0) ++ err = 0; + return(err); + } + |