From: NIIBE Y. <gn...@m1...> - 2002-06-18 02:16:47
|
Changes from mainline applied. Not tested. 2002-06-18 NIIBE Yutaka <gn...@m1...> * include/asm-sh/bitops.h (fls): Added. * arch/sh/kernel/signal.c: Include <linux/suspend.h>. (do_signal): Handle PF_FREEZE. * AGAINST-2.5.18: New file. * AGAINST-2.5.17: Removed. * Makefile: Version 2.5.18. * arch/sh/defconfig, arch/sh/kernel/Makefile, arch/sh/lib/Makefile, arch/sh/mm/Makefile, arch/sh/mm/init.c, drivers/block/rd.c, drivers/char/Makefile, drivers/char/shwdt.c, drivers/input/joystick/Makefile, drivers/pci/pci.ids, fs/nfs/inode.c, init/do_mounts.c, mm/memory.c: Incorporate changes in 2.5.18. Index: Makefile =================================================================== RCS file: /cvsroot/linuxsh/linux/Makefile,v retrieving revision 1.24 diff -u -3 -p -r1.24 Makefile --- Makefile 28 May 2002 02:16:43 -0000 1.24 +++ Makefile 18 Jun 2002 02:14:30 -0000 @@ -1,6 +1,6 @@ VERSION = 2 PATCHLEVEL = 5 -SUBLEVEL = 17 +SUBLEVEL = 18 EXTRAVERSION =-sh KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) @@ -37,14 +37,21 @@ OBJDUMP = $(CROSS_COMPILE)objdump MAKEFILES = $(TOPDIR)/.config GENKSYMS = /sbin/genksyms DEPMOD = /sbin/depmod +PERL = perl MODFLAGS = -DMODULE +CFLAGS_MODULE = $(MODFLAGS) +AFLAGS_MODULE = CFLAGS_KERNEL = AFLAGS_KERNEL = -PERL = perl +EXPORT_FLAGS = export VERSION PATCHLEVEL SUBLEVEL EXTRAVERSION KERNELRELEASE ARCH \ CONFIG_SHELL TOPDIR HPATH HOSTCC HOSTCFLAGS CROSS_COMPILE AS LD CC \ - CPP AR NM STRIP OBJCOPY OBJDUMP MAKE MAKEFILES GENKSYMS MODFLAGS PERL + CPP AR NM STRIP OBJCOPY OBJDUMP MAKE MAKEFILES GENKSYMS PERL + +export CPPFLAGS EXPORT_FLAGS +export CFLAGS CFLAGS_KERNEL CFLAGS_MODULE +export AFLAGS AFLAGS_KERNEL AFLAGS_MODULE all: do-it-all @@ -92,6 +99,10 @@ CFLAGS := $(CPPFLAGS) -Wall -Wstrict-pro -fomit-frame-pointer -fno-strict-aliasing -fno-common AFLAGS := -D__ASSEMBLY__ $(CPPFLAGS) +ifdef CONFIG_MODULES +EXPORT_FLAGS := -DEXPORT_SYMTAB +endif + INIT =init/init.o CORE_FILES =kernel/kernel.o mm/mm.o fs/fs.o ipc/ipc.o NETWORKS =net/network.o @@ -113,10 +124,10 @@ DRIVERS-y += drivers/base/base.o \ drivers/misc/misc.o \ drivers/net/net.o \ drivers/media/media.o -DRIVERS-$(CONFIG_NUBUS) += drivers/nubus/nubus.a +DRIVERS-$(CONFIG_NUBUS) += drivers/nubus/built-in.o DRIVERS-$(CONFIG_ATM) += drivers/atm/atm.o DRIVERS-$(CONFIG_IDE) += drivers/ide/idedriver.o -DRIVERS-$(CONFIG_FC4) += drivers/fc4/fc4.a +DRIVERS-$(CONFIG_FC4) += drivers/fc4/built-in.o DRIVERS-$(CONFIG_SCSI) += drivers/scsi/scsidrv.o DRIVERS-$(CONFIG_FUSION) += drivers/message/message.o DRIVERS-$(CONFIG_IEEE1394) += drivers/ieee1394/ieee1394drv.o @@ -128,16 +139,16 @@ endif DRIVERS-$(CONFIG_SOUND) += sound/sound.o DRIVERS-$(CONFIG_MTD) += drivers/mtd/mtdlink.o DRIVERS-$(CONFIG_PCMCIA) += drivers/pcmcia/pcmcia.o -DRIVERS-$(CONFIG_DIO) += drivers/dio/dio.a +DRIVERS-$(CONFIG_DIO) += drivers/dio/built-in.o DRIVERS-$(CONFIG_SBUS) += drivers/sbus/sbus_all.o DRIVERS-$(CONFIG_ZORRO) += drivers/zorro/driver.o DRIVERS-$(CONFIG_ALL_PPC) += drivers/macintosh/macintosh.o DRIVERS-$(CONFIG_MAC) += drivers/macintosh/macintosh.o DRIVERS-$(CONFIG_PNP) += drivers/pnp/pnp.o -DRIVERS-$(CONFIG_SGI_IP22) += drivers/sgi/sgi.a +DRIVERS-$(CONFIG_SGI_IP22) += drivers/sgi/built-in.o DRIVERS-$(CONFIG_VT) += drivers/video/video.o -DRIVERS-$(CONFIG_PARIDE) += drivers/block/paride/paride.a -DRIVERS-$(CONFIG_TC) += drivers/tc/tc.a +DRIVERS-$(CONFIG_PARIDE) += drivers/block/paride/built-in.o +DRIVERS-$(CONFIG_TC) += drivers/tc/built-in.o DRIVERS-$(CONFIG_USB) += drivers/usb/usbdrv.o DRIVERS-$(CONFIG_INPUT) += drivers/input/inputdrv.o DRIVERS-$(CONFIG_GAMEPORT) += drivers/input/gameport/gamedrv.o @@ -156,18 +167,27 @@ DRIVERS := $(DRIVERS-y) include arch/$(ARCH)/Makefile -export CPPFLAGS CFLAGS CFLAGS_KERNEL AFLAGS AFLAGS_KERNEL - export NETWORKS DRIVERS LIBS HEAD LDFLAGS LINKFLAGS MAKEBOOT ASFLAGS -# Build vmlinux / boot target +# boot target # --------------------------------------------------------------------------- boot: vmlinux @$(MAKE) CFLAGS="$(CFLAGS) $(CFLAGS_KERNEL)" AFLAGS="$(AFLAGS) $(AFLAGS_KERNEL)" -C arch/$(ARCH)/boot -vmlinux: include/linux/version.h $(CONFIGURATION) linuxsubdirs - $(LD) $(LINKFLAGS) $(HEAD) $(INIT) \ +# Build vmlinux +# --------------------------------------------------------------------------- + +# This is a bit tricky: If we need to relink vmlinux, we want +# the version number incremented, which means recompile init/version.o +# and relink init/init.o. However, we cannot do this during the +# normal descending-into-subdirs phase, since at that time +# we cannot yet know if we will need to relink vmlinux. +# So we descend into init/ inside the rule for vmlinux again. + +vmlinux-objs := $(HEAD) $(INIT) $(CORE_FILES) $(LIBS) $(DRIVERS) $(NETWORKS) + +cmd_link_vmlinux = $(LD) $(LINKFLAGS) $(HEAD) $(INIT) \ --start-group \ $(CORE_FILES) \ $(LIBS) \ @@ -175,10 +195,33 @@ vmlinux: include/linux/version.h $(CONFI $(NETWORKS) \ --end-group \ -o vmlinux + +# set -e makes the rule exit immediately on error + +define rule_link_vmlinux + set -e + echo Generating build number + . scripts/mkversion > .tmpversion + mv -f .tmpversion .version + $(MAKE) CFLAGS="$(CFLAGS) $(CFLAGS_KERNEL)" AFLAGS="$(AFLAGS) $(AFLAGS_KERNEL)" -C init + echo $(cmd_link_vmlinux) + $(cmd_link_vmlinux) + echo 'cmd_$@ := $(cmd_link_vmlinux)' > $(@D)/.$(@F).cmd $(NM) vmlinux | grep -v '\(compiled\)\|\(\.o$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | sort > System.map +endef + +vmlinux: $(CONFIGURATION) $(vmlinux-objs) dummy + $(call if_changed_rule,link_vmlinux) + +# The actual objects are generated when descending, make sure +# no implicit rule kicks in + +$(sort $(vmlinux-objs)): linuxsubdirs + @ # Handle descending into subdirectories listed in $(SUBDIRS) +.PHONY: linuxsubdirs linuxsubdirs: $(patsubst %, _dir_%, $(SUBDIRS)) $(patsubst %, _dir_%, $(SUBDIRS)) : dummy include/linux/version.h include/config/MARKER @@ -215,8 +258,6 @@ symlinks: include/config/MARKER: scripts/split-include include/linux/autoconf.h scripts/split-include include/linux/autoconf.h include/config @ touch include/config/MARKER - . scripts/mkversion > .tmpversion - @mv -f .tmpversion .version # Generate some files @@ -256,7 +297,7 @@ modules: $(patsubst %, _mod_%, $(SUBDIRS .PHONY: $(patsubst %, _mod_%, $(SUBDIRS)) $(patsubst %, _mod_%, $(SUBDIRS)) : include/linux/version.h include/config/MARKER - @$(MAKE) -C $(patsubst _mod_%, %, $@) CFLAGS="$(CFLAGS) $(MODFLAGS)" MAKING_MODULES=1 modules + @$(MAKE) -C $(patsubst _mod_%, %, $@) CFLAGS="$(CFLAGS) $(CFLAGS_MODULE)" AFLAGS="$(AFLAGS) $(AFLAGS_MODULE)" modules # Install modules @@ -331,6 +372,8 @@ CLEAN_FILES += \ drivers/zorro/devlist.h drivers/zorro/gen-devlist \ sound/oss/bin2hex sound/oss/hex2hex \ drivers/atm/fore200e_mkfirm drivers/atm/{pca,sba}*{.bin,.bin1,.bin2} \ + drivers/scsi/aic7xxx/aic7xxx_seq.h \ + drivers/scsi/aic7xxx/aic7xxx_reg.h \ drivers/scsi/aic7xxx/aicasm/aicasm_gram.c \ drivers/scsi/aic7xxx/aicasm/aicasm_scan.c \ drivers/scsi/aic7xxx/aicasm/y.tab.h \ @@ -469,3 +512,12 @@ backup: mrproper sums: find . -type f -print | sort | xargs sum > .SUMS + +# FIXME Should go into a make.lib or something +# --------------------------------------------------------------------------- + +if_changed_rule = $(if $(strip $? \ + $(filter-out $(cmd_$(1)),$(cmd_$(@F)))\ + $(filter-out $(cmd_$(@F)),$(cmd_$(1)))),\ + @$(rule_$(1))) + Index: arch/sh/defconfig =================================================================== RCS file: /cvsroot/linuxsh/linux/arch/sh/defconfig,v retrieving revision 1.2 diff -u -3 -p -r1.2 defconfig --- arch/sh/defconfig 1 May 2002 01:10:47 -0000 1.2 +++ arch/sh/defconfig 18 Jun 2002 02:14:31 -0000 @@ -97,15 +97,6 @@ CONFIG_BLK_DEV_IDE=y # CONFIG_BLK_DEV_HD is not set CONFIG_BLK_DEV_IDEDISK=y # CONFIG_IDEDISK_MULTI_MODE is not set -# CONFIG_BLK_DEV_IDEDISK_VENDOR is not set -# CONFIG_BLK_DEV_IDEDISK_FUJITSU is not set -# CONFIG_BLK_DEV_IDEDISK_IBM is not set -# CONFIG_BLK_DEV_IDEDISK_MAXTOR is not set -# CONFIG_BLK_DEV_IDEDISK_QUANTUM is not set -# CONFIG_BLK_DEV_IDEDISK_SEAGATE is not set -# CONFIG_BLK_DEV_IDEDISK_WD is not set -# CONFIG_BLK_DEV_COMMERIAL is not set -# CONFIG_BLK_DEV_TIVO is not set # CONFIG_BLK_DEV_IDECS is not set # CONFIG_BLK_DEV_IDECD is not set # CONFIG_BLK_DEV_IDETAPE is not set @@ -120,7 +111,6 @@ CONFIG_BLK_DEV_IDEDISK=y # CONFIG_BLK_DEV_ISAPNP is not set # CONFIG_IDE_CHIPSETS is not set # CONFIG_IDEDMA_AUTO is not set -# CONFIG_DMA_NONPCI is not set # CONFIG_BLK_DEV_IDE_MODES is not set # Index: arch/sh/kernel/Makefile =================================================================== RCS file: /cvsroot/linuxsh/linux/arch/sh/kernel/Makefile,v retrieving revision 1.2 diff -u -3 -p -r1.2 Makefile --- arch/sh/kernel/Makefile 24 May 2002 14:40:45 -0000 1.2 +++ arch/sh/kernel/Makefile 18 Jun 2002 02:14:31 -0000 @@ -80,6 +80,4 @@ ifeq ($(CONFIG_SH_GENERIC),y) obj-y += $(machine-specific-objs) endif -USE_STANDARD_AS_RULE := true - include $(TOPDIR)/Rules.make Index: arch/sh/kernel/signal.c =================================================================== RCS file: /cvsroot/linuxsh/linux/arch/sh/kernel/signal.c,v retrieving revision 1.10 diff -u -3 -p -r1.10 signal.c --- arch/sh/kernel/signal.c 23 May 2002 01:31:04 -0000 1.10 +++ arch/sh/kernel/signal.c 18 Jun 2002 02:14:31 -0000 @@ -21,9 +21,10 @@ #include <linux/ptrace.h> #include <linux/unistd.h> #include <linux/stddef.h> -#include <linux/personality.h> #include <linux/tty.h> +#include <linux/personality.h> #include <linux/binfmts.h> +#include <linux/suspend.h> #include <asm/ucontext.h> #include <asm/uaccess.h> @@ -580,6 +581,11 @@ int do_signal(struct pt_regs *regs, sigs if (!user_mode(regs)) return 1; + if (current->flags & PF_FREEZE) { + refrigerator(0); + goto no_signal; + } + if (!oldset) oldset = ¤t->blocked; @@ -677,6 +683,7 @@ int do_signal(struct pt_regs *regs, sigs return 1; } + no_signal: /* Did we come from a system call? */ if (regs->tra >= 0) { /* Restart the system call - no handlers present */ Index: arch/sh/lib/Makefile =================================================================== RCS file: /cvsroot/linuxsh/linux/arch/sh/lib/Makefile,v retrieving revision 1.2 diff -u -3 -p -r1.2 Makefile --- arch/sh/lib/Makefile 26 Mar 2002 01:56:39 -0000 1.2 +++ arch/sh/lib/Makefile 18 Jun 2002 02:14:31 -0000 @@ -6,6 +6,4 @@ L_TARGET = lib.a obj-y = delay.o memcpy.o memset.o memmove.o memchr.o \ checksum.o strcasecmp.o strlen.o -USE_STANDARD_AS_RULE := true - include $(TOPDIR)/Rules.make Index: arch/sh/mm/Makefile =================================================================== RCS file: /cvsroot/linuxsh/linux/arch/sh/mm/Makefile,v retrieving revision 1.3 diff -u -3 -p -r1.3 Makefile --- arch/sh/mm/Makefile 27 Mar 2002 09:30:48 -0000 1.3 +++ arch/sh/mm/Makefile 18 Jun 2002 02:14:31 -0000 @@ -13,6 +13,4 @@ obj-y := init.o fault.o extable.o clear obj-$(CONFIG_CPU_SH3) += cache-sh3.o obj-$(CONFIG_CPU_SH4) += cache-sh4.o ioremap.o -USE_STANDARD_AS_RULE := true - include $(TOPDIR)/Rules.make Index: arch/sh/mm/init.c =================================================================== RCS file: /cvsroot/linuxsh/linux/arch/sh/mm/init.c,v retrieving revision 1.4 diff -u -3 -p -r1.4 init.c --- arch/sh/mm/init.c 22 May 2002 07:37:02 -0000 1.4 +++ arch/sh/mm/init.c 18 Jun 2002 02:14:31 -0000 @@ -71,7 +71,6 @@ void show_mem(void) printk("%d reserved pages\n",reserved); printk("%d pages shared\n",shared); printk("%d pages swap cached\n",cached); - printk("%ld buffermem pages\n", nr_buffermem_pages()); } /* References to section boundaries */ Index: drivers/block/rd.c =================================================================== RCS file: /cvsroot/linuxsh/linux/drivers/block/rd.c,v retrieving revision 1.12 diff -u -3 -p -r1.12 rd.c --- drivers/block/rd.c 28 May 2002 02:16:44 -0000 1.12 +++ drivers/block/rd.c 18 Jun 2002 02:14:31 -0000 @@ -48,6 +48,7 @@ #include <linux/module.h> #include <linux/init.h> #include <linux/devfs_fs_kernel.h> +#include <linux/buffer_head.h> /* for invalidate_bdev() */ #include <asm/uaccess.h> /* @@ -376,6 +377,7 @@ static int rd_open(struct inode * inode, if (rd_bdev[unit] == NULL) { rd_bdev[unit] = bdget(kdev_t_to_nr(inode->i_rdev)); rd_bdev[unit]->bd_openers++; + rd_bdev[unit]->bd_block_size = rd_blocksize; rd_bdev[unit]->bd_inode->i_mapping->a_ops = &ramdisk_aops; } Index: drivers/char/Makefile =================================================================== RCS file: /cvsroot/linuxsh/linux/drivers/char/Makefile,v retrieving revision 1.8 diff -u -3 -p -r1.8 Makefile --- drivers/char/Makefile 23 May 2002 01:31:04 -0000 1.8 +++ drivers/char/Makefile 18 Jun 2002 02:14:31 -0000 @@ -150,13 +150,7 @@ obj-$(CONFIG_SPECIALIX) += specialix.o obj-$(CONFIG_AMIGA_BUILTIN_SERIAL) += amiserial.o obj-$(CONFIG_A2232) += ser_a2232.o generic_serial.o obj-$(CONFIG_SX) += sx.o generic_serial.o - -obj-$(CONFIG_RIO) += generic_serial.o -subdir-$(CONFIG_RIO) += rio -ifeq ($(CONFIG_RIO),y) - obj-y += rio/rio.o -endif - +obj-$(CONFIG_RIO) += rio/ generic_serial.o obj-$(CONFIG_SH_SCI) += sh-sci.o generic_serial.o obj-$(CONFIG_SERIAL167) += serial167.o obj-$(CONFIG_MVME147_SCC) += generic_serial.o vme_scc.o @@ -191,14 +185,8 @@ obj-$(CONFIG_TOSHIBA) += toshiba.o obj-$(CONFIG_I8K) += i8k.o obj-$(CONFIG_DS1620) += ds1620.o obj-$(CONFIG_INTEL_RNG) += i810_rng.o - obj-$(CONFIG_QIC02_TAPE) += tpqic02.o - -subdir-$(CONFIG_FTAPE) += ftape -ifeq ($(CONFIG_FTAPE),y) - obj-y += ftape/ftape.o -endif - +obj-$(CONFIG_FTAPE) += ftape/ obj-$(CONFIG_H8) += h8.o obj-$(CONFIG_PPDEV) += ppdev.o obj-$(CONFIG_DZ) += dz.o @@ -225,26 +213,10 @@ obj-$(CONFIG_MACHZ_WDT) += machzwd.o obj-$(CONFIG_SH_WDT) += shwdt.o obj-$(CONFIG_EUROTECH_WDT) += eurotechwdt.o obj-$(CONFIG_SOFT_WATCHDOG) += softdog.o - -subdir-$(CONFIG_MWAVE) += mwave -ifeq ($(CONFIG_MWAVE),y) - obj-y += mwave/mwave.o -endif - -subdir-$(CONFIG_AGP) += agp -ifeq ($(CONFIG_AGP),y) - obj-y += agp/agp.o -endif - -subdir-$(CONFIG_DRM) += drm -ifeq ($(CONFIG_DRM),y) - obj-y += drm/drm.o -endif - -subdir-$(CONFIG_PCMCIA) += pcmcia -ifeq ($(CONFIG_PCMCIA),y) - obj-y += pcmcia/pcmcia_char.o -endif +obj-$(CONFIG_MWAVE) += mwave/ +obj-$(CONFIG_AGP) += agp/ +obj-$(CONFIG_DRM) += drm/ +obj-$(CONFIG_PCMCIA) += pcmcia/ include $(TOPDIR)/Rules.make Index: drivers/char/shwdt.c =================================================================== RCS file: /cvsroot/linuxsh/linux/drivers/char/shwdt.c,v retrieving revision 1.7 diff -u -3 -p -r1.7 shwdt.c --- drivers/char/shwdt.c 23 May 2002 15:22:35 -0000 1.7 +++ drivers/char/shwdt.c 18 Jun 2002 02:14:31 -0000 @@ -391,8 +391,6 @@ static void __exit sh_wdt_exit(void) misc_deregister(&sh_wdt_miscdev); } -EXPORT_NO_SYMBOLS; - MODULE_AUTHOR("Paul Mundt <le...@ch...>"); MODULE_DESCRIPTION("SuperH watchdog driver"); MODULE_LICENSE("GPL"); Index: drivers/input/joystick/Makefile =================================================================== RCS file: /cvsroot/linuxsh/linux/drivers/input/joystick/Makefile,v retrieving revision 1.2 diff -u -3 -p -r1.2 Makefile --- drivers/input/joystick/Makefile 5 Apr 2002 04:45:00 -0000 1.2 +++ drivers/input/joystick/Makefile 18 Jun 2002 02:14:31 -0000 @@ -2,10 +2,6 @@ # Makefile for the input core drivers. # -# The target object and module list name. - -O_TARGET := joydrv.o - # I-Force may need both USB and RS-232 CONFIG_JOYSTICK_IFORCE := n Index: drivers/pci/pci.ids =================================================================== RCS file: /cvsroot/linuxsh/linux/drivers/pci/pci.ids,v retrieving revision 1.12 diff -u -3 -p -r1.12 pci.ids --- drivers/pci/pci.ids 22 May 2002 07:37:02 -0000 1.12 +++ drivers/pci/pci.ids 18 Jun 2002 02:14:31 -0000 @@ -4702,6 +4702,7 @@ 1668 Action Tec Electronics Inc 173b Altima (nee BroadCom) 03e8 AC1000 Gigabit Ethernet + 03ea AC9100 Gigabit Ethernet 1813 Ambient Technologies Inc 1a08 Sierra semiconductor 0000 SC15064 Index: fs/nfs/inode.c =================================================================== RCS file: /cvsroot/linuxsh/linux/fs/nfs/inode.c,v retrieving revision 1.6 diff -u -3 -p -r1.6 inode.c --- fs/nfs/inode.c 28 May 2002 02:16:44 -0000 1.6 +++ fs/nfs/inode.c 18 Jun 2002 02:14:31 -0000 @@ -732,7 +732,7 @@ out_no_inode: } int -nfs_notify_change(struct dentry *dentry, struct iattr *attr) +nfs_setattr(struct dentry *dentry, struct iattr *attr) { struct inode *inode = dentry->d_inode; struct nfs_fattr fattr; @@ -746,7 +746,7 @@ nfs_notify_change(struct dentry *dentry, error = nfs_revalidate_inode(NFS_SERVER(inode),inode); if (error) { #ifdef NFS_PARANOIA -printk("nfs_notify_change: revalidate failed, error=%d\n", error); +printk("nfs_setattr: revalidate failed, error=%d\n", error); #endif goto out; } @@ -770,7 +770,7 @@ printk("nfs_notify_change: revalidate fa */ if (attr->ia_valid & ATTR_SIZE) { if (attr->ia_size != fattr.size) - printk("nfs_notify_change: attr=%Ld, fattr=%Ld??\n", + printk("nfs_setattr: attr=%Ld, fattr=%Ld??\n", (long long) attr->ia_size, (long long)fattr.size); vmtruncate(inode, attr->ia_size); } @@ -810,14 +810,13 @@ nfs_wait_on_inode(struct inode *inode, i return error; } -/* - * Externally visible revalidation function - */ -int -nfs_revalidate(struct dentry *dentry) +int nfs_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat) { struct inode *inode = dentry->d_inode; - return nfs_revalidate_inode(NFS_SERVER(inode), inode); + int err = nfs_revalidate_inode(NFS_SERVER(inode), inode); + if (!err) + generic_fillattr(inode, stat); + return err; } /* @@ -1337,7 +1336,6 @@ static void __exit exit_nfs_fs(void) unregister_filesystem(&nfs_fs_type); } -EXPORT_NO_SYMBOLS; /* Not quite true; I just maintain it */ MODULE_AUTHOR("Olaf Kirch <ok...@mo...>"); MODULE_LICENSE("GPL"); Index: include/asm-sh/bitops.h =================================================================== RCS file: /cvsroot/linuxsh/linux/include/asm-sh/bitops.h,v retrieving revision 1.3 diff -u -3 -p -r1.3 bitops.h --- include/asm-sh/bitops.h 22 Mar 2002 03:58:40 -0000 1.3 +++ include/asm-sh/bitops.h 18 Jun 2002 02:14:31 -0000 @@ -391,6 +391,12 @@ found_middle: #define minix_test_bit(nr,addr) test_bit(nr,addr) #define minix_find_first_zero_bit(addr,size) find_first_zero_bit(addr,size) +/* + * fls: find last bit set. + */ + +#define fls(x) generic_fls(x) + #endif /* __KERNEL__ */ #endif /* __ASM_SH_BITOPS_H */ Index: init/do_mounts.c =================================================================== RCS file: /cvsroot/linuxsh/linux/init/do_mounts.c,v retrieving revision 1.5 diff -u -3 -p -r1.5 do_mounts.c --- init/do_mounts.c 22 May 2002 07:37:02 -0000 1.5 +++ init/do_mounts.c 18 Jun 2002 02:14:31 -0000 @@ -10,6 +10,7 @@ #include <linux/fd.h> #include <linux/tty.h> #include <linux/init.h> +#include <linux/suspend.h> #include <linux/nfs_fs.h> #include <linux/nfs_fs_sb.h> @@ -826,6 +827,11 @@ void prepare_namespace(void) #endif create_dev("/dev/root", ROOT_DEV, NULL); + + /* This has to be before mounting root, because even readonly mount of reiserfs would replay + log corrupting stuff */ + software_resume(); + if (mount_initrd) { if (initrd_load() && !kdev_same(ROOT_DEV, mk_kdev(RAMDISK_MAJOR, 0))) { handle_initrd(); Index: mm/memory.c =================================================================== RCS file: /cvsroot/linuxsh/linux/mm/memory.c,v retrieving revision 1.15 diff -u -3 -p -r1.15 memory.c --- mm/memory.c 28 May 2002 02:16:44 -0000 1.15 +++ mm/memory.c 18 Jun 2002 02:14:31 -0000 @@ -127,9 +127,6 @@ void clear_page_tables(mmu_gather_t *tlb free_one_pgd(tlb, page_dir); page_dir++; } while (--nr); - - /* keep the page table cache within bounds */ - check_pgt_cache(); } pte_t * pte_alloc_map(struct mm_struct *mm, pmd_t *pmd, unsigned long address) @@ -346,8 +343,7 @@ static void zap_pte_range(mmu_gather_t * if (pte_present(pte)) { unsigned long pfn = pte_pfn(pte); - pte_clear(ptep); - pfn = pte_pfn(pte); + pte = ptep_get_and_clear(ptep); tlb_remove_tlb_entry(tlb, pte, address+offset); if (pfn_valid(pfn)) { struct page *page = pfn_to_page(pfn); |