1. 31 12月, 2006 2 次提交
  2. 14 12月, 2006 1 次提交
    • R
      [PATCH] getting rid of all casts of k[cmz]alloc() calls · 5cbded58
      Robert P. J. Day 提交于
      Run this:
      
      	#!/bin/sh
      	for f in $(grep -Erl "\([^\)]*\) *k[cmz]alloc" *) ; do
      	  echo "De-casting $f..."
      	  perl -pi -e "s/ ?= ?\([^\)]*\) *(k[cmz]alloc) *\(/ = \1\(/" $f
      	done
      
      And then go through and reinstate those cases where code is casting pointers
      to non-pointers.
      
      And then drop a few hunks which conflicted with outstanding work.
      
      Cc: Russell King <rmk@arm.linux.org.uk>, Ian Molton <spyro@f2s.com>
      Cc: Mikael Starvik <starvik@axis.com>
      Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
      Cc: Roman Zippel <zippel@linux-m68k.org>
      Cc: Geert Uytterhoeven <geert@linux-m68k.org>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Kyle McMartin <kyle@mcmartin.ca>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Jeff Dike <jdike@addtoit.com>
      Cc: Greg KH <greg@kroah.com>
      Cc: Jens Axboe <jens.axboe@oracle.com>
      Cc: Paul Fulghum <paulkf@microgate.com>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Cc: Karsten Keil <kkeil@suse.de>
      Cc: Mauro Carvalho Chehab <mchehab@infradead.org>
      Cc: Jeff Garzik <jeff@garzik.org>
      Cc: James Bottomley <James.Bottomley@steeleye.com>
      Cc: Ian Kent <raven@themaw.net>
      Cc: Steven French <sfrench@us.ibm.com>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Cc: Neil Brown <neilb@cse.unsw.edu.au>
      Cc: Jaroslav Kysela <perex@suse.cz>
      Cc: Takashi Iwai <tiwai@suse.de>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      5cbded58
  3. 08 12月, 2006 1 次提交
  4. 01 12月, 2006 1 次提交
  5. 29 11月, 2006 1 次提交
  6. 01 10月, 2006 1 次提交
    • D
      [PATCH] BLOCK: Make it possible to disable the block layer [try #6] · 9361401e
      David Howells 提交于
      Make it possible to disable the block layer.  Not all embedded devices require
      it, some can make do with just JFFS2, NFS, ramfs, etc - none of which require
      the block layer to be present.
      
      This patch does the following:
      
       (*) Introduces CONFIG_BLOCK to disable the block layer, buffering and blockdev
           support.
      
       (*) Adds dependencies on CONFIG_BLOCK to any configuration item that controls
           an item that uses the block layer.  This includes:
      
           (*) Block I/O tracing.
      
           (*) Disk partition code.
      
           (*) All filesystems that are block based, eg: Ext3, ReiserFS, ISOFS.
      
           (*) The SCSI layer.  As far as I can tell, even SCSI chardevs use the
           	 block layer to do scheduling.  Some drivers that use SCSI facilities -
           	 such as USB storage - end up disabled indirectly from this.
      
           (*) Various block-based device drivers, such as IDE and the old CDROM
           	 drivers.
      
           (*) MTD blockdev handling and FTL.
      
           (*) JFFS - which uses set_bdev_super(), something it could avoid doing by
           	 taking a leaf out of JFFS2's book.
      
       (*) Makes most of the contents of linux/blkdev.h, linux/buffer_head.h and
           linux/elevator.h contingent on CONFIG_BLOCK being set.  sector_div() is,
           however, still used in places, and so is still available.
      
       (*) Also made contingent are the contents of linux/mpage.h, linux/genhd.h and
           parts of linux/fs.h.
      
       (*) Makes a number of files in fs/ contingent on CONFIG_BLOCK.
      
       (*) Makes mm/bounce.c (bounce buffering) contingent on CONFIG_BLOCK.
      
       (*) set_page_dirty() doesn't call __set_page_dirty_buffers() if CONFIG_BLOCK
           is not enabled.
      
       (*) fs/no-block.c is created to hold out-of-line stubs and things that are
           required when CONFIG_BLOCK is not set:
      
           (*) Default blockdev file operations (to give error ENODEV on opening).
      
       (*) Makes some /proc changes:
      
           (*) /proc/devices does not list any blockdevs.
      
           (*) /proc/diskstats and /proc/partitions are contingent on CONFIG_BLOCK.
      
       (*) Makes some compat ioctl handling contingent on CONFIG_BLOCK.
      
       (*) If CONFIG_BLOCK is not defined, makes sys_quotactl() return -ENODEV if
           given command other than Q_SYNC or if a special device is specified.
      
       (*) In init/do_mounts.c, no reference is made to the blockdev routines if
           CONFIG_BLOCK is not defined.  This does not prohibit NFS roots or JFFS2.
      
       (*) The bdflush, ioprio_set and ioprio_get syscalls can now be absent (return
           error ENOSYS by way of cond_syscall if so).
      
       (*) The seclvl_bd_claim() and seclvl_bd_release() security calls do nothing if
           CONFIG_BLOCK is not set, since they can't then happen.
      Signed-Off-By: NDavid Howells <dhowells@redhat.com>
      Signed-off-by: NJens Axboe <axboe@kernel.dk>
      9361401e
  7. 22 9月, 2006 4 次提交
  8. 05 9月, 2006 1 次提交
  9. 15 7月, 2006 2 次提交
    • V
      block2mtd.c: Make kernel boot command line arguments work (try 4) · c4e7fb31
      Ville Herva 提交于
      Trying to pass kernel command line arguments to block2mtd at boot-time does
      not work currently. block2mtd_setup() is called so early that kmalloc()
      fails nevermind being able to do open_bdev_excl() (which requires rootfs to
      be mounted. This patch only saves the option string at the early boot stage,
      and parses them later when block2mtd_init() is called. If open_bdev_excl()
      fails, open_by_devnum(name_to_dev_t()) is tried instead, which makes it
      possible to initialize the driver before rootfs has been mounted. Also gets
      rid of the superfluous parse_name() that only checks if name is longer than
      80 chars and copies it to a string that is not kfreed.
      
      With this patch, I can boot statically compiled block2mtd, and mount jffs2
      as rootfs (without modules or initrd), with lilo config like this:
      
         root=/dev/mtdblock0
         append="rootfstype=jffs2 block2mtd.block2mtd=/dev/hdc2,65536"
      
      (Note that rootfstype=jffs2 is required, since the kernel only tries
      filesystems without "nodev" attribute by default, and jffs is "nodev").
      
      Compared to first version of this patch, this one does not copy the
      parameters to the global buffer if init has already been called, and the
      global array is marked as __initdata.
      
      Compared to the second version of this patch, module build is fixed.
      
      Compared to the third version of this patch, statically compiled block2mtd
      driver with no boot-time parameter no longer gives spurious error 'cannot
      open device ""'
      Signed-off-by: NVille Herva <vherva@vianova.fi>
      Acked-by: NJörn Engel <joern@wohnheim.fh-wedel.de>
      Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
      c4e7fb31
    • R
      remove #error on !PCI from pmc551.c · 9d05cd51
      Rolf Eike Beer 提交于
      PMC551 depends on PCI in Kconfig so there is no need to #error in code if PCI
      is not set.
      Signed-off-by: NRolf Eike Beer <eike-kernel@sf-tec.de>
      Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
      9d05cd51
  10. 01 7月, 2006 1 次提交
  11. 28 6月, 2006 2 次提交
  12. 22 6月, 2006 1 次提交
  13. 15 6月, 2006 1 次提交
  14. 14 6月, 2006 1 次提交
  15. 30 5月, 2006 2 次提交
  16. 29 5月, 2006 2 次提交
    • T
      [MTD] Rework the out of band handling completely · 8593fbc6
      Thomas Gleixner 提交于
      Hopefully the last iteration on this!
      
      The handling of out of band data on NAND was accompanied by tons of fruitless
      discussions and halfarsed patches to make it work for a particular
      problem. Sufficiently annoyed by I all those "I know it better" mails and the
      resonable amount of discarded "it solves my problem" patches, I finally decided
      to go for the big rework. After removing the _ecc variants of mtd read/write
      functions the solution to satisfy the various requirements was to refactor the
      read/write _oob functions in mtd.
      
      The major change is that read/write_oob now takes a pointer to an operation
      descriptor structure "struct mtd_oob_ops".instead of having a function with at
      least seven arguments.
      
      read/write_oob which should probably renamed to a more descriptive name, can do
      the following tasks:
      
      - read/write out of band data
      - read/write data content and out of band data
      - read/write raw data content and out of band data (ecc disabled)
      
      struct mtd_oob_ops has a mode field, which determines the oob handling mode.
      
      Aside of the MTD_OOB_RAW mode, which is intended to be especially for
      diagnostic purposes and some internal functions e.g. bad block table creation,
      the other two modes are for mtd clients:
      
      MTD_OOB_PLACE puts/gets the given oob data exactly to/from the place which is
      described by the ooboffs and ooblen fields of the mtd_oob_ops strcuture. It's
      up to the caller to make sure that the byte positions are not used by the ECC
      placement algorithms.
      
      MTD_OOB_AUTO puts/gets the given oob data automaticaly to/from the places in
      the out of band area which are described by the oobfree tuples in the ecclayout
      data structre which is associated to the devicee.
      
      The decision whether data plus oob or oob only handling is done depends on the
      setting of the datbuf member of the data structure. When datbuf == NULL then
      the internal read/write_oob functions are selected, otherwise the read/write
      data routines are invoked.
      
      Tested on a few platforms with all variants. Please be aware of possible
      regressions for your particular device / application scenario
      
      Disclaimer: Any whining will be ignored from those who just contributed "hot
      air blurb" and never sat down to tackle the underlying problem of the mess in
      the NAND driver grown over time and the big chunk of work to fix up the
      existing users. The problem was not the holiness of the existing MTD
      interfaces. The problems was the lack of time to go for the big overhaul. It's
      easy to add more mess to the existing one, but it takes alot of effort to go
      for a real solution.
      
      Improvements and bugfixes are welcome!
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      8593fbc6
    • A
  17. 25 5月, 2006 1 次提交
  18. 23 5月, 2006 3 次提交
  19. 22 5月, 2006 1 次提交
  20. 20 5月, 2006 1 次提交
  21. 17 5月, 2006 1 次提交
  22. 16 5月, 2006 1 次提交
  23. 14 5月, 2006 3 次提交
  24. 12 5月, 2006 1 次提交
  25. 10 5月, 2006 1 次提交
  26. 09 5月, 2006 1 次提交
  27. 08 5月, 2006 1 次提交
  28. 19 4月, 2006 1 次提交
    • J
      mtd: improve parameter parsing for block2mtd · 954c2422
      Joern Engel 提交于
      Expand the parameter parsing for block2mtd.  It now accepts:
      Ki, Mi, Gi	- the official prefixes for binary multiples,
      		  see http://physics.nist.gov/cuu/Units/binary.html,
      ki		- mistake on my side and analog to "k" for decimal multiples,
      KiB, MiB, GiB	- for people that prefer to add a "B" for byte,
      kiB		- combination of the above.
      
      There were complaints about not accepting "k" for 1024.  This has long
      been common practice, but is known to lead to confusion.  Hence the new
      SI units and hence block2mtd only accepts units that cannot be confused
      with decimal units.  Diverging from common practice doesn't always please
      people, even if the change is for the better.
      Signed-off-by: NJoern Engel <joern@wohnheim.fh-wedel.de>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      954c2422